`
dyllove98
  • 浏览: 1378970 次
  • 性别: Icon_minigender_1
  • 来自: 济南
博客专栏
73a48ce3-d397-3b94-9f5d-49eb2ab017ab
Eclipse Rcp/R...
浏览量:38212
4322ac12-0ba9-3ac3-a3cf-b2f587fdfd3f
项目管理checkList...
浏览量:78424
4fb6ad91-52a6-307a-9e4f-816b4a7ce416
哲理故事与管理之道
浏览量:131588
社区版块
存档分类
最新评论

android清除数据后widget无法更新问题修改

阅读更多

清除数据时会发送ACTION_PACKAGE_DATA_CLEARED广播,在widgetProvider里面监听该广播并进行处理就可以了

 

 

[java] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. public static class PackageDataClearedReceiver extends BroadcastReceiver {  
  2.        private static final String ACTION_PACKAGE_DATA_CLEARED = "com.mediatek.intent.action.SETTINGS_PACKAGE_DATA_CLEARED";  
  3.   
  4.        public void onReceive(Context context, Intent intent) {  
  5.            if (!ACTION_PACKAGE_DATA_CLEARED.equals(intent.getAction())) {  
  6.                return;  
  7.            }  
  8.            String pkgName = intent.getStringExtra("packageName");  
  9.            MusicLogUtils.v(TAG, "PackageDataClearedReceiver recevied pkgName = " + pkgName);  
  10.            if (pkgName != null && pkgName.equals(context.getPackageName())) {  
  11.                MediaAppWidgetProvider mediaAppWidgetProvider = MediaAppWidgetProvider  
  12.                        .getInstance();  
  13.                if (mediaAppWidgetProvider == null) {  
  14.                    MusicLogUtils.v(TAG, "mediaAppWidgetProvider is null ");  
  15.                    return;  
  16.                }  
  17.                mediaAppWidgetProvider.defaultAppWidget(context, null);  
  18.            }  
  19.        }  
  20.   
  21.    }  

 

defaultAppWidget()函数会重新加载widget信息和布局文件,这样就可以恢复默认值了。
最后别忘了在AndroidManefest.xml里面加上:

 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. <receiver android:name="com.android.music.MediaAppWidgetProvider$PackageDataClearedReceiver" >  
  2.     <intent-filter>  
  3.         <action android:name="com.mediatek.intent.action.SETTINGS_PACKAGE_DATA_CLEARED" />  
  4.         <category android:name="android.intent.category.DEFAULT" />  
  5.     </intent-filter>  
  6. </receiver>  

欢迎大家访问我的个人网站 萌萌的IT人
1
3
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics