2010-07-31 8 views
0

J'essaye de déboguer un problème où mon widget devient invalide et un nouveau remplit dedans. Ceci se produit seulement une fois au début de temps et alors il reste le deuxième widget pour toujours. Donc, je veux mettre du code pour affiner le moment où cela arrive. Ce que je voudrais faire quelque chose comme ceci:Comment peut-on obtenir l'ID de l'appwidget?

e.g., (not real code) Log.d(TAG, "myWidgetId=" + this.getMyWidgetId()); 

Alors j'obtenir une liste de tous les ID activés et voir si je suis dans la liste. Je ne peux pas trouver une méthode, un membre, un attribut, etc. qui me donnerait mon identifiant?

Répondre

0

Cela ne peut pas être fait. L'identifiant de AppWidgetProvider est implicitement géré et peut changer, donc le mieux que l'on puisse faire est de demander à AppWidgetManager de générer une liste des widgets pour un composant particulier, de les appeler, puis de répondre à la demande de service en utilisant l'ID fourni.

+0

Comment faisons-nous cela? Je veux dire tout exemple de code, comment obtenir la liste des ID de widget en utilisant AppWidgetManager? S'il vous plaît aider. – Sagar

+1

Dans quels cas l'identifiant change-t-il? Je suppose que seulement lors de la création de nouveaux AppWidgets, non? –