そして操作するメソッドもAcitityの場合と違い、少し特殊です。
class TestWidget extends AppWidget {
@Override
public void onUpdate(Context context, AppWidgetManager awm, int[] awi) {
// 全ての操作はRemoteViewsを介して行います
RemoteViews rv = new RemoteViews(context,getPackageName(), R.layout.main);
// id=textなTextViewのtextを変更します
rv.setTextViewText(R.id.text, "Hello World!");
// 反映させるにはAppWidgetmanagerに更新を通知します。(※これをしないと反映されません)
ComponentName thisWidget = new ComponentName(context, TestWidget.class);
awm.updateAppWidget(thisWidget, rv);
}
}
よく反映のロジックを忘れるのでメモ