私は地下鉄ガイドアプリを開発しています。新しい駅に着いたら、通知がポップアップし、メインアクティビティに表示されている地図が更新されます。私はガイドコードをサービスに入れて、ユーザーがガイドされている間に他のアプリを実行できるようにします。しかし、新しい駅に着いたら、主な活動をリフレッシュする必要があります。どのようにして、主な活動のビューにサービスを変更することができますか?アンドロイドサービスとアクティビティとのやり取り
2
A
答えて
-1
サービスSとの間でデータを共有するための最良の方法とアクティビティA
が必要とされているものは何でも取得するために、サービスの公開APIを呼び出して、その後、地元の結合パターンを使用してサービスSに結合する活性を有しています。
外部アクティビティBはどのようにしてサービスSと通信して、すべての前処理で完了し、アクティビティAを呼び出す準備ができているかを判断できますか?
リモートバインディングパターンとAIDLを使用します。アクティビティBは、AIDL定義のコールバックをサービスSに登録します。サービスSは、適切なときに呼び出されます。例として、hereとhereを参照してください。あなたの活動で
0
、あなたは宣言
ReceiverTest mReceiver = new ReceiverTest();
IntentFilter filter;
filter = new IntentFilter("packagename.dosomething");
registerReceiver(mReceiver, filter);
次に、あなたの活動のOnCreateの中でそれを登録し、あなたのサービスでは、放送
public class ReceiverTest extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
// extras from service
int key = intent.getIntExtra("key", 0);
//do things here
}
}
第1の受信機を受信機
を登録する必要がありますイベント
Intent i = new Intent("packagename.dosomething");
// You could put the information in extras, then get the value in receiver
i.putExtra("key", 123);
context.sendBroadcast(i);
0
これを行うにはいくつかの方法があります。 サービスをアクティビティにバインドできます。 ブロードキャストメッセージをアクティビティに送信できます(アクティビティはブロードキャストレシーバに登録する必要があります) このトピックについては多くの議論があります。あなたはそれらを通過することができます。
関連する問題
- 1. アンドロイドの親と子のアクティビティのやりとり方法
- 2. ユーザーとJavaScriptとのやり取り
- 3. スランと缶とのやり取りは?
- 4. login.aspxとdefault.aspxの間のやり取り
- 5. WCFサービスのホストオブジェクトとのやり取り
- 6. SeleniumのPDFポップアップとのやり取り
- 7. 隣のオブジェクトとのやり取り[C#]
- 8. 隠しフラグメントとのやり取り - Android
- 9. Exchange 2007とのやり取り
- 10. JFrameとFrameViewオブジェクトのやり取りは?
- 11. PythonとJavaScriptのやり取りは?
- 12. アクティビティ間でデータをやりとりするAndroid
- 13. 上部のダイアログアクティビティの下にあるアクティビティとのやりとり方法は?
- 14. TFSリポジトリとやり取りするAPI
- 15. ウェブとやり取りするプログラム
- 16. アンドロイドサービスと「アラートウィンドウ」
- 17. Androidのアクティビティ間でデータをやりとりするより良い方法
- 18. アンドロイドサービスとの通信
- 19. シャットダウンユーティリティとMac OS Xのターミナルとのやり取りは、
- 20. カウンタとファイルI/Oとのやり取り
- 21. サービスとユーザーとのやり取りに最適な方法
- 22. Hibernate validateValueと値抽出器とのやり取り
- 23. Webアプリケーションとクライアントとのやり取りは?
- 24. MKMapView didDelectlectAnnotationViewとUITableViewとのやりとり
- 25. Androidアプリとフィットネスバンドとのやりとり
- 26. pyncとtweepyとのやりとり
- 27. gitクライアントとローカルファイルシステムとのやりとり
- 28. zf2 LoginServiceInterfaceとモデルとのやりとり
- 29. iPodのやりとり
- 30. アンドロイドアプリケーションのやりとり
あなたはちょうどこれをコピーしましたhttp://stackoverflow.com/a/3066579真剣に? – xmen