我对 android 开发非常陌生,正在寻找一种方法来修改 eclipse 中的现有源代码,以便在安装 apk 时,将 xml 文件从 apk 内部复制到外部存储上的特定文件夹中。
有没有办法做到这一点?
我对 android 开发非常陌生,正在寻找一种方法来修改 eclipse 中的现有源代码,以便在安装 apk 时,将 xml 文件从 apk 内部复制到外部存储上的特定文件夹中。
有没有办法做到这一点?
在此处查看问题和答案... Android:如何在 SD 卡上创建目录并将文件从 /res/raw 复制到其中?
编辑:考虑一下,我使用 /assets 文件夹而不是 /res/raw。这大概就是我做的...
首先在您的外部存储(通常是 SD 卡)上获取一个有效文件夹...
File myFilesDir = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/Android/data/com.mycompany.myApp/files");
com.mycompany.myApp
将上面的路径替换为您的应用程序包名称。
然后下面将从assets文件夹中复制所有文件名以“xyz”开头的文件,例如xyz123.txt、xyz456.xml等。
try {
AssetManager am = getAssets();
String[] list = am.list("");
for (String s:list) {
if (s.startsWith("xyz")) {
Log.d(TAG, "Copying asset file " + s);
InputStream inStream = am.open(s);
int size = inStream.available();
byte[] buffer = new byte[size];
inStream.read(buffer);
inStream.close();
FileOutputStream fos = new FileOutputStream(myFilesDir + "/" + s);
fos.write(buffer);
fos.close();
}
}
}
catch (Exception e) {
// Better to handle specific exceptions such as IOException etc
// as this is just a catch-all
}
请注意,您需要在 AndroidManifest.xml 文件中获得以下权限...
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />