2010-04-27 6 views
0

J'ai rencontré un problème avec les services distants. Après avoir commencé et lié mon service, je veux/dois accéder à ses fonctionnalités. cela fonctionne très bien si je travaille avec des boutons et onclick-contrôleurs comme dans http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteServiceBinding.htmlaccéder aux fonctions de services distants

mais en fait, j'ai besoin d'accéder aux fonctions de services directement après la liaison du service, comme:

intention Intention = new Intent (IwlService .class.getName()); bindService (intention, serviceConnection, Context.BIND_AUTO_CREATE);

String.valueOf (wlService.getDataFromService()); // cela va CRASH l'application !!! Si j'accède à la fonction de service "getDataFromService()" dans onClickListener, cela fonctionne parfaitement.

Comment puis-je accéder aux fonctions de services directement après la liaison/démarrage du service?

Répondre

1

mais en fait, j'ai besoin pour accéder aux fonctions de services après DIRECTEMENT le service de liaison, comme:

Ce n'est pas possible. Le service peut devoir démarrer, par exemple. Dans le cas d'un service distant, cela prendra quelques centaines de millisecondes.

comment puis-je accéder aux fonctions de services directement après la liaison/démarrage du service ?

Vous n'en avez pas. Vous réécrivez votre code pour accéder à votre service en commençant par la méthode onServiceConnected() dans votre objet ServiceConnection. À tout moment avant cela et votre service n'est pas prêt.

Questions connexes