由於綁定/解除綁定服務的問題,我在3天內封鎖了服務,因此我將舊活動分段傳遞。綁定服務的片段似乎正常工作,但解除綁定服務崩潰,你能幫助我嗎?解除綁定服務片段
@Override
public void onStart() {
//On attache la vue au service
getActivity().bindService(
new Intent(getActivity().getApplicationContext(), GeoLocatingService.class),
connection, Context.BIND_AUTO_CREATE);
super.onStart();
}
@Override
public void onStop() {
//On detache la vue du service
if(myService!=null){
getActivity().getApplicationContext().unbindService(connection);
}
super.onStop();
}
錯誤日誌:
09-23 00:39:00.541:E/AndroidRuntime(17970):致命異常:主 09-23 00:39:00.541:E/AndroidRuntime( 17970): java.lang.IllegalArgumentException:服務未註冊: [email protected] 09-23 00:39:00.541:E/AndroidRuntime(17970):在 android.app.LoadedApk。 forgetServiceDispatcher(LoadedApk.java:891) 09-23 00:39:00.541:E/AndroidRuntime(17970):在 android.app.ContextImpl.unbindService(ContextImpl.java:925)09-23 00:39:00.541:E/AndroidRuntime(17970):at android.content.ContextWrapper.unbindService(ContextWrapper.java:352) 09 -23 00:39:00.541:E/AndroidRuntime(17970):at com.timo.geolocalisation.Dashboard_Fragment.onStop(Dashboard_Fragment.java:220) 09-23 00:39:00.541:E/AndroidRuntime(17970)在 android.support.v4.app.Fragment.performStop(Fragment.java:1651)09-23 00:39:00.541:E/AndroidRuntime(17970):at android.support.v4.app.FragmentManagerImpl.moveToState (FragmentManager.java:979) 09-23 00:39:00.541:E/AndroidRuntime(17970):at android.support.v4.app.FragmentManagerImpl.detachFragment(Fragm entManager.java:1258) 09-23 00:39:00.541:E/AndroidRuntime(17970):at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:667) 09-23 00:39 :00.541:E/AndroidRuntime(17970):at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1460) 09-23 00:39:00.541:E/AndroidRuntime(17970):at android .support.v4.app.FragmentManagerImpl $ 1.run(FragmentManager.java:440) 09-23 00:39:00.541:E/AndroidRuntime(17970):at android.os.Handler.handleCallback(Handler.java:587 )09-23 00:39:00.541:E/AndroidRuntime(17970):at android.os.Handler.dispatchMessage(Handler.java:92)09-23 00:39:00.541:E/AndroidRuntime(17970) :在 android.os.Looper.loop(Looper.java:123)09-23 00:39:00.541: E/AndroidRuntime(17970):at android.app.ActivityThread.main(ActivityThread.java:3691)09- 23 00:39:00.541:E/AndroidRuntime(17970):在 java.lang.reflect.Method.invokeNative(Native Method)09-23 00:39:00.541:E/AndroidRuntime(17970):at java .lang.reflect.Method.invoke(Method.java:507)09-23 00:39:00.541: E/AndroidRuntime(17970):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit。 java:847) 09-23 00:39:00.541:E/AndroidRuntime(17970):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)09-23 00:39:00.541 :E/AndroidRuntime (17970):在 dalvik.system.NativeStart.main(本機方法)
您是否試圖在任何地方停止或解除服務兩次?從日誌中看起來就像之前停止的服務。 – prijupaul
它只停在方法停在3個片段,我不明白爲什麼它不能停止。我看起來可能是一個背景問題。 – WhatsUp