文章标签 ‘Android’

[转载]手机上的消息推送 – 心笑峰 – 博客园. 最近在找Android手机上的消息推送的解决方案。目前看来有以下几种常用的方式:1.定期查询:按照指定的时间间隔连接服务器查询获取最新的消息。实现起来简单,非实时,查询时间过短则流量耗费多,耗电量大。下面是一个爱立信的测试结果:   2.短信方式:需要及时发送消息给客户端时也可以通过这种方式,但大家都懂的,这个很花钱。   3.长轮询:基本上与目前很多网站使用的方式一样(WEB阿里旺旺、微博、人人等等)。客户端发起一个很长超时时间的请求,然后服务器端在没有消息的时候阻塞这个请求(一直不给返回值)直到快要超时为止,有消息到来再返回响应。客户端收到响应或超时后立即再发起请求。 这种算是比较好的方式了,消息能够及时地到达客户端。但考虑到移动互联网的特点(网络不稳定、设备内存小)这种方式不能保证重要的消息一定能推送到客户端,另外anroid在手机内存小的情况下可能会杀这个在等待PUSH消息不怎么活动的进程。   4.C2DM:GOOGLE提供了消息的PUSH功能,需要和GOOGLE账号绑定,目前看来这种方式在国内是没戏的。   5.XMPP:在客户端集成asmack,服务器端使用ejabberd或openfire等开源的XMPP服务器软件也是一种可行的方式。 缺点就是先要有注册、登陆等过程,无线网络环境下连接的效果不怎么样。重要消息的PUSH需要自己实现确认逻辑。   6.MQTT:基于代理发布/订阅 模式的消息传输协议,适用于受限环境: 网络代价昂贵、带宽低、不可靠; 在嵌入设备中运行、处理器和内存资源有限。 特点是: 使用发布/订阅模式,解除应用程序耦合; 对负载内容屏蔽的消息传输; 使用TCP/IP; 提供“至多一次”、“至少一次”、“有且仅有一次”三种级别的消息传输; 小型传输、流量开销少; 使用LAST WILL 和TESTAMENT特性通知有关各方客户端异常中断机制。 (听起来简直就是为移动互联网设计的 ) 下面是基于MQTT的简单实现方案:   服务器: 可以采用IBM的MQTT服务器RSMB; 开源的Mosquitto   客户端: IBM的wmqtt.jar 适用于JAVA客户端。   1.下载安装运行Mosquitto服务器。 2.在anroid客户端集成以下代码: import com.ibm.mqtt.IMqttClient; import com.ibm.mqtt.MqttClient; import com.ibm.mqtt.MqttException; import com.ibm.mqtt.MqttPersistence; import com.ibm.mqtt.MqttPersistenceException; import [...]

2012年5月18日10:03 没有评论

[转载]Android系统如何实现UI的自适应 – Melanie Deng – 博客园. 做Android应用的人都知道,要一个apk适用多个不同的手机屏幕是很容易的,就是在项目的res文件夹下面有多套相关的资源文件。程序运行的 时候,Android系统会根据当前设备的信息去加载不同文件夹下的资源文件。但是Android系统是怎么做到这一点的呢?上网上搜了一下,很少有这方 便的介绍,只好自己研究下代码了。下面是我研究代码得到的结果(正确性有待确认),在这里分享一下。   这里以ICS上在Activity的onCreate()方法里面调用setContentView(int resourceID)为例,介绍一下系统如何根据我们的id(R.layout.xxxx)找到合适的layout文件进行解析加载: 如果你的res下面有三种不同的layout:layout, layout-sw480dp和 layout-sw600dp,这里的sw<N>dp表示这个layout文件夹下面的布局文件只有在设备短边的最小宽带为N时才加载。你的 设备是800×480的分辨率,那么这个apk安装在你的设备上就会加载 layout-sw480dp里面的布局文件。下面是framework的 java层调用链: Activity.setContentView(int resourceID) -> PhoneWindow.setContentView(int resourceID) -> LayoutInflater.inflate(int resource, ViewGroup root) -> LayoutInflater.inflate(int resource, ViewGroup root, boolean attachToRoot) -> Resources.getLayout(int id) -> Resources.loadXmlResourceParser(int id, String type) -> Resources.getValue(int id, TypedValue outValue, boolean resolveRefs) -> AssetManager.getResourceValue(int ident, int density, TypedValue [...]

2012年5月18日09:14 没有评论

[转载]Android应用自动更新功能的代码实现 – coolszy – 博客园. 由于Android项目开源所致,市面上出现了N多安卓软件市场。为了让我们开发的软件有更多的用户使用,我们需要向N多市场发布,软件升级后,我们也必须到安卓市场上进行更新,给我们增加了工作量。因此我们有必要给我们的Android应用增加自动更新的功能。 既然实现自动更新,我们首先必须让我们的应用知道是否存在新版本的软件,因此我们可以在自己的网站上放置配置文件,存放软件的版本信息: <update> <version>2</version> <name>baidu_xinwen_1.1.0</name> <url>http://gdown.baidu.com/data/wisegame/f98d235e39e29031/baiduxinwen.apk</url> </update> 在这里我使用的是XML文件,方便读取。由于XML文件内容比较少,因此可通过DOM方式进行文件的解析: public class ParseXmlService { public HashMap parseXml(InputStream inStream) throws Exception { HashMap hashMap = new HashMap(); // 实例化一个文档构建器工厂 DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); // 通过文档构建器工厂获取一个文档构建器 DocumentBuilder builder = factory.newDocumentBuilder(); // 通过文档通过文档构建器构建一个文档实例 Document document = builder.parse(inStream); //获取XML文件根节点 Element root = document.getDocumentElement(); //获得所有子节点 NodeList childNodes [...]

2012年4月28日08:44 评论关闭

[转载]开发人员和设计师应该安装的10个Android应用 – 行业动态 – eoe·Android 开发门户 – android开发者的必备网站 – 全球最大中文Android开发社区. 过去几年里有很多新开发的小工具出现,人们的生活越来越离不开智能机,当然包括Android手机,它已经成为了人们的最大需求量之一,市场上 出现 的Android手机也越来越多,人们也比较喜欢用Android手机。因为相对而言,价格比较能够让人接受,却包含了人们期望有的功能,可以说性价比比 较高。Android开发者不得不随时为了跟上最新的发展技术而作出不断的改进和努力。也随着涌现出了很多帮助开发者进行开发的工具,比如远程桌面连接客 户端,AndFtp等等。下面推荐很多开发者和设计师可能会用到的小工具。   1、 Touchqode Editor 这是一款Android手机上的源代码编辑和查看工具。支持语法高亮和自动填充以及其他跟PC的IDE一样的特性。支持语言有Java、 html、 JavaScript、Python、 C++、 C#、 Ruby 和 PHP. 现在已经和FTP、SFTP客户端集成.     2、 Web Editor Android Web Editor Lite – 一款web开发的手机工具,支持创建和编辑自己的htm、 php、JavaScript 等文件.     3、 Silver Edit   Silver Edit 是 Android 手机的一款轻量级的源代码编辑程序,很它能编写 HTML, CSS, PHP, XML 文件并保存或发送到指定的邮箱帐户,并且支持语法高亮。再安装上 AndFTP [...]

2012年4月26日08:15 评论关闭

[转载]安卓Android大量项目源码实例喜欢的朋友都拿去吧 – vipxiaoc – 博客园. 下面是整理的几十个安卓项目的源码,喜欢安卓的朋 友拿去吧,想必你一定用的上,喜欢安卓的朋友进来 看看吧。 Android+电子杂志(带翻页效果)源码.rar Android+精仿QQ登录界面源码.rar android-binding-0.45-update.jar Android北京公交查询源代码(离线).rar android多线程断点下载.rar Android对象关系映射框架 Androrm.zip android平台水波效果+源码.rar Android开发的UI设计最佳实践.rar Android游戏的心跳效果.rar android源码 超炫的3D特效程序管理功能.rar android画图程序.zip Android自定义泡泡效果+源码.rar android超炫的图片浏览器(图 + 代码 + 注解).rar Android远程登录含有loading登录效果.rar 下方的小按钮滑动效果.zip 乐看播放器源代码.rar 优化大师客户端(整个客户端.rar 升级源码.rar 商业项目完整版源代码.zip 基于+Android+的英文电子词典.zip 多屏幕显示效果.rar 天天动听悬浮歌词实现.rar 实现基站定位,以及WIFI定位,以及GPS定.rar 文件管理器-android源代码.zip 绝对给力的源码,在线音乐播放器完整项目 .zip 网络流量监测源代码.rar 网页浏览器Demo源码.rar 英语单词记忆程序源码.rar 豆瓣电影RSS 完全源码及相关注释 .rar 重力感应的测试程序andriod源代码.rar Android+Socket编程代码(与PC通讯).rar Android+Txt文本阅读器源码.rar Android+Widget程序源码.rar android+加载时闪烁点样式的启动画面.zip android+半透明Menu效果.zip Android+天气预报加widget源码.rar Android+屏保源码.rar Android+手机防火防源码(DroidWall).rar [...]

2012年4月23日09:15 评论关闭
备案信息:冀ICP备10007948号