Android 如何在没有根设备的情况下授予adb shell权限

Android 如何在没有根设备的情况下授予adb shell权限,android,adb,Android,Adb,我正在从命令提示符运行以下命令,同时运行它显示权限被拒绝。有人能解释一下如何授予许可吗 C:\android\tools>adb push asl-native /data/local/asl-native failed to copy 'asl-native' to '/data/local/asl-native': Permission denied 在您的手机上找到一个既可供shell用户写入又没有noexec选项的分区,然后将可执行文件推送到该分区。除非您的手机是根用户并且能够以

我正在从命令提示符运行以下命令,同时运行它显示权限被拒绝。有人能解释一下如何授予许可吗

C:\android\tools>adb push asl-native /data/local/asl-native
failed to copy 'asl-native' to '/data/local/asl-native': Permission denied

在您的手机上找到一个既可供shell用户写入又没有noexec选项的分区,然后将可执行文件推送到该分区。

除非您的手机是根用户并且能够以根用户身份运行adb shell,否则您不允许写入/数据

查看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]的评论: 它也可以用于非根设备。只需将run.bat文件中的所有路径/data/local更改为/data/local/tmp,然后保存并运行它。
我试过了,问题解决了

@dtmilano推送SD卡正在工作,推送后我们必须运行该卡,同时运行相同的消息permissio deniedmost设备使用noexec选项安装SD卡-如果是这种情况,您将无法从该卡运行应用程序这正是adb shell未被授予根访问权限的原因,为了避免在运行此命令时加载和执行具有安全风险的内容,它会显示“任务前拒绝”消息$adb shell/sdcard/asl INTATE/sdcard/asl-INTATE.log&