MyException - 我的异常网
当前位置:我的异常网» Android » 个人首个AndroidApp开发总结(201509)

个人首个AndroidApp开发总结(201509)

www.MyException.Cn  网友分享于:2013-12-04  浏览:0次
个人首个AndroidApp开发小结(201509)

开发小结(201509,Merrick):

本APP是第一次尝试用ADT-Eclipse开发一个Android桌面APP,

1,UI设计
 界面采用分页的方式,每个分页显示一系列组件,提供增、查功能,可以通过滑动手机屏幕在每个分页之间滑动;分页标签在最顶部,能表明当前分页名称;
 数据录入分页可以录入数据,该分页逐行展示输入控件对应不同数据项的说明和输入控件。
 查询分页可以查询数据,并以表格的形式展现出来,并能奇偶行采用不同风格背景,该分页顶部为输入框和按钮(同一行)供输入查询条件,下方大部显示查询结果表格。
 每个分页都是采用线性布局(LinearLayout)。
 每个分页都有Layout文件。
 主Activity对应一个ViewPager布局文件。

2,组件设计
 分页框架视图组(ViewGroup)采用ViewPager和PagerTabStrip;
 数据录入分页采用DatePickerDialog、EditText、TextView、Button、Spinner,获取日期、文本、数值类型的数据,并展示;
 查询分页采用EditText、Button输入查询条件并查询,ListView控件(包含每行TextView、View作为列表Item)展示表格数据;

3,流程设计
 采用一个Activity,一个类中初始化适配器及事件绑定,onDestroy时关闭数据库;
 开始初始化4个分页View和4个标题,各自加入List,
 建立ViewPager的适配器PagerAdapter:每次滑动时生成当前分页组件,滑动切换的时候销毁当前的组件。
 录入分页:
  DatePickerDialog的形式绑定日期按钮事件,
  下拉框Spinner从全局组件List中获取分页视图并初始化、绑定适配器、绑定选择事件,
  提交按钮绑定点击事件以触发保存数据到Sqlite数据的动作。
  以Toast控件提示操作结果。
 数据查询分页:
  输入控件获取输入内容并判断,按钮提交触发查询、展示数据事件,
  查询sqlite数据库,ListView适配器设定(继承SimpleAdapter类,以便更多样化个性化地展示ListView内容),需要List<Map>作为查询结果数据、列名(Map键名)数组、对应Layout组件的ID数据作为参数填入适配器。
4,数据库设计
 单表sqlite数据库,继承SQLiteOpenHelper类,并在onCreate方法中建立初始数据库(sql语句);
 对于需要更新数据库表结构时,可在初始化SQLiteOpenHelper继承类对象时,并在调用处传入不同的version参数(最初是1);
 查询时采用Cursor取得结果用while迭代。

5,对于Sqlite数据库 *.db文件
 直接访问手机(及模拟器)设备上的db文件需要手机的root权限,模拟器上可以(有root),华为手机上需要用其他方法开启root权限的动作,暂不能访问。
 可以在PC上用adb工具(需要root权限)访问设备上的db文件、上传下载db文件、sqlite工具访问db数据库执行sql。可以用ADT的DDMS查看设备上的文件(需要文件权限)。
 PC上用文件管理器无法访问设备上的私有文件,每个app对应被分配的用户私有文件是被隐藏的。

 firefox的sqlite插件可以正确查看windows上获取到的db文件中的中文内容,sqlite命令行访问windows上的db文件(不管有没有改控制台utf-8,65001编码)中文有乱码。
 sqlite命令行直接访问虚拟设备(root权限)上的db文件中文内容可以正确显示。
 设备上db文件路径:/data/data/com.test.test4tabs/databases/familyfee.db  ,私有,对于app安装时被分配的用户,在资源管理器中无法看到。
 

6,对于Android项目中的xml文件
 AndroidManifest.xml:项目配置文件,涉及版本、Activity、过滤器、权限......内容比较多;
 资源文件夹包括:layout文件是UI控件布局的设计文件、
   menu和弹出菜单有关、
   resources标签下包括:数组string-array、颜色color、字符串string、样式style

7,使用的library
 比如ViewPager控件,是sdk\extras\android\support\v4\android-support-v4.jar中的组件;

8,暂未涉及的内容
 未涉及到Intent、多个Activity之间的转换、Broadcast Receiver、Services、安全和许可

文章评论

程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
代码女神横空出世
代码女神横空出世
程序员应该关注的一些事儿
程序员应该关注的一些事儿
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
编程语言是女人
编程语言是女人
2013年美国开发者薪资调查报告
2013年美国开发者薪资调查报告
漫画:程序员的工作
漫画:程序员的工作
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
程序员和编码员之间的区别
程序员和编码员之间的区别
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
如何成为一名黑客
如何成为一名黑客
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
Java程序员必看电影
Java程序员必看电影
中美印日四国程序员比较
中美印日四国程序员比较
我是如何打败拖延症的
我是如何打败拖延症的
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
我的丈夫是个程序员
我的丈夫是个程序员
那些争议最大的编程观点
那些争议最大的编程观点
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
一个程序员的时间管理
一个程序员的时间管理
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
总结2014中国互联网十大段子
总结2014中国互联网十大段子
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
程序员的鄙视链
程序员的鄙视链
旅行,写作,编程
旅行,写作,编程
 程序员的样子
程序员的样子
程序员都该阅读的书
程序员都该阅读的书
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
程序员必看的十大电影
程序员必看的十大电影
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有