重载窗口状态onSaveInstanceState保存一般使用SharedPreferences完成,它提供了Android平台常规的Long长 整形、Int整形、String字符串型的保存,它是什么样的处理方式呢?SharedPreferences类似过去Windows系统上的ini配置文件,但是它分为多种权限,可以全局共享访问,android123提示最 终是以
xml方式来保存,整体效率来看不是特别的高,对于常规的轻量级而言比SQLite要好不少,如果真的存储量不大可以考虑自己定义文件格式。xml 处理时Dalvik会通过自带底层的本地XML Parser解析,比如XMLpull方式,这样对于内存资源占用比较好。
这种方式应该是用起来最简单的Android读写外部数据的方法了。他的用法基本上和 J2SE(java.util.prefs.Preferences)中的用法一样,以一种简单、 透明的方式来保存一些用户个性化设置的字体、颜色、位置等参数信息。一般的应用程序都会提供"设置"或者"首选项"的这样的界面,那么这些设置最后就可以 通过Preferences来保存,而程序员不需要知道它到底以什么形式保存的,保存在了什么地方。当然,如果你愿意保存其他的东西,也没有什么限制。只 是在性能上不知道会有什么问题。
在Android系统中,这些信息以XML文件的形式保存在 /data/data/PACKAGE_NAME /shared_prefs目录下。
* 解析XML文件---DOM
DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而DOM被认为是基于树或基于对象的。DOM 以及广义的基于树的处理具有几个优点。首先,由于树在内存中是持久的,因此可以修改它以便应用程序能对数据和结构作出更改。它还可以在任何时候在树中上下
导航,而不是像SAX那样是一次性的处理。DOM使用起来也要简单得多。
三、项目内容
一. 功能需求
UUJIE项目是一个消费打折的电子商务网站,而本次所做的项目就是为这个网站做一个安卓版本的客户端,让人们可以在手机上进行相对的操作。
安卓客户端主要分为几个大的功能:
1. GPS定位并获取周边信息
2. 查看周边商家详细信息
3. 用户登录及保存个人信息
4. 用户针对商家的操作
二. 详细设计
(一) 主界面
在登录时候将会启动线程,在连接服务器的同时查看用户的手机上是否已经有了登录名和密码,如果有的话发送发服务器去验证
登陆。如果没有的话直接进入主界面。
主界面中用GripView将界面分位五个模块,分别是:"附近""
搜索""联盟商家""申请体验""等多设置"。点击之后进行相关的操作。
图3.1 程序启动的流程图
(二) 获取周边商家信息
点击附近按钮时候,将会调用GPS,来得出用户当前位置的经纬度,通过计算来获取到所有商家跟用户当前的距离,并以
列表的形式将附近的商家反馈给用户。
搜索时可以根据提示输入相关信息,然后进行搜索从而获取到相关的商家信息。
针对不同的商家点击,可以查看该商家的一些详细的信息,这里所需要的数据都是通过TCPIP通讯协议将数据发送到后台然后解析XML文件来完成的。
(三) 用户登录以及
会员操作
在登录页面中进行登录,并通过
通信协议将用户名密码发送到后台。验证之后登陆成功将会在用户的手机上存入相关的信息。并且用SQLite来记录下用户所有的评论。
在登录之后用户可以对有关的商家进行评论,并且可以象服务器反馈自己的意见。下图是意见反馈的流程:
图3.2 意见反馈流程图
四、研究基础
所需实验手段、研究条件和实验条件
系统所使用