2011-06-29 17 views
0

友人!サービスの仕方アンドロイドで再起動

私は本当に混乱しています。私はAndroidサービスで新たな蜂です。アンドロイドサービスに関して有用な資料を得ることはできません。

私が必要とするのは、自分のサービスが開始されたボタンをクリックしたときに、ライブサーバーにデータをアップロードし通知を表示する方法です。

最初にボタンを押すと、アクティビティが開始され、メソッドが実行されますが、次にサービスが実行中で、データがアップロードされています。ここでももう少しデータを送信するためにボタンを押して、データをアップロードキューに入れます。ここで私のオンスタートメソッドが呼び出されていないので、新しいデータがキューに追加されません。私は何をする必要がありますか?

うーん...あなたがサービスを作ったこの友人に

おかげでたくさん

+0

は、ボタンのクリックごとに、このジャストワンタイムアップロードであるか、またはサービスが継続的に指定されたイベントまで、サーバーにデータをアップロードしますか? – DeeV

答えて

0

を達成するためにいくつかのコードで私を助けてください。アクティビティが終了すると、サービスはまだ実行されています。これは、なぜonStartがそれ以上トリガされないのかという理由です。

+0

どうすればいいですか?私は私のサービスを止めたくありません。 – Shah

0

使用bindServiceサービスがすでに実行されている場合..

Intent i = new Intent(); 
i.setClassName("com.android.music", "com.android.music.MediaPlaybackService"); 
ServiceConnection conn = new MediaPlayerServiceConnection(); this.bindService(i, conn, 0); 





private class MediaPlayerServiceConnection implements ServiceConnection { 
public IMediaPlaybackService mService; public void onServiceConnected(ComponentName name, IBinder service) { Log.i("MediaPlayerServiceConnection", "Connected! Name: " + name.getClassName()); 
    } 
+0

サービスの実行中にもう一度ボタンを押すとどのようなメソッドが呼び出されるのですか?説明してください。 – Shah

+0

サービスが既に実行されている場合はcontext.bindサービスメソッドを呼び出し、サービスが既に実行されている場合はservice.bindサービスメソッドを呼び出します。 .... this.bindService(i、conn、0)という行を見てください。 –

関連する問題