gpt4 book ai didi

android - 如何访问外部和内部存储?

转载 作者:行者123 更新时间:2023-11-29 16:16:40 31 4
gpt4 key购买 nike

我实际上想访问android系统上的文件。我设法读取了android外部存储中的文件和目录。我的问题是:

  1. 如何访问内部存储的目录和文件(特别是视频,图片是在 android 中运行的所有应用程序)。
  2. 安装在内部存储器中的每个应用程序的数据存储在哪里?
  3. 是否可以传输存在于内部存储中的数据(从内部存储器到外部存储?
  4. 我听说外部存储是全局可读的?这是什么意思?(如果创建一个应用程序,那么这个应用程序可以访问安装在外部存储中的所有文件?)

最佳答案

默认情况下,一个应用无法访问另一个应用存储的数据。权限应用于内部存储,使应用程序写入的数据无法在该应用程序外部访问(您的应用程序无法读取其他应用程序写入的任何内容)。这可以更改,应用程序可以为其自己的数据指定不同的权限;基本上,一个应用程序可以允许其他人读取它的数据。但是,如果某个应用程序未专门设置其权限以允许此操作,则其他应用程序无法访问其数据。这是 Android 安全/隔离模型的基本原则,并在 Linux/内核级别完成,因为每个应用程序都在其自己的 Linux UID 下运行,并且在文件系统中设置权限,仅允许该 UID 访问应用程序的目录结构(组默认情况下,世界权限设置为 0)。

如果您有权访问设备上的 root 权限(已获得 root 权限的手机和您的应用程序以 root 权限运行),这一切都会消失,但我们应该认为这超出了您的问题范围。

外部(SD 卡)存储的不同之处在于它被认为是免费的,并且在那里不应用权限(这最初是由于 SD 中通常使用的文件系统不支持权限)。任何应用通常都可以读取任何其他应用写入 SD 卡的任何内容,除非原始应用采取措施保护它(加密等)。

这一切都在 Application Security for the Android Platform 中进行了非常详细的解释。 ,刚刚由 O'Reilly 出版。

关于android - 如何访问外部和内部存储?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8851788/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com