新人开发理念

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

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

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

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

前记

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

规划

1 先做一个基础demo

2 完善功能

3 重构

第一日

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

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

1 关于builder

 

查看项目属性时候发现的,突然想起,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 实现

文件阅读器

蜘蛛图

【android开发】小说阅读器的更多相关文章

  1. 开发微信小程序——古龙小说阅读器

    概述 由于面试的关系接触了一下微信小程序,花了2晚上开发了一个带书签功能的古龙小说阅读器,并且已经提交审核等待发布.这篇博文记录了我的开发过程和对微信小程序的看法,供以后开发时参考,相信对其他人也有用 ...

  2. android优化中国风应用、完整NBA客户端、动态积分效果、文件传输、小说阅读器等源码

    Android精选源码 android拖拽下拉关闭效果源码 一款优雅的中国风Android App源码 EasySignSeekBar一个漂亮而强大的自定义view15 android仿蘑菇街,蜜芽宝 ...

  3. 读取本地HTML的小说阅读器应用源码项目

    该源码是一个不错的读取本地HTML的小说阅读器,读取本地HTML的小说阅读器,并且源码也比较简单的,非常适合我们的新手朋友拿来学习,有兴趣的朋友研究下. 源码下载: http://code.662p. ...

  4. PC免费的小说阅读器,可提取章节

    最近自己做了个小说阅读器,就是下面这个东西啦,目前仅支持Window系统: 个人喜欢在电脑.平板上等大屏幕设备上阅读小说或电子书籍.原因其一是屏幕足够大,可以选择更舒服的字体大小:其二是觉得小屏幕看字 ...

  5. 使用C#开发pdf阅读器初探(基于WPF,没有使用开源库)

    前言 pdf是最流行的版式格式文件标准,已成为国际标准.pdf相关的开源软件非常多,也基本能满足日常需要了.相关商业软件更是林林总总,几乎应有尽有!似乎没必要自己再独立自主开发!但,本人基于以下考虑, ...

  6. Android 仿 新闻阅读器 菜单弹出效果(附源码DEMO)

    这一系列博文都是:(android高仿系列)今日头条 --新闻阅读器 (一) 开发中碰到问题之后实现的,觉得可能有的开发者用的到或则希望独立成一个小功能DEMO,所以就放出来这么一个DEMO. 原本觉 ...

  7. Android开发环境——调试器 DDMS相关内容汇总

       Android开发环境将分为SDK相关内容.Eclipse ADT相关内容.模拟器AVD相关内容.调试器DDMS相关内容.日志LogCat相关内容.连接驱动ADB相关内容.内存泄露检测工具MAT ...

  8. Vue小说阅读器(仿追书神器)

    一个vue阅读器项目,目前已升级到2.0,阅读器支持横向分页并滑动翻页(没有动画,需要动画的可以自己设置,增加transitionDuration即可) 技术栈 vue全家桶+mint-ui gith ...

  9. Android开发 多媒体提取器MediaExtractor详解_入门篇

    前言 MediaExtractor字面意思是多媒体提取器,它在Android的音视频开发里主要负责提取视频或者音频中的信息和数据流(例如将视频文件,剥离出音频与视频).本章博客将讲解一些入门简单的东西 ...

随机推荐

  1. 揭密: M2和高房价到底谁推高了谁?

    近期,著名经济学家吴敬链向新华网等媒体表示:房价高的根本原本就是货币超发.近期十年来我国M2增长率(广义货币增长率)太快."钱太多了,有些人要保值就要投资买房,又因货币非常多购买力非常强.就 ...

  2. SAN实现

    Linux 上主要有三个 iSCSI Target(基于internet scsi协议的target) 实现: Linux SCSI Target – STGT / tgt Linux-IO Targ ...

  3. JavaScript之怎样获取元素节点

    JavaScript获取元素节点一共有三种方法,分别是通过元素ID.通过标签名字和通过类名字来获取: 1.通过元素ID属性的ID值来获得元素对象-getElementById() DOM提供了一个名为 ...

  4. 关于matlab鼠标响应

    今天看了一下Matlab中响应鼠标的事件,整理如下, (1)函数WindowButtonMotionFcn,当鼠标在窗口上运动的时候就会相应此函数,于是在此函数中可以设置运动时想要的代码,如:改变鼠标 ...

  5. Matlab中边缘提取方法简析

    1.Matlab简述 Matlab是国际上最流行的科学与工程计算的软件工具,它起源于矩阵运算,已经发展成一种高度集成的计算机语言.有人称它为“第四代”计算机语言,它提供了强大的科学运算.灵活的程序设计 ...

  6. Linux 文件内容转码

    文件内容的转换: iconv -f GB2312 -t UTF-8 gb1.txt >gb2.txt-f, –from-code=名称 原始文本编码-t, –to-code=名称 输出编码-o, ...

  7. jsp建立错误页自动跳转

    在各个常用的web站点中,经常会发现这样一个功能:当一个页面出错后,会自动跳转到一个页面上进行错误信息的提示. 想要完成错误页的操作,则一定要满足两个条件: 1.指定错误出现时的跳转页,通过error ...

  8. T4模板之菜菜鸟篇

    一.废话 T4(Text Template Transformation Toolkit)是微软官方在VisualStudio 2008中开始使用的代码生成引擎.在 Visual Studio 中,“ ...

  9. 获取文件数据流+叠加byte数组(给byte数组加包头包尾)

    OpenFileDialog ofd = new OpenFileDialog(); ofd.Filter = "(*.mp4)|*.mp4|(*.*)|*.*"; ofd.Res ...

  10. Hive操作之HQL语句

    HQL操作1.Distribute by    distribute by col按照col列把数据分散到不同的reduce    sort    sort by col 按照col列把数据排序    ...