当前位置: 首页 > 面试题库 >

安装Android应用程序后如何在内部存储器上创建目录?

祁通
2023-03-14
问题内容

我想拥有一个文件夹,将所有需要的资源放在这里,并将其放在内部存储中。由于我只希望创建此目录一次,因此我发现应该在应用程序的主要活动中创建它:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    File directory = context.getDir("mydir", Context.MODE_PRIVATE);
    Log.d("directory", directory.getAbsolutePath().toString());
}

似乎可以,因为这是我可以在Internet上找到的,但是我收到了很多错误消息,可以进入目录路径的日志,并且应用程序无法启动。知道为什么吗?

另外,如果每次从Eclipse运行我的应用程序到手机时都使用内部存储,它是否会自动删除前一个存储及其资源,还是我必须手动执行?


问题答案:

使用getCacheDir()。它返回文件系统上应用程序特定的缓存目录的绝对路径。然后您可以创建目录

File myDir = new File(getCacheDir(), "folder");
myDir.mkdir();


 类似资料:
  • 最近我更新了我的智能手机到Android11,我注意到我的一个应用程序在创建外部存储目录时崩溃了。我读过Android11文档,这里是。很奇怪,因为当我打开Android/Data dir时,有很多应用程序文件夹,所以有可能这样做,或者有应用程序在更新之前创建的文件夹?

  • 我使用jpack打包了我的java应用程序。当我使用打包的安装程序安装它时,安装后的目录始终是

  • 问题内容: 我正在将中型Java应用程序的构建从Ant迁移到Maven。我可以轻松迁移基本的构建内容,但是我也想从Maven构建中创建安装程序包。最简单的方法是通过Ant插件调用原始的Ant脚本,但我想也许我应该先看看Maven的支持。 我需要为不同的平台创建几个不同的安装程序: Windows 32/64位 Linux 32/64位 MacOS 32/64位 现在对于Linux,我认为我们只有一

  • 众所周知,谷歌颠覆了Android11的授权概念,并彻底改变了它。 我看了Android留档丛林,但没有找到答案的问题是否仍然可以在外部存储(名为 /storage/emulated/0/)的根目录中创建一个文件夹。如果是,如何? 我的应用在Android上写 临时解决办法可以是这样的: 但这并不理想。如果用户从Android10切换到Android11,那么就有一个大问题。我需要什么额外的代码才

  • 我在牛轧糖上开发了一个应用程序,可以在外部存储中创建一个目录。 我以前是这样做的: 此代码似乎不适用于API 26(Android Oreo)。该目录未创建。 我如何才能实现同样的目标,最好是在API 21到API 26的所有android版本上都能实现?