【发布时间】:2015-10-21 06:34:31
【问题描述】:
我想知道使用 Cordova 的 Android 应用程序是否可以写入安装它的文件夹。基本上,我需要这个来更新应用程序而无需通过应用商店。
在 iOS 中,资源文件是在沙盒环境中复制的,我无法对其进行写入。在 Android 中呢?
【问题讨论】:
-
你可以在 ios 和 android 上。沙盒意味着你不能在它外面写,但你可以在里面写。您可以搜索内容同步插件,它可以满足您的需求
我想知道使用 Cordova 的 Android 应用程序是否可以写入安装它的文件夹。基本上,我需要这个来更新应用程序而无需通过应用商店。
在 iOS 中,资源文件是在沙盒环境中复制的,我无法对其进行写入。在 Android 中呢?
【问题讨论】:
是的,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();
}
确保您也将权限添加到清单文件中。
【讨论】:
data 文件夹在 Android 中是可写的。但是我想修改app文件夹中的内容。您确定可以写入实际的应用程序文件夹吗?这听起来像是一种安全威胁。