20169205 项目进度一 文件资源管理器开发详细计划

20169205 项目进度一 文件资源管理器开发详细计划

所用知识

Android基本组件

1.1 Android四大基本组件介绍
1、Activity
activity代表了界面,一个程序可能在好几个界面里切换,这时每个界面都对应一个activity。
2、Broadcast Receivers
Broadcast Receivers用来提醒用户一些信息,可以启动一个Activity来显示信息。
3、Service
后台运行的服务程序。
4、Content Provide
包装数据以供其他程序使用,其他程序使用ContentResolver 便可以与ContentProvider合作管理进程间数据交互。它是两个程序间数据交换的唯一途径。
1.2 所用组件

软件采用了Activity组件,使用了intent类来实现Activity之间的跳转。实现方法:

Intent intent = new Intent(mainActivity.this,otherActivity.class);
startActivity(intent);

//mainActivity为此刻所在的Activity,otherActivity为跳转的目的Activity

UI设计

2.1 UI设计的基本知识
在Android应用程序开发过程中,主要就是对界面UI的设计与控制,android中的UI元素包括:Activity、View、ViewGroup和布局。Activity不是View但是包括View,View是常说的“组件”或者“控件”。
1、View
在Andorid应用程序中,UI元素称为View,它们都继承了android.view.View类。View有众多的子类,包括ViewGroup、基础控件、高级控件和布局。
基础控件主要包括:Button、ImageButton、ToggleButton、TextView、RadioButton、CheckBox、ImageView、ProgressBar、SeekBar等。
高级控件都直接或者间接的继承了android.view.ViewGroup类,常用的高级控件主要包括:AutoCompleteTextView、Spinner、ListView、GridView、Gallery等。
2、布局管理
布局是指导把各个UI元素在手机屏幕上进行布置。常用的布局包括以下个:
1) FrameLayout(框架布局),通常也叫做帧布局。
2) LinerLayout(线性布局),让所有的UI无成为单一方向的布局。
3) AbsoluteLayout(绝对布局),让所有的UI元素准确的(x ,y)坐标 值进行放置。
4) RelativeLayout(相对布局),将子元素的放置位置与其它元素的位置 相关放置。
5) TableLayout(表格布局),将子元素的位置分配到行或者列中。

2.2 所用UI元素
1、基础控件:Button、TextView、ProgressBar,EditText等。
2、高级控件:ListView
3、布局:LinerLayout(线性布局)、AbsoluteLayout(绝对布局)。
3 数据相关
3.1 文件读写
采用文件读写方式读取SD卡中的文件,并获得文件的绝对路径、文件名、类型等相关信息。
3.2 文件信息存储
采用数据库存储SD卡中文件的信息(绝对路径、文件名、类型) 。
4 多线程
在扫描SD卡中文件信息时采用多线程加快扫描速度。方法如下:

File file[] = new File(“/storage/sdcard0”).listFiles();
If(file[i].isFile())//是文件{
}else if(file[i].isDirectory(){//是文件夹
new Thread(new Runnable() {         //开启线程,加快扫描
        		public void run() {
             //扫描当前文件夹
        		}
         }).start();
}

数据结构设计

封装软件运行模式

封装提示信息

封装文件和文件夹信息

文件与文件夹有许多信息是相同的,因此,给它们定义一个基类:

系统功能类的设计

为了提升代码的可维护性, 应该尽量地把功能代码从UI界面中剥离出来。

使用第三方组件,简化主Activity代码

使用Butter Knife简化Android开发: http://jakewharton.github.io/butterknife/

分离UI与功能代码

将功能代码从Fragment中抽取为独立的类,采用“Inject”的方式关联

搜索功能必须采用异步调用方式实现

分离SearchFolderAsyncTask与UI

为了把SearchFolderAsyncTask类与UI界面(FileExplorerFragment)分 离,特定义以下接口,让FileExplorerFragment实现它

阶段开发计划

时间 计划 任务成员 成果
第十二周 完成数据结构和框架设计 20169205 项目详细计划文档
第十三周 底层公共模块开发与设计 20169202、20169204 接口设计文档
第十四周 逻辑功能模块设计与开发 20169205、20169207 功能说明文档
第十五周 测试与交付 20169221 用户使用文档
posted @ 2017-05-11 10:41  20169205-lewo  阅读(331)  评论(0编辑  收藏  举报