Android應用程序的AFAIK Assets文件夾將在安裝時初始化一次。應用程序打包並安裝後,您無法更新資產文件夾。安裝完成後,如果您對資源進行了任何更改,它將不會反映到您較早安裝的版本。由於Asset文件夾是隻讀的,因此無法寫入或更新其中存在的任何文件。
如果你想更新它,那麼你需要卸載舊版本並安裝新版本:Source。 或者您可以將您的文本放在資源原始文件夾中。 像這樣的東西(txt文件的名稱是「幫助」):
try {
Resources res = getResources();
InputStream in_s = res.openRawResource(R.raw.help);
byte[] b = new byte[in_s.available()];
in_s.read(b);
txtHelp.setText(new String(b));
} catch (Exception e) {
// e.printStackTrace();
txtHelp.setText("Error: can't show help.");
}
是的,基本上你只用刪除現有資產的文件夾:
public void clearApplicationData() {
File cache = getCacheDir();
File appDir = new File(cache.getParent());
if (appDir.exists()) {
String[] children = appDir.list();
for (String s : children) {
if (!s.equals("lib")) {
deleteDir(new File(appDir, s));
Log.i("TAG", "**************** File /data/data/APP_PACKAGE/" + s + " DELETED *******************");
}
}
}
}
public static boolean deleteDir(File dir) {
if (dir != null && dir.isDirectory()) {
String[] children = dir.list();
for (int i = 0; i < children.length; i++) {
boolean success = deleteDir(new File(dir, children[i]));
if (!success) {
return false;
}
}
}
return dir.delete();
}
裏面是什麼資產文件夾? html文件?你的應用程序是一個web應用程序? –
@Randyka。感謝回覆。不,它們是以文本形式存儲的數字數據集。 –