Android 创建的“我的应用”文件夹在内部或SD内存中均不可见

Android 创建的“我的应用”文件夹在内部或SD内存中均不可见,android,directory,Android,Directory,我是Android新手,正在构建一个需要将数据保存到文本文件中的应用程序。我希望在内部存储(/Storage/emulated/0/)下创建与WhatsApp完全相同的应用程序文件夹。我知道如何创建文件以生成目录的解决方案。我的调试控制台还显示了创建的目录,但我无法通过Filemanager或通过USB连接到PC。当我尝试在sdcard path中保存时,情况也是如此。我的手机没有根(虽然尝试过但没有成功)。如果只允许在手机上设置根目录,我的问题是,尽管我的手机没有设置根目录,但如何在内部存储中

我是Android新手,正在构建一个需要将数据保存到文本文件中的应用程序。我希望在内部存储(/Storage/emulated/0/)下创建与WhatsApp完全相同的应用程序文件夹。我知道如何创建文件以生成目录的解决方案。我的调试控制台还显示了创建的目录,但我无法通过Filemanager或通过USB连接到PC。当我尝试在sdcard path中保存时,情况也是如此。我的手机没有根(虽然尝试过但没有成功)。如果只允许在手机上设置根目录,我的问题是,尽管我的手机没有设置根目录,但如何在内部存储中同时看到WhatsApp文件夹。我想看到我的文件夹是可见的,就像我可以看到WhatsApp文件夹一样

这是我的代码和连接USB到PC的屏幕截图:

  File root = Environment.getExternalStorageDirectory();
    File mydirectory=new File(root + "/Test");
        if (root.canWrite()) {
            if(!mydirectory.exists()) {
                mydirectory.mkdirs(); //directory is created;
                Log.d("created the directory",mydirectory.toString()+"");
            }

            mydirectory.setExecutable(true);
            mydirectory.setReadable(true);
            mydirectory.setWritable(true);


            MediaScannerConnection.scanFile(getContext(), new String[] {mydirectory.toString()}, null, null);

            Intent mediaScannerIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
            Uri fileContentUri = Uri.fromFile(mydirectory); 
            mediaScannerIntent.setData(fileContentUri);
            getContext().sendBroadcast(mediaScannerIntent); 
        }


AndroidManifest File:


<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

Version details-
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
    applicationId "com.example.saisureshc.gridlayouttest"
    minSdkVersion 15
    targetSdkVersion 25
    versionCode 1
    versionName "1.0"
File root=Environment.getExternalStorageDirectory();
File mydirectory=新文件(root+“/Test”);
if(root.canWrite()){
如果(!mydirectory.exists()){
mydirectory.mkdirs();//创建目录;
Log.d(“创建了目录”,mydirectory.toString()+);
}
mydirectory.setExecutable(true);
setReadable(true);
mydirectory.setWritable(true);
MediaScannerConnection.scanFile(getContext(),新字符串[]{mydirectory.toString()},null,null);
Intent mediaScannerIntent=新的Intent(Intent.ACTION\u MEDIA\u SCANNER\u SCAN\u文件);
urifilecontenturi=Uri.fromFile(mydirectory);
mediaScannerIntent.setData(fileContentUri);
getContext().sendBroadcast(mediaScannerIntent);
}
AndroidManifest文件:
版本详细信息-
安卓{
编译DK25版
buildToolsVersion“25.0.2”
默认配置{
applicationId“com.example.saisureshc.gridlayouttest”
第15版
targetSdkVersion 25
版本代码1
版本名称“1.0”

调试控制台:

D/创建目录:/storage/emulated/0/Test


根据“user7486817”添加代码后附加屏幕截图


但是我看到创建的文件夹看起来不像一个文件夹

你有
android.permission.写内部存储
,但你需要
android.permission.写外部存储
写外部存储

你有
android.permission.写内部存储
,但你需要
android.permission.写外部存储RAGE
写入外部存储

非常感谢您提供的输入。我包括了前面提到的外部存储的写入权限。我看到创建了一个文件,但它不是文件夹类型。我不能将其视为文件夹。让我在主PostKdir添加它的屏幕截图。mkdir和mkdir不同,mkdir应该可以工作,但请尝试mkdir。再次感谢在中,我尝试使用mkdir()和mkdirs(),但仍然是相同的。附加屏幕快照新文件(root+“/Test/”)添加另一个/并使用结果回复。我尝试使用结尾斜杠使用mkdir()和mkdirs()。不幸的是,仍然是一样的。非常感谢您提供的输入。我包括了对外部存储的写入权限,如前所述。我看到创建了一个文件,但它不是文件夹类型。我不能将其视为文件夹。让我在主PostKdir添加它的屏幕截图。mkdir和mkdirs不同,mkdirs应该可以工作,但请尝试mkdir。再次感谢。我尝试了w同时使用mkdir()和mkdirs(),但仍然相同。附加屏幕快照新文件(root+“/Test/”),添加另一个/并使用结果进行回复。我尝试使用结尾斜杠使用mkdir()和mkdirs()。不幸的是,仍然相同。