这两天在研究android mtp模式过滤文件系统格式,比如.wave等格式,在mtp目录不显示。

直接上改动的地方:

diff --git a/media/java/android/mtp/MtpPropertyGroup.java b/media/java/android/mtp/MtpPropertyGroup.java
index dea300838..f4d688575 100644
--- a/media/java/android/mtp/MtpPropertyGroup.java
+++ b/media/java/android/mtp/MtpPropertyGroup.java
@@ -291,8 +291,13 @@ class MtpPropertyGroup {
         return path.substring(start, end);
     }
 
+    private static boolean fileIsWave(String name) {
+        Log.e(TAG, "===========" + name);
+        return name != null && name.indexOf(".wave") != -1;
+        //return false;
+    }

     MtpPropertyList getPropertyList(int handle, int format, int depth) {
        Log.d(TAG, "getPropertyList handle: " + handle + " format: " + format + " depth: " + depth);
         if (depth > 1) {
             // we only support depth 0 and 1
             // depth 0: single object, depth 1: immediate children
@@ -365,7 +370,7 @@ class MtpPropertyGroup {
                         case MtpConstants.PROPERTY_OBJECT_FILE_NAME:
                             // special case - need to extract file name from full path
                             String value = c.getString(column);
-                            if (value != null) {
+                            if ((value != null)&&(!fileIsWave(nameFromPath(value)))) {
                                 result.append(handle, propertyCode, nameFromPath(value));
                             } else {
                                 result.setResult(MtpConstants.RESPONSE_INVALID_OBJECT_HANDLE);

 

这样的话,就把wave格式文件设置为INVALID_OBJECT,从而界面上无法显示。也就是起到了过滤的作用。

别看这么两行,也是折腾了两天才找到具体要修改的代码点,功能实现了,就是高兴啊!!!!

 

Mark 一下!!!

 

 

 

 

 

 

 

 

 

 

更多相关文章

  1. UI控件--EditText
  2. EditText的属性
  3. 关于Android音频、视频录制类MediaRecorder
  4. android 日期时间格式转换;软键盘显示消失;获取系统title
  5. Android(安卓)控件的显示隐藏上下左右移动动画
  6. android 对话框详解
  7. Android(安卓)字符串格式化 千位符
  8. Android(安卓)发送短信 源代码
  9. Android按键消息传播流程

随机推荐

  1. android点击状态分析
  2. Android Studio 提示错误:No IDEA annotat
  3. Spinner弹出位置变化
  4. Android中UI线程与后台线程交互设计的5种
  5. Android 版本分布数据:Android 2.3 估超过
  6. 如何保证手机端的app访问web服务器的安全
  7. android ImageView 控件
  8. android中@+id 与@string的使用
  9. Android EditText样式自定义
  10. 【Android】Android设计准则