【问题标题】:To read a file from one gaming application(in C++) to my android app从一个游戏应用程序(在 C++ 中)读取文件到我的 android 应用程序
【发布时间】:2017-07-27 17:38:07
【问题描述】:

我想从我的 android 应用程序读取另一个目录中的文本文件,即 Games Directory(/sdcard/Android/data/game_package_name/files)。

有什么办法吗,如果有,请指教。

注意:这是针对生产级应用程序,因此请避免使用任何特定于 root 的功能。

【问题讨论】:

    标签: java android c++ unity3d android-api-levels


    【解决方案1】:

    基本上,你cannot access another application's sandbox。 但是,如果您可以修改其他应用程序,则可以使用ContentProvider 或类似的共享解决方案来提供从其他应用程序访问此特定文件的权限。

    将共享文件存储在共享文件夹中

    由于您想从不同的应用程序访问文件,而其中一个应用程序的沙箱将无法从另一个应用程序访问,您应该将文件写入两个都可以访问的目录中,例如:

    String fileName = Environment.getExternalStorageDirectory().getPath() + "myFolderForBothApplications/myFileNameForBothApplications.txt";
    

    使用内容提供者

    如果您希望将文件保留为一个应用程序的一部分,您仍然可以通过 ContentProvider 公开信息。 在其中,覆盖public ParcelFileDescriptor openFile(Uri uri, String mode) 方法,而在其他应用程序中,只需使用方法getContentResolver().openInputStream(...)

    这里有一些相关主题的链接,我无耻地复制/粘贴了代码:

    【讨论】:

      猜你喜欢
      • 2014-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-30
      • 2022-08-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多