2010-08-27 3 views
0

J'essaie de comprendre comment lancer un service à partir d'une classe singleton que j'ai créée. Selon la documentation Android, startService est une méthode de Context. Ainsi, dans l'appel de méthode que je fais à la classe singleton, j'ai pensé que je transmettrais l'application Contexte en tant que paramètre. Assez facile. Cependant, quand j'essaie d'utiliser ce context.startService, il est dit que startService n'est pas une méthode de Context. Alors, comment lancer un service de ma propre classe?Lancement du service depuis la classe sans contexte

API 7

Pourquoi je fais cela:

Malgré les exemples qui ont été fournis avec le SDK Android (où les appels de base de données sont directement depuis l'interface utilisateur), Virgile, dans son 2010 Google La présentation des E/S a suggéré quelques modèles pour les applications REST lourdes qui se comportent différemment. Celui que j'essaye de suivre est tel que je le comprends:

Les appels d'activité "Service Helper" (singleton), Service Helper lance Service, Base de données de requêtes de service pour Cursor, Service lance également le thread qui appelle web service pour mettre à jour la base de données, Service notifie Service Helper qui a terminé l'interrogation de Cursor, Service Helper notifie l'activité qu'il a Cursor.

+0

startService est certainement une méthode de contexte. Je fais une chose similaire, mais pas dans un singleton mais dans une méthode d'aide statique qui fait passer le contexte de l'activité en paramètre Context. Peut-être que vous pouvez fournir un petit extrait de code pour dire ce qui peut être faux dans votre cas. – Thorstenvv

+0

http://i35.tinypic.com/v8d2eo.png - J'ai le sentiment que vous allez indiquer ce qui ne va pas et je vais me sentir très stupide, mais le voici. J'ai passé un contexte en tant que paramètre et, en utilisant ce contexte, j'ai appelé startService avec un Intent comme paramètre. – Andrew

Répondre

0

front smack

Je vois mon problème:

import sun.org.mozilla.javascript.internal.Context; 
+0

Ceci est un non-sens complet. C'est un type de contexte très différent. – thomasd

+0

Ce qui est entièrement le problème. Merci pour votre commentaire. – Andrew

Questions connexes