2010-08-05 8 views
5

ressemblais à mon # $ #% $% # $ le récepteur n'a pas été élément d'application i dans le manifesteAndroid appwidget ne montrant

Salut

Je viens de créer la appwidget helloworld pour voir comment son travaux. J'ai suivi l'exemple de dev sur le site de développement d'adroid. Mais pour une raison quelconque, le widget ne veut pas apparaître dans la liste des widgets.

AndroidManifest.xml

<receiver android:name="VoiceRIAWidget" android:label="Voice RIA"> 
     <intent-filter> 
      <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> 
     </intent-filter> 
     <meta-data android:name="android.appwidget.provider" 
      android:resource="@xml/appwidget_info" /> 
    </receiver> 

appwidget_info.xml

<?xml version="1.0" encoding="utf-8"?> 
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" 
    android:label="Voice RIA" android:minWidth="50dp" android:minHeight="50dp" 
    android:updatePeriodMillis="86400000" android:initialLayout="@layout/appwidget"> 
</appwidget-provider> 

VoiceRIAWidget

public class VoiceRIAWidget extends AppWidgetProvider 
{ 

    @Override 
    public void onUpdate(Context context, AppWidgetManager appWidgetManager, 
      int[] appWidgetIds) 
    { 

     final int N = appWidgetIds.length; 

     for (int i = 0; i < N; i++) 
     { 
      int appWidgetId = appWidgetIds[i]; 

      CharSequence text = "Hello"; 

      RemoteViews views = new RemoteViews(context.getPackageName(), 
        R.layout.appwidget); 

      views.setTextViewText(R.id.appwidget_text, text); 

      appWidgetManager.updateAppWidget(appWidgetId, views); 
     } 

     super.onUpdate(context, appWidgetManager, appWidgetIds); 
    } 
} 

appwidget.xml

<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/appwidget_text" android:layout_width="wrap_content" 
    android:layout_height="wrap_content" android:textColor="#ff000000" /> 

Je ne vois pas ce que je manque il fonctionne mais rien dans la liste.

Répondre

6

J'ai juste eu le même problème. Mon erreur a été, que j'ai mis l'étiquette de récepteur juste à l'intérieur de mon étiquette de manifeste, quand je devais le mettre dans mon étiquette d'application. Ce était mon travail non-XML:

<manifest....> 
    .... 
    <receiver ...> 
    ... 
    </receiver> 
    <application ...> 
    ... 
    </applciation> 
</manifest> 

Ceci est mon bien-travail XML:

<manifest...> 
    .... 
    <application...> 
    ... 
    <receiver...> 
     ... 
    </receiver> 
    </application>  
</manifest> 

espérons qu'il vous aidera!

4

J'ai juste eu le même problème. Mon erreur a été, que j'ai construit un widget d'application en plus d'une application existante qui a été installée sur la carte SD. Déplacer l'application vers le téléphone l'a corrigé.

0

fait face au même problème. Je mettais des méta-données en dehors du récepteur que vous avez déjà fait correctement en premier lieu.