使用delphi从Android内部存储中读取文件

时间:2015-04-01 19:28:03

标签: android delphi storage internal

是否可以从android / data / data /中的内部存储中读取file.db。 使用android firemonkey应用程序使用delphi而不是java ?,我尝试从内部存储打开文件,但访问被拒绝,即使我的设计是root! 任何帮助将不胜感激。非常感谢。

1 个答案:

答案 0 :(得分:0)

存储在内部存储中的文件对于创建它们的应用程序是私有的。您的应用无法访问其他应用的内部存储文件,除非该应用在创建时明确授予访问权限。 Android文档中明确说明了这一点:

Using the Internal Storage

  

默认情况下,保存到内部存储的文件对您的应用程序是私有的,其他应用程序无法访问它们(用户也不能)。

当应用在内部存储中创建文件时(使用Context.openFileOutput()),它会选择是否使用MODE_PRIVATE权限:

  

默认模式,其中创建的文件只能由调用应用程序(或共享相同用户ID的所有应用程序)访问。

或者是否启用MODE_WORLD_READABLE和/或MODE_WORLD_WRITEABLE权限:

  

允许所有其他应用程序对创建的文件具有读取权限。

  

允许所有其他应用程序对创建的文件具有写访问权限。

如果没有这些权限,您的应用将无法访问到其他应用的文件。另请注意,这些权限在API级别17 中已弃用

  

创建world-(可读写)文件非常危险,可能会在应用程序中造成安全漏洞。强烈劝阻;相反,应用程序应该使用更正式的交互机制,例如ContentProvider,BroadcastReceiver和Service。无法保证此访问模式将保留在文件中,例如在进行备份和还原时。