問題タブ [android-intentservice]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
341 参照

android-intent - GCM メッセージの PROJECT_ID が null です

バックグラウンド

  • 私は 1 つの Android アプリを持っています
  • 私は 2 つの Google API プロジェクトを持っているので、明らかに 2 つの SENDER_ID と 2 つの API キーがあり、これらのプロジェクトは両方とも Google Cloud Messaging で有効になっています。
  • インテントから EXTRAS を抽出し、インテント エクストラ バンドルの「from」キーに基づいてプロジェクトごとに異なる IntentService を生成する 1 つのブロードキャスト レシーバ。また、ComponentName を使用して IntentService が生成されます。

この「from」キーは PROJECT_ID/ SENDER_ID であり、これらに基づいて、インテントを処理する別のインテント サービスを生成します。

これを行う手順は、 https ://developer.android.com/google/gcm/client.html から学びました。

問題 アプリケーションの起動時に、それぞれの PROJECT_ID/SENDER_ID で GoogleCoudMessaging シングルトンを使用して GCM サーバーに登録する 2 つの JAVA クラスを呼び出します。

これは正常に実装され、両方の登録 ID を取得します。

しかし、これらの両方の Google プロジェクトに対してプッシュ通知を送信すると、両方のインテント エクストラを受信し、1 つはキー「from」の下に PROJECT_ID を持ち、もう 1 つはこのキーの下に null を持ちます。

問題は、2 番目に登録されたプロジェクトは常にプッシュ メッセージで PROJECT_ID を取得するのに対し、最初に登録したプロジェクトは PROJECT_ID をインテント エクストラで取得しないことです。

実装に欠けていることは明らかですか?

0 投票する
1 に答える
284 参照

android - インテント サービスはメモリ不足で持続します

Intent Serviceシステム メモリが の実行を許可していないときにを永続化する方法Intent Service

0 投票する
1 に答える
66 参照

android - アプリがオフのときにブロードキャストを受信するには?

ACTION_SCREEN_ONアプリがオフのときでもアプリをブロードキャストに応答させるにはどうすればよいですか?

アラームについて読んでいますが、IntentService何がベスト プラクティスなのかわかりません。

画面のロックが解除されるたびに写真を撮るアプリを作ろうとしています。

0 投票する
1 に答える
1192 参照

android - IntentService を STICKY として作成できますか?

ドキュメントには、intentservice が暗黙的に stopself を呼び出すと書かれています。それで、インテントサービスをスティッキーにできるかどうか疑問に思っていました。

ありがとう

0 投票する
1 に答える
22746 参照

java - WakefulBroadcastReceiver から IntentService を開始する方法

この質問に投稿するコードを使用して、完全かつ非常に簡単に再作成できるはずのアプリケーションがあります。マニフェスト ファイルは次のとおりです。

ご覧のとおり、アクティビティ、(ウェイクフル) ブロードキャスト レシーバー、およびインテント サービスがすべて同じパッケージに含まれています。アクティビティは起動時に開始されます。コードは次のとおりです。

onReceiveこれにより、 の機能が正常にトリガーされますTestReceiver

ただし、これは問題が発生する場所です。関数にブレークポイントを配置するonReceiveと、間違いなく呼び出されます。ただし、MonitorServiceクラスに到達することはありません。関数にブレークポイントを配置しましたonHandleEventが、そこまで到達しないようです。このクラスのコードは次のとおりです。

クラスのコメント行からわかるようTestReceiverに、明示的なインテントではなく暗黙的なインテントを使用してみました。私もこの質問を読み、そこに記載されているすべてを試しました。ここで何か不足していますか?これをエミュレーター (Nexus7 API L) で実行しています。

ここに欠けているものはありますか?

0 投票する
1 に答える
1677 参照

android - 並行して実行される複数の IntentService

私の Android アプリには、1 分ごとに開始するようにスケジュールされたインテント サービスがあります。このインテントサービスをintentServiceA.classと呼びましょう

ここで、特定のタスクに別のインテント サービス (intentServiceB.class) を使用したいと考えています。

私の質問は:

インテントサービス B はインテントサービス A の同じスレッドに入りますか? それはキューに入りますか?または別々に実行しますか?

同じスレッドに入る場合、良い代替手段は何ですか?

ご協力ありがとうございました。