Android 11 mtp文件夹自定义显示,且不可写,不可删除

需求:mtp文件只显示record文件夹,且record文件夹下只显示3个文件夹,分别为:record,recorda,recordtest。且mtp文件只可读,不可写,不可删除。

需求拆分如下:

  1. sdcard目录下新建文件夹record;
  2. mtp文件夹只保留record及其三个子文件夹;
  3. mtp文件禁用新建,拷贝,移动,删除等功能;

需求一,sdcard目录下新建文件夹record,修改文件路径为:

alps\frameworks\base\core\java\android\os\Environment.java

alps\packages\providers\mediaprovider\src\com\android\providers\media\MediaProvider.java

要点:参考已有文件夹Audiobooks来新建文件夹record。

修改内容如下,//add by lj 为代码搜索的关键字

Environment.java文件:

/**

     * Standard directory in which to place any record files which are

     * record.

     * @hide

     */

    public static final String DIRECTORY_RECORD = "record";//add by lj

...

public static final String[] STANDARD_DIRECTORIES = {

            DIRECTORY_MUSIC,

            DIRECTORY_PODCASTS,

            DIRECTORY_RINGTONES,

            DIRECTORY_ALARMS,

            DIRECTORY_NOTIFICATIONS,

            DIRECTORY_PICTURES,

            DIRECTORY_MOVIES,

            DIRECTORY_DOWNLOADS,

            DIRECTORY_DCIM,

            DIRECTORY_DOCUMENTS,

            DIRECTORY_AUDIOBOOKS,

            DIRECTORY_RECORD,//add by lj

    };

...

/** {@hide} */ public static final int HAS_RECORD = 1 << 11;//add by lj

...

else if (DIRECTORY_RECORD.equals(name)) res |= HAS_RECORD;//add by lj

MediaProvider.java文件:

private static final String DIRECTORY_RECORD = "record";//add by lj

...

private static final String[] sDefaultFolderNames = {

            Environment.DIRECTORY_MUSIC,

            Environment.DIRECTORY_PODCASTS,

            Environment.DIRECTORY_RINGTONES,

            Environment.DIRECTORY_ALARMS,

            Environment.DIRECTORY_NOTIFICATIONS,

            Environment.DIRECTORY_PICTURES,

            Environment.DIRECTORY_MOVIES,

            Environment.DIRECTORY_DOWNLOADS,

            Environment.DIRECTORY_DCIM,

            Environment.DIRECTORY_AUDIOBOOKS,

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值