Bonjour à tous,

Voilà j'ai un problème que je n'arrive pas à résoudre.

Théorie :

J'ai crée une classe NetworkService héritant de Service qui s'occupe de toutes les actions liées au réseau. Connection / Déconnection / Requête / etc..
J'aimerai pouvoir binder cette classe à toutes les activités de mon application, pour que chacune puisse faires des requêtes sur le serveur distant.

Pratique :

Première Activité

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
        private INetwork		  iNetwork;
 
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		this.displayList();
		this.bindService(new Intent(Welcome.this,NetworkService.class),
				mConnection, Context.BIND_AUTO_CREATE);
	}
 
       private ServiceConnection mConnection = new ServiceConnection() {
 
		@Override
		public void onServiceConnected(ComponentName arg0, IBinder service) {
			Log.e("---->", "Entrer dans onServiceConnected");
			iNetwork = INetwork.Stub.asInterface(service);
		}
 
		@Override
		public void onServiceDisconnected(ComponentName arg0) {
			Log.e("", "Interface Disconnected");
		}
	};
Deuxième Activité

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
	private INetwork iNetwork;
 
	public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
 
        this.bindService(new Intent(Video.this,NetworkService.class),
				mConnection, Context.BIND_AUTO_CREATE);
 
        TextView textview = new TextView(this);
        textview.setText("This is the Video tab");
        setContentView(textview);
 
    }
 
	private ServiceConnection mConnection = new ServiceConnection() {
 
		@Override
		public void onServiceConnected(ComponentName arg0, IBinder service) {
			Log.e("---->", "Entrer dans onServiceConnected");
			iNetwork = INetwork.Stub.asInterface(service);
			}
 
		@Override
		public void onServiceDisconnected(ComponentName arg0) {
			Log.e("", "Interface Disconnected");
		}
	};
Chaque fois que j'essaie de me servir dans ma deuxième activité, d'une fonction de mon service, mon application crash.


Quelqu'un serait il pourquoi ? Peut être que je m'y prend mal même en théorie.

Je suis ouvert à toutes vos propositions.

Merci d'avance.