サービスとリモート インターフェイスを使用してアプリケーションを開発しています。
アクティビティ全体でリモート インターフェイスの参照を渡すことについて質問があります。
最初のアクティビティでは、使用するインターフェイスへの参照を取得するために、サービスをアクティビティにバインドします
private ServiceConnection mConnection = new ServiceConnection() {
@Override
public void onServiceConnected(ComponentName arg0, IBinder service) {
x = X.Stub.asInterface(service);
}
@Override
public void onServiceDisconnected(ComponentName arg0) {
// TODO Auto-generated method stub
}
};
x は私のインターフェースへの参照です。ここで、別のアクティビティからこのインターフェイスにアクセスしたいと思います.2つの方法がありますが、どちらが「適切な」方法であるかわかりません:
- 新しいアクティビティを呼び出すときに意図的に x を渡す
this.bindService(new Intent(y.this,z.class), mConnection, Context.BIND_AUTO_CREATE);
新しいアクティビティの onCreate() をやり直す
私に何をするようアドバイスしてくれますか?