当前位置: 首页 > 知识库问答 >
问题:

目录创建在Marshmallow Android中不起作用

上官自明
2023-03-14

我在我的本地应用程序中创建目录。它在Android5.0中工作得很好,但在Android6.0中(Marshmallow)有些时候它工作了,有些时候不工作。我使用下面的代码来创建新的目录。我在目录中保存视频和图像文件。

 public static void createApplicationFolder() {
    File f = new File(Environment.getExternalStorageDirectory(), File.separator + Config.VIDEO_COMPRESSOR_APPLICATION_DIR_NAME);
    f.mkdirs();
    f = new File(Environment.getExternalStorageDirectory(), File.separator + Config.VIDEO_COMPRESSOR_APPLICATION_DIR_NAME + Config.VIDEO_COMPRESSOR_COMPRESSED_VIDEOS_DIR);
    f.mkdirs();
    f = new File(Environment.getExternalStorageDirectory(), File.separator + Config.VIDEO_COMPRESSOR_APPLICATION_DIR_NAME + Config.VIDEO_COMPRESSOR_TEMP_DIR);
    f.mkdirs();

}

共有1个答案

应俭
2023-03-14
public class MyDevIDS extends AppCompatActivity {

        private static final int REQUEST_RUNTIME_PERMISSION = 123;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            if (CheckPermission(MyDevIDS.this, Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
                // you have permission go ahead
                createApplicationFolder();
            } else {
                // you do not have permission go request runtime permissions
                RequestPermission(MyDevIDS.this, Manifest.permission.WRITE_EXTERNAL_STORAGE, REQUEST_RUNTIME_PERMISSION);
            }
        }

        @Override
        public void onRequestPermissionsResult(int permsRequestCode, String[] permissions, int[] grantResults) {

            switch (permsRequestCode) {

                case REQUEST_RUNTIME_PERMISSION: {
                    if (grantResults.length > 0
                            && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
                        // you have permission go ahead
                        createApplicationFolder();
                    } else {
                        // you do not have permission show toast.
                    }
                    return;
                }
            }
        }

        public void RequestPermission(Activity thisActivity, String Permission, int Code) {
            if (ContextCompat.checkSelfPermission(thisActivity,
                    Permission)
                    != PackageManager.PERMISSION_GRANTED) {
                if (ActivityCompat.shouldShowRequestPermissionRationale(thisActivity,
                        Permission)) {
                } else {
                    ActivityCompat.requestPermissions(thisActivity,
                            new String[]{Permission},
                            Code);
                }
            }
        }

        public boolean CheckPermission(Context context, String Permission) {
            if (ContextCompat.checkSelfPermission(context,
                    Permission) == PackageManager.PERMISSION_GRANTED) {
                return true;
            } else {
                return false;
            }
        }
    }
 类似资料:
  • 条件是,如果目录存在,则必须在该特定目录中创建文件,而不创建新目录。 下面的代码仅使用新目录创建一个文件,而不针对现有目录。例如,目录名类似于“GETDIRECTION”:

  • 我目前正在为文件管理服务器开发RecycleBin组件。删除文档时,将从多个位置删除所有版本。出现这种情况时,所有文件夹路径将被删除到重复字符串dp\u original\u folder\u paths。 我想在文件夹路径不存在时创建它。 这是我当前的代码。第一部分检查文件是否存在,如果没有创建它。第二部分显示文档被重新链接到文件夹。 给出的输出为 创建目录:\EAM\sbotest 已创建目录

  • 问题内容: 我是9年级的新学生,学习 敏捷 ,创建了一个学校项目。 我正在尝试创建一个目录,要将扫描的文件保存为pdf格式。 创建目录时,出现以下错误。 错误1: 无法在属性初始化程序中使用实例成员’filemgr’;属性初始化程序在“自我”可用之前运行。 错误2: 预期申报 码: 请协助我解决这个问题。 谢谢。 问题答案: 请使用以下代码: Swift 4.0 和 Swift 3.0

  • 我正在尝试创建一个脚本,以便在动态创建一个新文件夹中执行假脱机操作这是我的代码 并且它给出了无法创建假脱机文件C:\Users\rjen01\Desktop\MAR\21MAR2017\U 1227的错误。csv 这是因为没有文件夹C:\Users\rjen01\Desktop\MAR。所以如何在spool命令中动态创建新文件夹。

  • 由于某些原因,我的位图创建不起作用。我找到一只虫子了吗?当我尝试使用矩阵创建一个新位图时,它说我的宽度和高度必须大于0,这毫无意义。 我知道这看起来好像我没有做过任何研究,我做过,但这没有意义。我已经尝试了很多事情,包括将新宽度和新宽度更改为常量,但它仍然不起作用。如果有帮助的话,这是堆栈跟踪 我正在尝试制作一个旋转门户。我想有一个矩阵平移,旋转和缩放,但我没有得到工作。我决定把译文拿出来,只是做

  • 创建目录 创建目录 源码/* * Copyright (c) 2006-2018, RT-Thread Development Team * * SPDX-License-Identifier: Apache-2.0 * * Change Logs: * Date Author Notes * *//* * 程序清单:创建目录 * * 程序会创建一个操作文件的函数并导出到msh命令列表 * 在函数