【问题标题】:Can a Cordova Android app write in its native source folder?Cordova Android 应用程序可以写入其本机源文件夹吗?
【发布时间】:2015-10-21 06:34:31
【问题描述】:

我想知道使用 Cordova 的 Android 应用程序是否可以写入安装它的文件夹。基本上,我需要这个来更新应用程序而无需通过应用商店。

在 iOS 中,资源文件是在沙盒环境中复制的,我无法对其进行写入。在 Android 中呢?

【问题讨论】:

  • 你可以在 ios 和 android 上。沙盒意味着你不能在它外面写,但你可以在里面写。您可以搜索内容同步插件,它可以满足您的需求

标签: android cordova


【解决方案1】:

是的,cordova 可以写入 app 文件夹或 Android 可以访问的任何文件中,如果您想写入私有的其他文件夹,这是不可能的。

对于cordova,您只需添加一个用于访问存储的插件或为其创建一个自定义插件。

以下是写入应用程序文件夹的代码:

if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
        Log.d("Log", "No sdcard available");
} else {
    File directory = new File(Environment.getExternalStorageDirectory()+File.separator+"ApplicationFolderName");
    directory.mkdirs();
}

确保您也将权限添加到清单文件中。

【讨论】:

  • 谢谢。您的示例代码仅涉及外部存储。内部存储呢?或者就此而言,混合应用在 Android 中的实际位置?
  • 是的,这也可以,cordova 可以使用 android 设备完成所有 android native itslef 可以做到的事情,因此请查看:stackoverflow.com/questions/5766609/…
  • 据我了解,data 文件夹在 Android 中是可写的。但是我想修改app文件夹中的内容。您确定可以写入实际的应用程序文件夹吗?这听起来像是一种安全威胁。
  • 修改内容我不确定但是是的,您可以在您自己的应用程序目录中创建新文件,该目录位于内部存储中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多