Android将zip复制到/data/local

Android将zip复制到/data/local,android,copy,inputstream,boot,Android,Copy,Inputstream,Boot,嗨,我正在开发一个简单的启动动画应用程序,但我猜这是一个权限问题,但我不确定,因为我是新手,但无论如何,这是我的代码。我正在尝试将SD卡上的启动动画复制到/data/local,并将其重命名为bootanimation.zip。我知道代码没有问题,因为如果我复制到SD卡上的另一个文件夹,比如/mnt/sdcard/folder/bootanimation.zip,它会工作,文件会被重命名,但我无法复制到/data/local,我的手机已根目录,但我想我的应用程序需要请求su或者我的清单需要更多权

嗨,我正在开发一个简单的启动动画应用程序,但我猜这是一个权限问题,但我不确定,因为我是新手,但无论如何,这是我的代码。我正在尝试将SD卡上的启动动画复制到/data/local,并将其重命名为bootanimation.zip。我知道代码没有问题,因为如果我复制到SD卡上的另一个文件夹,比如/mnt/sdcard/folder/bootanimation.zip,它会工作,文件会被重命名,但我无法复制到/data/local,我的手机已根目录,但我想我的应用程序需要请求su或者我的清单需要更多权限。任何关于我为什么不能复制到/data/local的解决方案都会大有帮助。谢谢你的帮助

try {
    FileChannel srcChannel = new FileInputStream("/mnt/sdcard/boots/1bootanimation.zip").getChannel();
    FileChannel dstChannel = new FileOutputStream("/data/local/bootanimation.zip").getChannel();
    dstChannel.transferFrom(srcChannel, 0, srcChannel.size());
    srcChannel.close();
    dstChannel.close();
    } catch (IOException e) {
                    }

问题实际上不是装载数据,因为这会自动装载,就像我认为的问题是/data/local上的权限一样。我的应用程序没有权限写入文件夹,一旦我对文件夹进行了chmod,它就可以正常工作了。

您必须将/data/as rw(读写)重新装载为默认的ro(只读)。正常情况下这是可能的,但因为你的手机是可行的。哈,我觉得很愚蠢:)我不认为我需要su来写数据,但这是有道理的哈,喜欢小东西,它会像bash一样(在我使用第一个应用程序之前是一个脚本编写者),那就是mount-o rw,重新安装-t yaffs2/dev/block/mtdblock3/datayeah我认为
exec(“su”)
then
exec(“mount-o rw,remount-t yaffs2/dev/block/mtdblock3/data”)应该可以做到这一点。