11

Intent.ACTION_OPEN_DOCUMENT_TREE用来授予我的应用程序对外部存储的写访问权限(在 Lollipop 和 Marshmallow 上)。

但我想在测试应用程序中写入外部存储。Intent.ACTION_OPEN_DOCUMENT_TREE使用系统对话框,因此我无法在测试期间授予权限。我还尝试在应用程序中允许它,然后在测试中使用它,但它不是共享的 - 应用程序项目和测试项目是不同的包。

有人知道一些解决方法,例如授予整个外部存储的权限以进行测试吗?也许通过改变一些系统属性?

adb shell setprop SOMEPROPERTY 1

4

2 回答 2

-1

您可以尝试使用此命令授予和撤销权限

adb pm grant com.package.myapp android.permission.<PERMISSION>
adb pm revoke com.package.myapp android.permission.<PERMISSION>

读/写外部存储的权限是

android.permission.WRITE_EXTERNAL_STORAGE
android.permission.READ_EXTERNAL_STORAGE

这是解释它的视频链接:Android 6.0 Marshmallow 中的运行时权限(Android 开发模式第 3 集)

于 2015-09-29T08:27:28.293 回答
-1

作为一种解决方法,您可以使用adb shell input keyevent来检查授予权限复选框。

用法:

   adb shell input [text|keyevent]
   adb shell input text <string>
   adb shell input keyevent <event_code>

您可以在此处找到更多详细信息。

于 2015-09-29T08:37:58.897 回答