• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

为什么我的Android 2.3小部件在启动后不响应点击?

Android 来源:HardCoder 4次浏览

我有一个小部件的应用程序。我想用小部件启动应用程序,但启动后,我的小部件不响应点击。只有在正常启动应用程序(并再次关闭应用程序)之后,窗口小部件才开始响应窗口小部件本身的点击。为什么我的Android 2.3小部件在启动后不响应点击?

这是我如何设置与的AppWidgetProvider小部件:

public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) 
{ final int ids = appWidgetIds.length; 

    for(int i=0;i<ids;i++) 
    { int appWidgetId = appWidgetIds[i]; 

     Intent intent = new Intent(context, TestReceiver.class);    
     intent.setAction(ACTION_WIDGET_RECEIVER); 
     intent.setClassName(TestReceiver.class.getPackage().getName(), TestReceiver.class.getName()); 

     PendingIntent pi = PendingIntent.getBroadcast(context, 0, intent, 0); 

     RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget); 

     views.setOnClickPendingIntent(R.id.widget_root, pi); 
     views.setTextViewText(R.id.widgetclock, "Loading..."); 

     appWidgetManager.updateAppWidget(appWidgetId, views); 
    } 
} 

我有什么改变让我的应用程序在启动后的小部件注册点击,而无需先启动它至少一次?


===========解决方案如下:

尝试创建一个响应BOOT广播并重置小部件的PendingIntent的BroadcastReceiver:我不相信部件PendingIntents在设备重新启动后仍然存在。


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)