0

我想手动更新小部件。所以,我添加了一个 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);
        }
    };
}
4

1 回答 1

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);

你试试这个方法。

于 2013-10-07T04:56:22.510 回答