复制系统android 4.4.2中的资产文件

时间:2014-04-25 11:57:01

标签: java android android-activity

我总是使用这种方法(显然使用root和mount系统作为RW)来复制android 4.1.2中/system/etc/init.d文件夹中的资产但是因为我已经切换到kitkat这种方法不再适用。 SELinux被禁用,我没有外部SD卡写入错误。 我在我的设备中制作了一些日志,但我没有收到任何错误,该应用程序获得了正确的SU权限,将系统安装为RW,但它没有复制文件。

// File name, path , file permission, context.
public static void copyAssets(String script,String path,int mode,Context context) {
    AssetManager assetManager = context.getAssets();
    InputStream in = null;
    OutputStream out = null;
    try {
        in = assetManager.open(script);
        File outFile = new File(Environment.getExternalStorageDirectory().getPath(), script);
        out = new FileOutputStream(outFile);
        copyFile(in, out);
        in.close();
        in = null;
        out.flush();
        out.close();
        out = null;
    } catch(IOException e) {
        Log.e("cocoremanager", "Failed to handle: " + script, e);
    }
}

我打电话的时候:

Utils.copyAssets("asset_name", "/system/etc/init.d", 777, getActivity().getApplicationContext());

已解决:忘了在清单中添加WRITE_EXTERNAL_STORAGE权限。

0 个答案:

没有答案