免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1089 | 回复: 1
打印 上一主题 下一主题

Appwidget [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-02-20 20:28 |只看该作者 |倒序浏览
Appwidget









要了解AppWidget,得先了解Homescreen。
HomeScreen是一个手机的脸面,是一个门户网站的首页,是手机上最为重要的应用。有一个好的homescreen,可以说这个手机已经成功了一半。

开发者当然可以在homescreen上开发很多功能和界面,比如一个时钟,一个天气预报,一个显示当前电池电量,未读短信等状态的状态栏等等。实际上,传统的homescreen也是这样做的。但这样做的弊端有两个:1. homescreen代码过于庞杂,和系统各个子系统都有交互,容易出错,不易维护;2. homescreen不能定制。最终用户可能有不同需求,而预设的功能则限制了用户选择的权力。

AppWidget 的出现主要就解决了这些问题。AppWidget是一个特殊的view,由一个应用(假设应用A)创建和维护,而绘制却在另一个应用上(通常即homescreen)。即应用A负责决定画什么,如一个时钟;而homescreen却负责具体画,即怎么画。如果用一个比喻来形容的话,homescreen和应用A之间的关系就像是一个Browser/Server架构, homesreen 就是一个负责显示的browser,而应用A就是后台的Server。应用A传递RemoteView给homescreen,而homescreen解析并绘制这个RemoteView。这样,不用对homescreen应用做任何改动,却可以定制并丰富了homescreen的显示内容,如一个时钟,一个日历等。

如何创建一个AppWidget, 如何深入理解AppWidget, 等等,可见下列链接:
1. http://www.google.com/url?sa=t&a ... %3A%2F%2Fdeveloper.android.com%2Fguide%2Ftopics%2Fappwidgets%2F&ei=Ct6iS93OMc-GkAWp0ODFCA&usg=AFQjCNGPwi7jyY4KL4MVAQzOZr_ALxZfwQ&sig2=iLmH_iOVfFHZz5p7gpGENA
2. http://www.google.com/url?sa=t&a ... REps5wYMGqtLOqoghsA
3. http://mylifewithandroid.blogspo ... rtext-document.html
4. sample code located in development/samples/ApiDemos/src/com/example/android/apis/appwidget/

使用service, 也可实现两个应用之间的交互,大家可以探讨一下二者的区别。

论坛徽章:
0
2 [报告]
发表于 2012-02-20 20:28 |只看该作者
谢谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP