我想測試我的應用程序窗口小部件,並已註冊清單中的接收器如下:Android的廣播接收器沒有啓動起來更新AppWidget
<receiver android:name=".MyUtilityWidget" android:label="@string/widget_name">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data android:name="android.appwidget.provider" android:resource="@xml/widget_config" />
</receiver>
的MyUtility代碼:
public class MyUtilityWidget extends AppWidgetProvider {
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
my Main Code here.... (widget stuff)
}
我小部件啓動並執行一次罰款(因此我離開這裏的代碼)。然而,廣播接收機不工作,我沒有收到廣播。實際上,LogCat顯示意圖永遠不會被執行。所以,我的代碼塊只在apk部署時執行一次,不會再次執行(小部件文本顯示,但從未更新,因爲我已經設置了每30米)。
配置在這裏...
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="146dip"
android:minHeight="72dip"
android:updatePeriodMillis="1800000"
android:initialLayout="@layout/widget_message"
/>
也updatePeriodMillis不能少於30分鐘?調試時這是一個非常煩人的問題,因爲我必須等待大約30分鐘,每次運行檢查意圖是否被解僱!
任何幫助表示讚賞。
嘗試指定到你的部件,而不是「.MyUtilityWidget」 – Jug6ernaut