Bonjour,
Je suis actuellement en train de créer une activity comprenant seulement un bouton démarrer et stopper le service.
Mon service fonction et se lance bien au boot (c'est fait expres), mais je voudrais également avoir possibilité de le démarrer/stopper via mon application. Pour linstant j'arrive bien à démarrer le service via le bouton démarrer et à le stopper si et seulement si je le fait directement sans fermer mon application.
Je pense donc que le problème ici est que le processus que je passe quand je veux fermer n'est plus correct voir null.
Est-ce qu'il est possible de trouver mon service et de chopper l'id du processus ?! ou alors est-ce que je ne mis prend pas bien ?
voici mon événement des boutons :
voici l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 @Override public void onClick(View v) { Log.i("PYD", "CLICK DEMARRER"+v.getId()); switch (v.getId()){ case 1: Log.i("PYD", "CASE1"); // Démarré mIntent = new Intent(); //mStart = true; //mIntent.putExtra("mStart", mStart); mIntent.setClassName("com.mitecorporation.ptd", "com.mitecorporation.ptd.service.BackgroundService"); mRemoteConnection = new ServiceConnection() { @Override public void onServiceDisconnected(ComponentName name) { } @Override public void onServiceConnected(ComponentName name, IBinder service) { IRemoteBackgroundService mService = IRemoteBackgroundService.Stub.asInterface((IBinder) service); try { mService.getPid(); Log.i("PYD SERVICE", "SERVICE EN CONNEXION : " + mService.getPid()); // service.getData(); } catch (RemoteException e) { e.printStackTrace(); } } }; bindService(mIntent, mRemoteConnection, Context.BIND_AUTO_CREATE); startService(mIntent); break; case 2: // Arrêté Log.i("PYD","BUTTON STOP"); unbindService(mRemoteConnection); mStart = false; stopService(mIntent); break; } }
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): FATAL EXCEPTION: main 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): java.lang.IllegalArgumentException: Service not registered: null 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:891) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at android.app.ContextImpl.unbindService(ContextImpl.java:893) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at android.content.ContextWrapper.unbindService(ContextWrapper.java:352) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at com.mitecorporation.ptd.debt_config_sms.onClick(debt_config_sms.java:85) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at android.view.View.performClick(View.java:2485) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at android.view.View$PerformClick.run(View.java:9080) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at android.os.Handler.handleCallback(Handler.java:587) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at android.os.Handler.dispatchMessage(Handler.java:92) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at android.os.Looper.loop(Looper.java:130) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at android.app.ActivityThread.main(ActivityThread.java:3683) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at java.lang.reflect.Method.invokeNative(Native Method) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at java.lang.reflect.Method.invoke(Method.java:507) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 06-09 11:28:15.820: ERROR/AndroidRuntime(20866): at dalvik.system.NativeStart.main(Native Method)![]()
Partager