我想手动更新小部件。所以,我添加了一个AndroidManifest过滤器:
<action android:name="com.myapp.WIDGET_UPDATE"/>
我尝试从这样的adb控制台发送广播
am broadcast -a com.myapp.WIDGET_UPDATE
但没有任何反应。以下是onReceive的代码:
public class myapp extends AppWidgetProvider {
private final static IntentFilter intentFilter = new IntentFilter("com.myapp.WIDGET_UPDATE");
private final BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
updateWidget(context);
}
};
}
答案 0 :(得分:0)
您必须在 layout_wid.xml 文件中放置一个按钮。
在onUpdate()
中你必须找到你的按钮的id。并点击事件来刷新你的小部件
Intent imageview2Intent= new Intent(context, WatchWidget.class);
PendingIntent pendingIntent= PendingIntent.getBroadcast(context,0, imageview2Intent,0);
remoteViews.setOnClickPendingIntent(R.id.widget_textview, pendingIntent);
你试试这种方式。