我有一个在没有外部存储(没有 SD 卡)的 Nexus 7 上运行的应用程序。此应用程序将数据保存到 .txt 文件。我正在尝试将此文件上传到一个网站,然后该网站将处理数据。问题是我似乎无法选择要上传的文件,因为设备上的所有文件都是内部存储。
所以我的问题是:有什么方法可以更改内部存储文件的权限?如果没有,有什么方法可以更改我的应用程序(java)以保存文件,以便可以以这种方式上传文件?
我有一个在没有外部存储(没有 SD 卡)的 Nexus 7 上运行的应用程序。此应用程序将数据保存到 .txt 文件。我正在尝试将此文件上传到一个网站,然后该网站将处理数据。问题是我似乎无法选择要上传的文件,因为设备上的所有文件都是内部存储。
所以我的问题是:有什么方法可以更改内部存储文件的权限?如果没有,有什么方法可以更改我的应用程序(java)以保存文件,以便可以以这种方式上传文件?
如果只有这个第三方应用程序保存带有Context.MODE_WORLD_READABLE标志的文件,您可以从您的应用程序中读取此文件并上传。(以及Context.MODE_WORLD_WRITEABLE,此标志自 api 17 以来已弃用)。CommonsBlog上描述了另一种使用 DDMS 从根设备上的内部存储访问任何文件的方法。
如果您从自己的应用程序将文件保存到内部存储中,则您可以完全自由地在任何地方阅读和上传它。要允许设备上的其他应用访问此文件,请在保存文件时使用 Context.MODE_WORLD_READABLE,或者更好地使用 ContentProvider 将文件共享给其他应用。