タグ付けされた質問 「android」

AndroidはGoogleのモバイルオペレーティングシステムであり、デジタルデバイス(スマートフォン、タブレット、自動車、TV、Wear、Glass、IoT)のプログラミングまたは開発に使用されます。Androidに関連するトピックについては、android-intent、android-activity、android-adapterなどのAndroid固有のタグを使用します。開発やプログラミング以外の質問で、Androidフレームワークに関連する質問については、次のリンクを使用してください:https:// android.stackexchange.com。

20
Androidプラットフォームのプッシュ通知
サーバーからプッシュされたアラートを受信するアプリを書きたいと思っています。これを行う方法がいくつか見つかりました。 SMS-着信SMSをインターセプトし、サーバーからのプルを開始します サーバーを定期的にポーリングする それぞれに独自の制限があります。SMS-到着時間の保証はありません。投票によりバッテリーが消耗する可能性があります。 もっと良い提案がありますか?どうもありがとう。
266 android  push  alerts 

9
Activity、AppCompatActivity、FragmentActivity、およびActionBarActivity:いつどちらを使用するか?
私はiOSから来ており、簡単で、UIViewControllerを使用するだけです。ただし、Androidでは、特定のAPIレベルに対応する特定のUIComponentがあるため、状況ははるかに複雑に見えます。私はBigNerdRanch for Android(この本は約2年前のものです)を読んでいます。Activity、をホストためするていFragmentActivitiesます。しかし、私Activityは非難されたと思いました。 それで、APIレベル22(APIレベル15または16の最小サポートあり)の場合、コンポーネントのホストとコンポーネント自体の両方に正確に何を使用する必要がありますか?これらすべての用途はありますか、それとも1つまたは2つをほぼ独占的に使用する必要がありますか?

8
/ resと/ assetsディレクトリの違い
アセットがファイルシステムのように動作する一方で、resディレクトリ内のファイルにアクセスできることは知っていますが、R.class一般的に、どちらを使用するのが最適かを知りたいのです。 誰かが解像度とアセットの本当の違いを知るのを手伝ってくれる?

1
Android / ARMターゲットのDelphi XExコード生成に影響を与える方法は?
2017-05-17を更新。私はこの質問の元となった会社で働いていないため、Delphi XExにアクセスできません。私がそこにいる間、問題はFPC + GCC(Pascal + C)の混合に移行することで解決されました。NEON組み込み関数は、それが違いを生むいくつかのルーチンに使用します。(FPC + GCCは、標準ツール、特にValgrindの使用を可能にするため、強く推奨されます。)信頼できる例を使用して、Delphi XExから最適化されたARMコードを実際に生成できる方法を誰かが示すことができる場合、私は答えを受け入れます。 EmbarcaderoのDelphiコンパイラはLLVMバックエンドを使用して、Androidデバイス用のネイティブARMコードを生成します。Androidアプリケーションにコンパイルする必要があるPascalコードが大量にあり、Delphiでより効率的なコードを生成する方法を知りたいです。現在、私は自動SIMD最適化のような高度な機能についてさえ話していません。合理的なコードを生成することについてだけです。確かに、パラメーターをLLVM側に渡す方法、または何らかの方法で結果に影響を与える方法が必要ですか?通常、どのコンパイラにもコードのコンパイルと最適化に影響を与える多くのオプションがありますが、DelphiのARMターゲットは単に「最適化のオン/オフ」であり、それだけです。 LLVMは適度にタイトで実用的なコードを生成できるはずですが、Delphiはその機能を奇妙な方法で使用しているようです。Delphiはスタックを非常に多用したいと考えており、通常、プロセッサのレジスタr0〜r3を一時変数としてのみ使用します。おそらく最もクレイジーなのは、通常の32ビット整数を4つの1バイトのロード操作としてロードすることです。Delphiがより優れたARMコードを生成するようにするにはどうすればよいですか? 最初は、バイトごとの読み込みはビッグエンディアンからバイト順を交換するためのものだと思っていましたが、そうではありません。実際には、32ビットの数値を4つのシングルバイトの読み込みで読み込むだけです。*アライメントされていないワードサイズのメモリロードを行わずに、32ビット全体。(それを避けるべきかどうかは別のことであり、コンパイラのバグであることを示唆しています)* この簡単な関数を見てみましょう: function ReadInteger(APInteger : PInteger) : Integer; begin Result := APInteger^; end; 最適化がオンになっていても、アップデートパック1を適用したDelphi XE7とXE6は、その関数に対して次のARMアセンブリコードを生成します。 Disassembly of section .text._ZN16Uarmcodetestform11ReadIntegerEPi: 00000000 <_ZN16Uarmcodetestform11ReadIntegerEPi>: 0: b580 push {r7, lr} 2: 466f mov r7, sp 4: b083 sub sp, #12 6: 9002 str …

10
プログラムでLinearLayoutにマージンを設定する
私は(XMLではなく)Javaを使用して、画面いっぱいに余白のあるボタンを備えたLinearLayoutを作成しようとしています。以下は、マージンなしで機能するコードです。 LinearLayout buttonsView = new LinearLayout(this); buttonsView.setOrientation(LinearLayout.VERTICAL); for (int r = 0; r < 6; ++r) { Button btn = new Button(this); btn.setText("A"); LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT); // Verbose! lp.weight = 1.0f; // This is critical. Doesn't work without it. buttonsView.addView(btn, lp); } ViewGroup.LayoutParams lp = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, …
266 java  android  layout  view  margin 

21
Android-カスタムフォントの使用
カスタムフォントをに適用しましたTextViewが、書体が変更されないようです。 これが私のコードです: Typeface myTypeface = Typeface.createFromAsset(getAssets(), "fonts/myFont.ttf"); TextView myTextView = (TextView)findViewById(R.id.myTextView); myTextView.setTypeface(myTypeface); 誰でもこの問題から私を連れ出してくれますか?

3
android:fontFamilyの有効な値とそれらのマッピング先は?
この質問への答えとして、ユーザーはandroid:fontFamily12個のバリアントの値をリストします(以下を参照)。これらの値はどこから来るのですか?のドキュメントにandroid:fontFamilyは、この情報がどこにも記載されていません(こことここを確認しました)。文字列はAndroidのstyles.xmlファイルのさまざまな場所にリストされていますが、これらをRobotoフォントにどのようにマッピングしますか? Android 4.1 / 4.2以降では、次のRobotoフォントファミリーを使用できます。 android:fontFamily="sans-serif" // roboto regular android:fontFamily="sans-serif-light" // roboto light android:fontFamily="sans-serif-condensed" // roboto condensed android:fontFamily="sans-serif-thin" // roboto thin (android 4.2) android:fontFamily="sans-serif-medium" // roboto medium (android 5.0) これと組み合わせて android:textStyle="normal|bold|italic" 12のバリアントが可能です。 定期的 イタリック 大胆な ボールドイタリック 光 イタリック 薄い イタリック体 凝縮されたレギュラー 圧縮されたイタリック 凝縮された太字 太字イタリック styles.xml誰かが作業しているアプリケーションのファイルで、これをフォントファミリとしてリストしましたが、間違いであることは間違いありません。 <item name="android:fontFamily">Roboto-Regular.ttf</item> アプリのテーマを正しく設定し(fontFamilyを正しく使用することを含む)、ファイルを確認する前に作成されたスタイルの一部にあるすべての冗長性を削除したいと思います。
266 android  fonts  styles 

15
スマートフォンのGoogle Playストアアプリの「このアプリを評価」リンク
Androidアプリに「このアプリを評価」リンクを配置して、ユーザーの携帯電話でユーザーのGoogle Playストアアプリのアプリリストを開きたいのですが。 携帯電話のGoogle Playストアアプリでmarket://or http://-link open を作成するには、どのコードを書く必要がありますか? コードはどこに配置しますか? 誰かがこれのサンプル実装を持っていますか? market://またはhttp://リンクを配置する画面を指定する必要がありますか、どちらを使用するのが最適ですか- market://またはhttp://?

10
Androidキーツールが見つかりません
私はAndroidマッピングチュートリアルを実行しようとしていて、APIキーを取得する必要があるこの部分に到達しました。 私は見つけましたdebug.keystoreがkeytool、ディレクトリにアプリケーションがないようです: C:\Documents and Settings\tward\\.android>ls adb_usb.ini avd debug.keystore repositories.cfg androidtool.cfg ddms.cfg default.keyset keytoolこのディレクトリにもありません: C:\Android\android-sdk-windows\tools>ls AdbWinApi.dll apkbuilder.bat etc1tool.exe mksdcard.exe AdbWinUsbApi.dll ddms.bat fastboot.exe source.properties Jet dmtracedump.exe hierarchyviewer.bat sqlite3.exe NOTICE.txt draw9patch.bat hprof-conv.exe traceview.bat adb.exe emulator.exe layoutopt.bat zipalign.exe android.bat emulator_NOTICE.txt lib エディターとしてEclipseを使用していますが、最新のSDKをすべてダウンロードしたと思います。 何が悪いのですか?


7
アクティビティコンテキストまたはアプリケーションコンテキストを呼び出すタイミング
これらの2つのコンテキストが何であるかについては多くの投稿がありました。 これまでのところ理解できますが、それぞれがクラスのインスタンスです。つまり、一部のプログラマーはthis.getApplicationContext()、メモリを「漏らさない」ために、できるだけ頻繁に使用することを推奨しています。これは、他のthis(Activityインスタンスコンテキストを取得する)がActivity、ユーザーが電話を傾けるかアプリを離れるたびに破棄されるを指しているためです。明らかに、ガベージコレクター(GC)がキャッチせず、メモリを使いすぎているようです。 .. しかし、誰かがそれを使用するのが適切thisであり(現在のActivityインスタンスのコンテキストを取得する)、アプリケーションのコンテキストが役に立たない/間違っているいくつかの本当に良いコーディング例を思い付くことができますか?


12
テキスト変更リスナー上のAndroid
私には2つのフィールドがあるという状況があります。field1とfield2。変更されたfield2ときに私がやりたいことはすべて空field1です。したがって、最後には1つのフィールドのみにコンテンツが含まれます。 field1 = (EditText)findViewById(R.id.field1); field2 = (EditText)findViewById(R.id.field2); field1.addTextChangedListener(new TextWatcher() { public void afterTextChanged(Editable s) {} public void beforeTextChanged(CharSequence s, int start, int count, int after) { } public void onTextChanged(CharSequence s, int start, int before, int count) { field2.setText(""); } }); field2.addTextChangedListener(new TextWatcher() { public void afterTextChanged(Editable s) {} public …


12
AsyncTaskは本当に概念的に欠陥があるのですか、それとも何か不足していますか?
私は今月この問題を調査してきましたが、さまざまな解決策を考え出しましたが、それらはすべて大規模なハックなので、満足できません。デザインに欠陥のあるクラスがフレームワークに組み込まれ、誰もそれについて話していないとはまだ信じられないので、私は何かを逃しているにちがいないと思います。 問題はにありAsyncTaskます。ドキュメントによると 「スレッドやハンドラーを操作しなくても、UIスレッドでバックグラウンド操作を実行して結果を公開できます。」 次に、例では引き続き、いくつかの例示的なshowDialog()メソッドがで呼び出される方法を示しますonPostExecute()。ただし、ダイアログを表示するには常に有効なへの参照が必要であり、AsyncTask がコンテキストオブジェクトへの強い参照を保持してはならないため、これは私には完全にContext不自然に思われます。 その理由は明らかです。タスクをトリガーしたアクティビティが破棄された場合はどうなりますか?これは常に発生する可能性があります。たとえば、画面をめくった場合などです。タスクは、それを作成したコンテキストへの参照を保持したい場合、あなたは(ウィンドウが破壊されているでしょうし、無用なコンテキストオブジェクトへの上に保持しているだけでなく、任意の UIの相互作用が例外で失敗します!)、あなたもAを作成する危険性メモリーリーク。 私のロジックにここで欠陥がない限り、これは次のように変換されます:onPostExecute()コンテキストにアクセスできない場合にこのメソッドをUIスレッドで実行するのはどのようなメリットがあるので、これはまったく役に立たないのですか?ここでは意味のあることは何もできません。 回避策の1つは、コンテキストインスタンスをAsyncTaskに渡すのではなく、Handlerインスタンスを渡すことです。これは機能します。ハンドラーはコンテキストとタスクを緩やかにバインドするため、リークの危険を冒すことなく、それらの間でメッセージを交換できます(正しいですか)。しかし、それはAsyncTaskの前提、つまりハンドラーに煩わされる必要がないということは間違っていることを意味します。同じスレッドでメッセージを送受信しているため、ハンドラーを悪用しているようにも見えます(UIスレッドでメッセージを作成し、UIスレッドで実行されるonPostExecute()で送信します)。 さらに、その回避策を使用しても、コンテキストが破棄されたときに、それが起動したタスクの記録がないという問題があります。つまり、たとえば画面の向きが変わった後など、コンテキストを再作成するときにタスクを再起動する必要があります。これは遅く、無駄です。 これに対する私の解決策(Droid-Fuライブラリで実装されている)は、WeakReferencesのコンポーネント名から、一意のアプリケーションオブジェクトの現在のインスタンスへのマッピングを維持することです。AsyncTaskが起動すると、そのマップに呼び出しコンテキストが記録され、コールバックごとに、そのマッピングから現在のコンテキストインスタンスがフェッチされます。これにより、失効したコンテキストインスタンスを参照することがなくなり、コールバック内の有効なコンテキストに常にアクセスできるため、そこで有効なUI作業を実行できます。また、参照が弱く、特定のコンポーネントのインスタンスが存在しなくなったときにクリアされるため、リークも発生しません。 それでも、これは複雑な回避策であり、いくつかのDroid-Fuライブラリクラスをサブクラス化する必要があるため、これはかなり煩わしいアプローチになります。 今私は単に知りたいです:私は何かを大規模に欠落していますか、それともAsyncTaskは本当に完全に欠陥がありますか?あなたの経験はどのように機能していますか?これらの問題をどのように解決しましたか? ご入力いただきありがとうございます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.