我一直在處理這個問題已經三天了,我已經在這裏查看了每個問題的答案。我有一個小工具,上面有一個按鈕,我希望它每次點擊時都會啓動一項服務。問題是該按鈕隨機停止工作。我根本無法重新創建它,我不知道是什麼原因造成的。我的服務調用stopSelf();但是我也遇到過廣播接收機的問題,所以我認爲問題出現在小部件中,而不是服務中。這裏是代碼Android Widget隨機停止工作
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds)
{
Log.i("Widget", "onUpdate");
final int N = appWidgetIds.length;
for (int i=0; i<N; i++)
{
int appWidgetId = appWidgetIds[i];
Log.i("Widget", "onUpdateLoop");
Intent intent = new Intent(context, ServiceWidgetAction.class);
intent.setAction(Long.toString(System.currentTimeMillis()));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent pendingIntent = PendingIntent
.getService(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
RemoteViews views = new RemoteViews(context.getPackageName(),
R.layout.widget);
views.setOnClickPendingIntent(R.id.widgetButton, pendingIntent);
views.setTextViewText(
R.id.widgetTextView,
"Some text");
appWidgetManager.updateAppWidget(appWidgetId, views);
}
}
我已經檢查了這段代碼,我不知道它爲什麼這樣做。它在3個不同的手機上完成,我無法重新創建它。我嘗試過強制停止應用程序,從任務管理器中添加新的小部件等來清除它,以使小部件停止工作,但它不會。但是,當我今天早上醒來時,小部件不再起作用。任何幫助將不勝感激。
當它發生時,您是否看到LogCat中的任何內容? – CaseyB
logcat中沒有任何內容,就像在活動中有沒有onClick方法的按鈕一樣。我可以看到它被按下,但在應用程序或logcat中沒有任何反應。 –