`
uiiang
  • 浏览: 30244 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

一个简单的文件管理工具 0.3

阅读更多

    学习android的练习小软件.

 

    制作文件管理器的初衷是发现G1上并没有随系统附带文件浏览软件, 考虑到电子书,媒体播放器或其它一些软件会使用到文件浏览,选择文件或文件夹, 所以先做了这个文件管理工具并封装一些参数供第三方程序调用

    应用很简单, 只是把手机和SD卡中的文件列出来, 支持图片和mp3的简单预览. 未来会有更多的功能扩充进来. 欢迎大家试用并提出意见.

--------------------------------------------------------4月更新0.3版 --------------------------------------------------------------------

自从上次更新后工作太忙,半年没玩儿ANDROID了, 最近刚刚闲下来, 继续完善文件管理器

顺便封装了一些其它的widget, 整理后再发上来

 

看着网上铺天盖地的各种android应用, 再看看我这个小破软件, 实在有点拿不出手, 但既然做了就得不断完善下去

目标是做一个封装widget的集合, 方便开发者使用

 

1, 使用线程和handler message机制读取文件列表, 提升软件性能

2, 解决文件列表多次滚动后速度下降的问题

3, 打开文件使用手机关联的应用

4, 增加文件缩略图显示

--------------------------------------------------------10月27日更新0.2版--------------------------------------------------------------------

1.  0.2版主要增加了一些使用者的功能, 增加了收藏夹功能, 方便用户快速的浏览到经常访问的文件或文件夹

2.  修改了一些for developer的bug

 

 

--------------------------------------------------------  0.1版 --------------------------------------------------------------------

 

   

 

 

 

 

-------------------------------------------------------------------- for developer --------------------------------------------------------------------

G1上并没有随系统附带文件浏览软件, 考虑到电子书,媒体播放器或其它一些软件会使用到文件浏览,选择文件或文件夹, 所以先做了这个文件管理工具并封装一些参数供第三方程序调用,可以做为插件形式使用
把文件管理器封装起来并使用intent机制设置浏览参数和调用
目前暂不支持多文件选择, 将在下一版中发布
调用程序示例

1           Button button2  =  (Button) findViewById(R.id.but2);
2           button2.setOnClickListener(testFileManager);

 

 1  private  OnClickListener testFileManager  =   new  OnClickListener() {
 2           public   void  onClick(View v) {
 3              Intent intent  =   new  Intent( " net.uiiang.android.alkaid.FILEMANAGER " );
 4              
 5               // 参数root_directory, 设置浏览的根目录, 例如设置/sdcard则只允许程序浏览sd卡中的内容, 当程序回退上层文件夹到/sdcard后不再向上回退
 6               // 参数类型为字符串, 默认为"/"(根目录)
 7              intent.putExtra( " root_directory " " / " );
 8              
 9               // 参数exclude_directory, 设置不显示的目录, 例如设置"/data", "/dev", 则"/data", "/dev"这两个目录不会显示给用户
10               // 参数类型为字符串数组, 默认不排除任何文件夹
11              intent.putExtra( " exclude_directory " ,
12                       new  String[] {  " /data " " /dev "  });
13  
14               // 参数thrid_party_call, 当第三方程序调用时, 必须设置此参数为true, 否则下面几个参数不起作用
15               // 参数类型为boolean, 默认为false, 会显示以下参数可设置的所有菜单(除 选择菜单)
16              intent.putExtra( " thrid_party_call " true
);
17              
18               //  参数directory_show_type, 目录浏览方式
19               //  参数类型为 int, 默认为0
20               //  0 : 显示文件和文件夹(默认)
21               //  1 : 只显示文件
22               //  3 : 只显示文件夹 
23              intent.putExtra( " directory_show_type " 0 );
24              
25               // 参数use_menu_items, 设置显示的预置菜单
26               // 参数类型为:int数组
27               // 菜单列表:
28               //  1 : 上下文菜单-打开  (文件夹)
29               //  2 : 上下文菜单-删除
30               //  3 : 上下文菜单-详细信息
31               //  4 : 上下文菜单-复制
32               //  5 : option菜单-粘贴
33               //  6 : option菜单-新建文件夹
34               //  99: 上下文菜单-选择 , 若需要文件管理器返回一个选中的文件路径, 则必须设置此菜单
35               //  当用户点击此菜单后, 文件管理器退出并返回给调用程序一个字符串数组, 数组中包含文件路径信息
36              intent.putExtra( " use_menu_items " new   int [] {  99  });
37              
38               //  参数show_info_in_list, 是否在浏览文件中显示简单的信息, 如文件夹中包含多少子文件夹和文件
39               //  默认为true
40              intent.putExtra( " show_info_in_list " false );
41              
42               //  参数show_file_extension, 是否显示文件后缀名
43               //  默认为 true
44              intent.putExtra( " show_file_extension " false );
45              
46               //  参数use_simple_view, 是否使用简单文件预览
47               //  用户单击文件后可以简单的预览文件内容, 目前支持图片和音乐文件
48               //  默认为 true
49              intent.putExtra( " use_simple_view " false );
50              
51               //  参数animation_show_list, 是否使用动态效果显示文件列表, 目前只支持向下卷帘式的效果
52               //  默认为true
53              intent.putExtra( " animation_show_list " true );
54              
55               // 参数mutiple_select, 是否支持多选, 为true可以一次性选择多个文件或目录
56               // 默认为false
57              intent.putExtra( " mutiple_select " , false );
58  
59              startActivityForResult(intent, SELECT_FILE);
60          }
61      };



通过startActivityForResult调用文件管理器, 并使用上下文菜单选择文件或文件夹

 

 

点击"选择"后, 返回到调用程序

 1      @Override
 2       protected   void  onActivityResult( int  requestCode,  int  resultCode, Intent data) {
 3           super .onActivityResult(requestCode, resultCode, data);
 4           if  (requestCode  ==  SELECT_FILE) {
 5               if  (resultCode  ==  RESULT_OK) {
 6                   //  参数名为selected_uri, 得到字符串数组中包含文件路径
 7                  String[] selectArr  =  data.getExtras().getStringArray(
 8                           " selected_uri " );
 9                   if  (selectArr  !=   null ) {
10                      String selectFile  =   "" ;
11                       for  (String string : selectArr) {
12                          System.out.println( " you select  =  "
13                                   +  data.getExtras().getStringArray(
14                                           " selected_uri " ));
15                      }
16                  }
17  
18              }
19          }
20      }

 

 

 

分享到:
评论
8 楼 wjb_forward 2010-10-19  
不错,能把源码给我看看吗,我想学习一下。
7 楼 dandy 2009-11-20  
eyeqq 写道
我看到你那边背景是设置成黑色的,所以你应该没遇到过。
你设置成其它颜色试一下吧。下接的时候就会变黑…………

我用过白色背景,除了人为操作以外,也没遇到过。
6 楼 heji 2009-11-16  
很不错的啊!!!谢谢分享
5 楼 blueardor 2009-11-05  
thanks
4 楼 yuanyao 2009-10-27  
ListActivity用了好多,没出现你说的那样,但是ExpandableListActivity到是很容易触摸导致一片黑
3 楼 eyeqq 2009-10-26  
我看到你那边背景是设置成黑色的,所以你应该没遇到过。
你设置成其它颜色试一下吧。下接的时候就会变黑…………
2 楼 uiiang 2009-10-26  
eyeqq 写道
不知道你做列表的时候用ListActivity有没有遇到这样的情况。
数据多的时候然后下拉去看后面的文件列表,这时候整个Activity就会变黑,好像所有的都像被选中一样~~~~~


这个问题还真没是到过,能详细说一下你的情况吗
1 楼 eyeqq 2009-10-26  
不知道你做列表的时候用ListActivity有没有遇到这样的情况。
数据多的时候然后下拉去看后面的文件列表,这时候整个Activity就会变黑,好像所有的都像被选中一样~~~~~

相关推荐

    刘宝宝文件管理器 v0.3

    "刘宝宝文件管理器 v0.3" 是一个开源的文件管理工具,旨在帮助用户通过网络浏览器便捷地管理和操作远程服务器上的文件。该工具具备多种实用功能,包括快速的文件请求与响应机制,以及对文件的多种视图展示,如缩略图...

    批量文件改名命名工具0.3.zip

    批量文件改名命名工具是一款高效实用的软件,主要用于帮助用户快速、方便地更改...总的来说,批量文件改名命名工具是一个提高工作效率的实用工具,通过理解上述知识点,用户可以更好地掌握和利用这类工具进行文件管理。

    刘宝宝站点文件管理器0.3.zip

    liubaobao文件管理器是一个开源的工具,你可以使用管理您的服务器上的文件通过网络浏览器,快速的请求和响应,以缩略图功能,文本编辑器支持,文本文件编辑,代码编辑,压缩等功能。  请随意下载并使用它,如果你...

    文件合并助手0.3软件

    总的来说,"文件合并助手0.3软件"以其简洁的界面、强大的功能和对嵌入式系统的良好支持,成为了文件管理领域的一把利器。无论是日常办公还是专业开发,都能找到它的用武之地。通过了解和掌握这款工具,我们可以更加...

    FX文件管理器增强版v9.0.0.3高级版.zip

    总的来说,FX文件管理器增强版v9.0.0.3是一款跨平台、功能丰富的文件管理工具,旨在提升用户在日常文件操作中的效率,同时涵盖了从基础的文件浏览到高级的数据管理、编程开发等多个方面的功能。其高级版本的特性,...

    个人月度计划管理工具 0.3.14.0

    综上所述,"个人月度计划管理工具 0.3.14.0"通过集成这些关键组件,构建了一个全面且易用的个人计划管理系统,无论是日常生活还是工作项目,都能帮助用户科学规划时间,提高生产力。其简洁的界面、强大的功能和灵活...

    数据库管理器 v0.3

    《数据库管理器 v0.3》是一款专注于数据库管理...总之,《数据库管理器 v0.3》作为一个实用的数据库管理工具,结合了灵活性和易用性,为用户提供了全面的数据库操作功能,无论是新手还是经验丰富的DBA,都能从中受益。

    clumsy网络环境模拟工具 v0.3 rc4 源码包.zip

    clumsy网络环境模拟工具的v0.3 rc4源码包是一个宝贵的资源,对于学习网络环境模拟、软件开发、系统管理,特别是进行毕业设计和论文写作的学生来说极具价值。通过分析源代码,用户可以了解网络模拟的实现机制,测试...

    Windows7文件管理(7files) v0.3 免费版.rar

    总的来说,Windows7文件管理(7files) v0.3免费版是一款为Windows 7用户量身定制的高效文件管理工具,它通过改进的界面设计和增强的功能,弥补了原生文件管理器的不足,让文件管理工作变得更加轻松愉快。这款软件的...

    PicZoom 0.3 批量照片缩小上传

    总的来说,PicZoom 0.3 是一款集批量图片缩放和FTP上传于一体的实用工具,其优化的操作流程和丰富的功能,使它成为图像处理领域中的一个得力助手。对于需要高效管理大量图片的用户,无论是专业人士还是业余爱好者,...

    phcompiler -windows .0.3 将 php文件编译成exe文件的工具

    "phcompiler - windows .0.3 将 php文件编译成exe文件的工具" 这个标题揭示了我们讨论的主题是一款名为 "phcompiler" 的软件工具,其版本为 .0.3,专用于Windows操作系统。这款工具的独特之处在于它能够将PHP(一种...

    Ghost映像一键转WIM&ESD;映像工具__V1.0.0.3

    【标题】"Ghost映像...总之,"Ghost映像一键转WIM&ESD映像工具__V1.0.0.3" 是一个实用的工具,旨在帮助用户将他们的Ghost映像文件无缝迁移到现代Windows操作系统所采用的标准格式,从而提升系统管理和维护的便利性。

    最新MOD平台ares_0.3

    总结来说,ares_0.3是一个针对游戏MOD的管理工具,提供了MOD注入、执行和管理的综合解决方案。虽然可能不是所有用户每天都需要,但在特定时刻,比如游戏的大型更新或活动(DDAY),它的功能可以帮助玩家更好地享受...

    LvglFontTool_V0.3.rar

    LVGLFontTool_V0.3.rar 是一个与GUI(图形用户界面)相关的压缩包,其中包含了一个用于处理字体的工具,特别适用于LVGL(LittleVGL)库。LVGL是一个开源且功能丰富的嵌入式图形库,它允许开发者在各种微控制器上创建...

    多文档界面资源管理器 MDIE(多文档界面资源管理器) v0.3.0.0

    MDIE(多文档界面资源管理器)是一款专为提高文件管理效率而设计的强大工具,它采用了多文档界面(MDI)的设计模式,使得用户可以在同一窗口内同时处理多个不同的文件或目录,极大地提升了操作便捷性。这个软件版本...

    oracle11.2.0.3补丁

    这个版本(11.2.0.3.6)可能是OPatch的一个更新,用于支持11.2.0.3补丁集的安装和管理。OPatch简化了补丁的安装过程,减少了手动操作,提高了效率和准确性。 5. **补丁安装流程**:在安装补丁前,需要备份数据库,...

    FilesNet文件管理器 v1.3.5065

    经测试,在一太普通PC上对一个包含50000个文件的目录进行浏览管理,任意翻页,执行时间均不超过1秒。过滤或者搜索则更是低至仅0.3秒的执行时间。而windows资源管理器打开目录或者asp版翻至最后一页都需要6.5秒甚至更...

    Leopard0.3.zip

    "Leopard hd install helper v0.3"作为压缩包内的文件,很可能是一个工具或脚本,设计用于简化Mac OS X Leopard的硬盘安装过程。这个工具可能包括了自动化步骤,如格式化目标分区、挂载映像文件、复制系统文件到指定...

    ojdbc6-11.2.0.3.jar下载包.rar

    标题中的"ojdbc6-11.2.0.3.jar下载包.rar"指的是一个RAR压缩文件,其中包含了ojdbc6驱动程序的特定版本——11.2.0.3。Oracle JDBC驱动程序,通常称为ojdbc,是Oracle公司提供的Java数据库连接(JDBC)驱动,用于与...

Global site tag (gtag.js) - Google Analytics