【发布时间】:2017-01-20 16:20:34
【问题描述】:
我有
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
在我的清单中,但尽管如此,我的代码跟踪表明该条件
if (ActivityCompat.checkSelfPermission(this,
android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED &&
ActivityCompat.checkSelfPermission(this,
android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
是true,即不授予这两个权限。
那么如何授予他们呢?
更新
我的应用程序的逻辑假定不请求权限。如果他们被授予,那么它将以一种方式工作,如果他们没有被授予,它会在没有他们的情况下默默地工作。
因此,我需要像安装应用程序并在安装期间授予权限一样授予它们。
更新 2
我怀疑答案在Android Studio 中的Run/Debug configurations 中。
例如,我在调试时在控制台中看到以下行
adb shell pm install -r "MYPATH"
我在这里看到https://developer.android.com/studio/command-line/adb.html#pm 有一个-g 选项说“授予应用清单中列出的所有权限”。
这是我需要自动发生的事情。
【问题讨论】:
标签: android debugging geolocation android-permissions