上篇说到,把小米的Java代码整理成了5个包,其中1个是net.micode.fileexplorer.model。
这个包就2个模型类,最基本了,FileInfo和FavoriteItem。

package net.micode.fileexplorer.model;

/** 抽象了一个文件最基本的信息 */
public class FileInfo {
// 文件名
public String fileName;
// 文件路径
public String filePath;
// 文件大小(单位是啥呢?)
public long fileSize;
// 是否为目录
public boolean IsDir;
// 不懂
public int Count;
// 上次修改日期
public long ModifiedDate;
// 是否选中
public boolean Selected;
// 是否可读
public boolean canRead;
// 是否可写
public boolean canWrite;
// 是否隐藏
public boolean isHidden;
// 如果从数据库中来,就是数据库中的id
public long dbId; // id in the database, if is from database
}

不确定的有2个字段,fileSize文件大小的单位,Count字段。
有个比较奇怪的地方是,有的字段小写字母开头,有的字段是大写字母开头。这是为啥呢?

package net.micode.fileexplorer.model;

/**收藏的项*/
public class FavoriteItem {
// id in the database
public long id; public String title; // path
public String location; public FileInfo fileInfo; public FavoriteItem(String t, String l) {
title = t;
location = l;
} public FavoriteItem(long i, String t, String l) {
id = i;
title = t;
location = l;
}
}

目前对整个程序,还没有完整清晰的认识。
我自己的分析:FileInfo是存到数据库的某个文件项,FavoriteItem是收藏夹的项。
不确定是path和FileInfo的filePath是否相同。

这2个实体类,算是源码中最简单的2个了,没啥逻辑,只是部分字段还不是很清楚。

吃了开胃菜,准备下一道菜了~

小米开源文件管理器MiCodeFileExplorer-源码研究(1)-2个模型Model的更多相关文章

  1. 小米开源文件管理器MiCodeFileExplorer-源码研究(0)-初步研究

    2011年对着书本Android应用开发揭秘,写了2个月的HelloWorld.   现在想复习并深入,我没有耐心再去一点点地敲代码了.   4年前自己是个学生,实习,现在有工作,只能业余时间研究. ...

  2. Android开源项目 Universal imageloader 源码研究之Lru算法

    https://github.com/nostra13/Android-Universal-Image-Loader universal imageloader 源码研究之Lru算法 LRU - Le ...

  3. 小米开源文件管理器MiCodeFileExplorer-源码研究(5)-AsyncTask异步任务

    说明:本文的文字和代码,主要来自于网上的2篇文章. 第4篇的时候,提到了异步任务AsyncTask. 网上找了2篇文章学习下,copy网友的代码,稍微改了几个字,运行成功了. 在开发Android移动 ...

  4. 开源播放器ijkplayer源码结构

    ijkplayer核心源码主要在ijkmedia文件夹下ijkplayer.ijksdl及ijkutils. 注:tag k0.3.1 player: remove ijkutil android相关 ...

  5. 小米开源文件管理器MiCodeFileExplorer-源码研究(9)-入口分析

    AndroidManifest.xml是Android应用程序最重要的配置文件. 入口文件和intent-filter <application android:icon="@draw ...

  6. 小米开源文件管理器MiCodeFileExplorer-源码研究(6)-媒体文件MediaFile和文件类型MimeUtils

    接着之前的第4篇,本篇的2个类,仍然是工具类.MediaFile,媒体文件,定义了一大堆的常量,真正的有用的方法就几个.isAudioFileType.isVideoFileType之类的. Mime ...

  7. 小米开源文件管理器MiCodeFileExplorer-源码研究(2)-2个单实例工具类

    从本篇开始,讲解net.micode.fileexplorer.util工具包中的类.这个包下的类,功能也比较单一和独立.很多代码的思想和实现,可以用于JavaWeb和Android等多种环境中. 一 ...

  8. 小米开源文件管理器MiCodeFileExplorer-源码研究(3)-使用最多的工具类Util

    Util.java,使用最广泛~代码中很多地方,都写了注释说明~基本不需要怎么解释了~ package net.micode.fileexplorer.util; import java.io.Fil ...

  9. 小米开源文件管理器MiCodeFileExplorer-源码研究(8)-文件排序工具类FileSortHelper

    FileSortHelper的核心功能就是,对文件集合FileInfo排序.FileInfo有若干字段,根据字段定义了4种比较器Comparator.调用示例:Collections.sort(Lis ...

随机推荐

  1. caffe(3) 视觉层及参数

    本文只讲解视觉层(Vision Layers)的参数,视觉层包括Convolution, Pooling, Local Response Normalization (LRN)局部相应归一化, im2 ...

  2. springMVC+request.session实现用户登录和访问权限控制

    用springmvc mybatis实现用户登录登出功能,使用session保持登录状态,并实现禁止未登录的用户访问.感谢谷歌资源,在这里做个学习记录加深自己的印象. 原文在我的https://my. ...

  3. [Python] Statistical analysis of time series

    Global Statistics: Common seen methods as such 1. Mean 2. Median 3. Standard deviation:  the larger ...

  4. C++语言笔记系列之十——静态成员

    1.静态成员 (1)由keywordstatic修饰 静态变量定义语句在编译阶段就运行,运行过程中不再运行. (2)分类:静态数据成员.静态成员函数. (3)静态成员时类的全部对象共享的成员,而不是某 ...

  5. CentOS6 安装 aria2

    CentOS6 安装 aria2 https://www.jianshu.com/p/31ea7aba5524 http://blog.51cto.com/skypegnu1/1637168 1.先安 ...

  6. Centos7 ssh免密码登陆

    摘要:安装openssl openssl-devel 不过有些centos自带 192.168.161.5  192.168.161.15 本版本用centos7 (192.168.161.5) yu ...

  7. 4.graph.h

    #pragma once #include <stdio.h> #include <graphics.h> #include <mmsystem.h> #pragm ...

  8. Aizu - 2555 Everlasting Zero 模拟

    Aizu - 2555 Everlasting Zero 题意:学习技能,每个技能有不同的要求,问能否学习全部特殊技能 思路:枚举每两个技能,得到他们的先后学习关系,如果两个都不能先学的话就是No了, ...

  9. HTTP 各种特性应用(三)

    一. 数据协商 分类: 客户端请求: Accept: Accept:表明 我想要什么样的数据 Accept-Encoding:数据是什么样的编码方式 进行传输.主要限制 服务端怎样进行数据的压缩. A ...

  10. 微信小程序官方文档中的加密算法

    用Nodejs来算一下: