我在命令提示符中运行以下命令,但出现了“权限被拒绝”的错误提示。请问有人能够解释如何授予权限吗?
C:\android\tools>adb push asl-native /data/local/asl-native
failed to copy 'asl-native' to '/data/local/asl-native': Permission denied
我在命令提示符中运行以下命令,但出现了“权限被拒绝”的错误提示。请问有人能够解释如何授予权限吗?
C:\android\tools>adb push asl-native /data/local/asl-native
failed to copy 'asl-native' to '/data/local/asl-native': Permission denied
如果你的手机没有root权限并且无法以root身份运行adb shell,那么你将无法写入/data目录。
通过查看asl的运行脚本,你可能可以将其更改为将其安装到sd卡中。我还没有测试过,但它可能类似于这样:
# Install service
echo "Installing native service..."
$adb push ./asl-native /sdcard/asl-native
$adb shell /system/bin/chmod 0777 /sdcard/asl-native
# Start the service
echo "Starting service..."
$adb shell "/sdcard/asl-native /sdcard/asl-native.log" &
echo "Service started successfully."
虽然我不确定您是否被允许运行chmod并使某些内容可执行。您可能需要先在本地计算机上运行chmod 0777。
跟随[ankita](https://code.google.com/p/android-screenshot-library/wiki/UserGuide)的评论: "它也可以在非root设备上工作。只需将run.bat文件中的所有路径/data/local更改为/data/local/tmp,然后保存并运行即可。" 我尝试了一下,问题得到了解决。
在您的手机上找到一个既可写(对于shell
用户),又没有noexec
选项的分区,并将您的可执行文件推送到该分区。