以文本方式查看主题 - 曙海教育集团论坛 (http://sun4.cn/bbs/index.asp) -- Android应用开发 (http://sun4.cn/bbs/list.asp?boardid=45) ---- android 应用类APP开发小结——android Google map 小应用 (http://sun4.cn/bbs/dispbbs.asp?boardid=45&id=2026) |
-- 作者:wangxinxin -- 发布时间:2010-12-3 11:20:59 -- android 应用类APP开发小结——android Google map 小应用 做了一个小应用智能情景的切换,这个应用是学习android开发以来应用类开发的比较满意的一个。虽然它只有一个view 一个activity,但是却囊括了android的很多特性。借此机会,和大家分享一下这个小应用。
先上截图:
应用的主要功能是根据适当的情景(如地点,手机状态等)为用户自动的切换情景模式。 比方说:手机向上是铃音+震动,当开会时,将手机翻转,将自动切换成静音模式。 还可以根据经纬度,到达一个地方后自动切换成用户预先设置的情景模式。 (当然,由于没找到合适的经纬度换算工具,经纬度的判断目前只能是精确位置,不是范围值。 因此只能算是个学习的小应用了,实际的应用还有待完善啊。如果有高手知道的话,麻烦告诉我下。万分感谢)
-------------------------废话不多说开始代码部分----------------------------------------------------- 虽然是一个只有一个页面的小应用,但是 麻雀虽小,五脏俱全 这个应用的功能点主要有: 改变情景模式 实时获取地理位置 实时判断手机重力状态 用到的技术包括: 1.android Google map的应用 2.Android组件的使用 3.Xml解析
由于使回头看代码,我就从简单的部分一步步介绍。
首先是权限问题,很多新手都犯了这个毛病,程序出错,往往是权限没有添加。
<!-- 网络链接 --> <uses-permission android:name="android.permission.INTERNET"/> <!-- 地图 --> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <!-- 读写权限 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE" /> 这个应用需要网络连接的权限,因为Google map是实时更新的么。然后是GPS传感器关于地理位置的权限。最后需要存储用户的记录点,所以有文件读写的权限。
为了记录用户记录的情景地点,我使用了XML作为存储的标准,并将文件存在了SD卡上 XML解析 网络上有很详细的各种解析方式,我采用了其中的一种。如果想了解其他的请Google。。。。。 记录地点信息,我定义了一个POJO类
public class RecordLocation { private String location_Id; private String location_ring; private double location_latitude; private double location_longitude; private GeoPoint point; ...篇幅关系,其他的略 XML的解析器,和网络上的其他文章一样就不多说了。能拿来用就成。
|