zoukankan      html  css  js  c++  java
  • 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 用户使用文档
  • 相关阅读:
    SpringMVC---REST POST时出现415 Unsupported Media Type
    Unsupported major.minor version 51.0 错误解决方案
    CSS---清除inline-block元素4px右边距
    CSS---div一行显示,超出以省略号代替
    CSS---h3标题、横线、和圆形按纽共处一行
    输入输出 逻辑运算
    进制转换
    OC中文件读取类(NSFileHandle)介绍和常用使用方法
    iOS:KVO/KVC 的概述与使用
    iOS设计模式——Category和 Extension
  • 原文地址:https://www.cnblogs.com/filemanagement/p/6839690.html
Copyright © 2011-2022 走看看