我使用正常的例程来制作可点击的小部件视图:
Intent intent = new Intent(context, OnOff_screen.class);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, widgetId); // Identifies the particular widget...
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// Make the pending intent unique...
Uri data = Uri.withAppendedPath(
Uri.parse(Intent.URI_INTENT_SCHEME + "://widget/id/"),
String.valueOf(widgetId));
intent.setData(data);
PendingIntent pendIntent = PendingIntent.getActivity(context, 0,
intent, PendingIntent.FLAG_UPDATE_CURRENT);
//start the activity when clicking on the view
views.setOnClickPendingIntent(R.id.tc_logo, pendIntent);
虽然这适用于所有手机,但仅在三星 Galaxy S3 上,小部件在大约 20 分钟左右后不会对任何点击做出反应。
安装小部件后,S3 上的一切都正常。
但是只需等待大约 20 分钟或因此不再触发视图的点击 - 好像视图只是失去了 setOnClickPendingIntent。
再次安装小部件后,一切都会再次运行 - 但大约 20 分钟后再次失去可点击性。
这仅适用于三星 Galaxy S3 - 所有其他设备都可以。
ps 我还发现其他一些小部件(例如三星本身的时钟)只是停止并且不再更新。
S3 有什么特别之处会破坏小部件功能?
非常感谢