我在运行时从命令提示符运行以下命令,显示权限被拒绝。谁能解释一下如何授予权限?
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 的运行脚本,您可能可以更改它以将其安装到 scard。我还没有测试它,但它看起来像这样:
# 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 设备。只需将所有路径 /data/local 更改为/data/local/tmp 在 run.bat 文件中,然后保存并运行它。” 我试过了,问题解决了
在您的手机上找到一个既可写(对于shell
用户)又没有noexec
选项的分区,然后将您的可执行文件推送到该分区。