Android在MTP模式下,只显示指定文件夹

废话不多说,直切主题

如图:


修改文件夹在PC上的文件夹名

frameworks/base/media/java/android/mtp 下找到MtpProertyGroup.java源文件

MtpPropertyList getPropertyList(int handle, int format, int depth)函数中的case MtpConstants.PROPERTY_OBJECT_FILE_NAME:添加如下代码


注意我这里是只修改根目录下的文件,Pictures、Movies、Music分别改成 我的图片、我的视频、我的音乐,parent == 0表示是在根目录

还有一点要注意

int parent = queryInt(handle, Files.FileColumns.PARENT);

中的查询是

    private Integer queryInt(int id, String column) {
        Cursor c = null;
        try {
            // for now we are only reading properties from the "objects" table
            c = mProvider.query(mPackageName, mUri,
                            new String [] { Files.FileColumns._ID, column },
                            ID_WHERE, new String[] { Integer.toString(id) }, null, null);
            if (c != null && c.moveToNext()) {
                return new Integer(c.getInt(1));
            }
        } catch (Exception e) {
        } finally {
            if (c != null) {
                c.close();
            }
        }
        return null;
    }

就这么多了,下一篇关于MTP模式下如何禁止PC端在根目录创建文件夹、修改文件名、删除文件夹等



发布了27 篇原创文章 · 获赞 4 · 访问量 4万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章