2010-08-05 5 views
5

Sah zeigt wie mein # $ #% $% # Empfänger $ in manifestAndroid appwidget nicht

Hallo

Ich habe gerade die Hello World appwidget nicht i Anwendung Element war zu sehen, wie seine funktioniert. Ich folgte dem Dev-Beispiel auf adroid dev site. Aber aus irgendeinem Grund möchte das Widget nicht in der Widget-Liste angezeigt werden.

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" /> 

Ich kann nicht sehen, was ich vermisse es läuft aber nichts in der Liste.

Antwort

6

Ich hatte gerade das gleiche Problem. Mein Fehler war, dass ich das Empfänger-Tag direkt in mein Manifest-Tag steckte, als ich es in mein Anwendungs-Tag einfügen sollte. Diese war meine nicht-Arbeiter XML:

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

Das ist mein gut funktionierendes-XML:

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

Hoffe, es hilft Ihnen!

4

Ich hatte gerade das gleiche Problem. Mein Fehler war, dass ich ein App-Widget als Ergänzung zu einer bestehenden App baute, die auf SD-Karte installiert war. Verschieben der App zum Telefon repariert es.

0

konfrontiert mit dem ähnlichen Problem. Ich habe Meta-Daten außerhalb des Empfängers abgelegt, die Sie bereits richtig gemacht haben.

Verwandte Themen