Android-SD卡中的默认文件夹(DCIM、下载等)是何时创建的?

Android-SD卡中的默认文件夹(DCIM、下载等)是何时创建的?,android,android-6.0-marshmallow,android-source,android-sdcard,Android,Android 6.0 Marshmallow,Android Source,Android Sdcard,我正在构建一个定制的棉花糖Android版本,我想在第一次启动时向SD卡添加一些文件,具体来说,我希望在创建DCIM、下载、铃声等的同时创建这些文件 默认的文件夹结构是什么时候创建的?理论上,通过对字符串进行全文搜索可以找到这类内容,但这可能需要花费大量GB的代码基,因此可以很好地猜测在何处查找 事实证明,默认文件夹是在位于packages/providers/MediaProvider中的中创建的 根据Android的具体版本,该方法可能被称为ensureDefaultFolders()或cr

我正在构建一个定制的棉花糖Android版本,我想在第一次启动时向SD卡添加一些文件,具体来说,我希望在创建DCIM、下载、铃声等的同时创建这些文件


默认的文件夹结构是什么时候创建的?

理论上,通过对字符串进行全文搜索可以找到这类内容,但这可能需要花费大量GB的代码基,因此可以很好地猜测在何处查找

事实证明,默认文件夹是在位于packages/providers/MediaProvider中的中创建的

根据Android的具体版本,该方法可能被称为ensureDefaultFolders()或createDefaultFolders()或其他方法。例如:

    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,
    };
    /**
     * Ensure that default folders are created on mounted primary storage
     * devices. We only do this once per volume so we don't annoy the user if
     * deleted manually.
     */
    private void ensureDefaultFolders(DatabaseHelper helper, SQLiteDatabase db)

从理论上讲,通过对字符串进行全文搜索可以找到这类内容,但这可能需要花费大量GB的代码基,因此对查找位置进行一些良好的猜测会有所帮助

事实证明,默认文件夹是在位于packages/providers/MediaProvider中的中创建的

根据Android的具体版本,该方法可能被称为ensureDefaultFolders()或createDefaultFolders()或其他方法。例如:

    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,
    };
    /**
     * Ensure that default folders are created on mounted primary storage
     * devices. We only do this once per volume so we don't annoy the user if
     * deleted manually.
     */
    private void ensureDefaultFolders(DatabaseHelper helper, SQLiteDatabase db)