新人开发理念

1 activity 是每个功能页面的入口

2 动画效果需要配合资源文件中,动画的定义

3 文件的读取是有权限控制的

4 布局应该尽量简单,这样才能让程序跑的飞快

前记

重新开始一个新的apk项目,之前的“公共自行车”没搞完又放弃了,希望这个项目不会继续无疾而终。把自己做这个项目的过程用博客记录下来,也算是对自己的一个督促。

规划

1 先做一个基础demo

2 完善功能

3 重构

第一日

之前找了一个coolreader 的源码,感觉听靠谱的,今天先参考下。

对此源码有兴趣的童鞋,可以到网上搜索下,还挺好找的。地址我就不提供了。

1 关于builder

image 

查看项目属性时候发现的,突然想起,android的编译器是挺好玩的,最近公司的项目在做个android 套壳的功能:绕过系统的检测,利用已经安装的apk调用没安装的apk。

原理说穿了,也听简单,就是利用java 的反射机制。但是遇到一个问题,被调用的apk,包名并不一致,一般开发android 的人都知道,开发的时候编译,如果R 文件不在对应的包名路径当中,是会报错的,那这个编译报错,其实就是android pre compiler 检查出来的。

另外开发的时候从workspace中导入存在的android 工程,是会报错的,这个也是android pre compiler 犯傻,好象是个bug,解决方法就是把workspace 定义到别的位置去。

2 关于intent

从文档看到,intent 是对动作的描述,用来启动activity,service,或单纯用来通信。而且还能在androidManifest 中利用intent-filter 进行处理。

从construct 看出,能传递action,context 和 对应的class,用于后续的startActivity 或者 bindService

3 关于androidManifest

这个文件相当重要,如果要调用activity,需要在此文件中注册,而且文件本身是加密过的,虽然解密方法已经到处都是。

重要内容:apkPackageName, apkVersionName, apkVersionCode(商店之流用于检测应用版本号)

4 关于io

android 的io 还是很方便的,利用File.listFiles() 就可以获取所有的文件。

而且HttpClient 还特地集成到android 中去,非常方便使用。

5 listAdapter

这个东西很好用,直接可以绑定需要List,可以方便做列表管理,和mfc 的dataAdapter 很类似,也有对应的文章管理内容

6 showDialog

showDialog(int),这个定义还是挺好用的,但是必须得明确,需要配合new AlertDialog.Builder(this).create();注意new Builder(this)的时候,context 传进去的应该是当前activity(extends from context),而不是this.getApplicationContext(),因为getApp….. 返回的是applicationContext,这个context 是全局唯一的,但是并不支持后续showDialog 的需求,说到这个,activityContext 则是当前activity 的context,因为activity 可以销毁,重建,所以context 应该也会被销毁,重建。

那么关于这个context 在何时使用,则要看调用的对象是长周期还是短周期,另外还要看对应的activity 的生命周期,否则会跑着跑着程序挂掉,甚至内存泄漏。

更多关于context 的详细介绍可以查看“http://blog.csdn.net/vincent_czz/article/details/8663871

7 关于数据库操作 sqlite

sqlite 作为短小精悍的关系数据库,在android 还是受欢迎的,android 提供了SQLiteOpenHelper 做简单处理,可以协助创建数据库,更新,并把sql 处理写在此,感觉小项目就不用像ibatis 之流的到处写配置文件了。

8 关于客户端开发

客户端是个长时间周期进程,对内存和资源的管理必须严格,不需要的资源必须马上关闭

9 数据类型bunble

用于共享,在activity 间传递,还可以使用ApplicationContext 和Singleton 实现

文件阅读器

蜘蛛图

reader

版权声明:本文为craps原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/craps/p/3222131.html