4
我有一個android服務,我將它綁定到一個活動,並且解除綁定。問題是,當應用程序關閉,有時當我打開設備時,有時會出現亂七八糟的效果,我知道它開始是因爲吐司消息。讓我們得到的代碼...Android服務啓動ramdomly /自動
活動的onCreate
Intent intent = new Intent(this, Sincronizacao.class);
this.bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
this.startService(intent);
代碼爲mConnection
private ServiceConnection mConnection = new ServiceConnection() {
public void onServiceConnected(ComponentName className, IBinder service) {
serviceBound = true;
localBinder = (LocalBinder<Sincronizacao>) service;
}
public void onServiceDisconnected(ComponentName className) {
serviceBound = false;
localBinder = null;
}
};
而且在破壞
@Override
protected void onDestroy() {
super.onDestroy();
if (serviceBound && mConnection != null) {
unbindService(mConnection);
}
Intent intent = new Intent(this, Sincronizacao.class);
stopService(intent);
localBinder = null;
}
在我的服務,onStartCommand實現,在那裏,我開始了一個線程,查詢一個Web服務並將數據插入到數據庫中,該線程具有一段時間(真),我只是打斷它的onDestroy服務的方法...
編輯:
這裏的清單線
android:name="com.company.package.service.Sincronizacao" />
我掙扎在這個bug的一些時間已經到了,希望你能幫助我。
感謝,
檢查你的'Manifest'文件,如果你有' '調用這個服務,並且在另一種情況下檢查'Service'是否真的被破壞。 –
我在代碼中看不到stopService或stopSelf。引導會自動重新啓動服務。它還會嘗試重新啓動異常關閉的服務。根據系統關閉的方式,它可以在啓動或終止後重新啓動。 –
我有stopService(intent);請在onDestroy方法中再次檢查 – RMalke