android2.1之后appwidget的一些问题

1.appwidget的xml配置文件中有一个控制appWidget自动更新的属性
android:updatePeriodMillis=“86400”
这个从android2.0以后就属性无效了!android官网上面竟然没有说明
2.appwidget的功能非常有限
如果你的widget里面有一个TextView的话,你甚至无法得到这个控件中的文字内容,不要想用getText()方法,因为appwidget只支持一种对其包含控件的访问方法:
RemoteViews  rv = new RemoteViews(packageName, layoutId);
rv中包含一些设置属性的方法
比如:setTextViewText(viewId, text)等
但是不支持一切getxxx方法
因此,你只能将数据呈现到appwidget上面。但是,你或许会遇到这种情况:从一个activity或service中获取数据显示到appwidget,当用户进一步操作时(点击了appwidget上的一个按钮),appwidget将会启动另一个activity或者service,并将数据传输给它。例如:启动一个dialog对话框activity让用户输入搜索关键字,用户点击确定之后,关键字会出现在appwidget上,再点击appwidget上的搜索按键,appwidget会启动浏览器,跳转到搜索页面。
如果以上情况,开发者不可能从appwidget中获取到关键字,因此,比较好的解决方法是利用sharedPreference,将关键字存储进sharedPreference,无论是appwidget的UI显示,还是浏览器activity获取关键字的操作,全部变成读取sharedPreference数据。当然,也可以用其存储方式。

你可能感兴趣的:(appwidget,android2.0)