Dim*_*ims 3 debugging android geolocation android-permissions
我有
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
Run Code Online (Sandbox Code Playgroud)
在我的清单中,但是尽管如此,我的代码跟踪还是表明了这种情况
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) {
Run Code Online (Sandbox Code Playgroud)
是true,即未授予两个权限。
那么如何授予他们呢?
更新
我的应用程序的逻辑假定不请求权限。如果被授予,它将以一种方式起作用;如果未被授予,则将在没有它们的情况下默默地起作用。
因此,我需要授予它们就像安装了应用程序一样,并且在安装过程中授予了权限。
更新2
我怀疑答案是什么地方Run/Debug configurations的Android Studio。
例如,调试时我在控制台中看到以下行
adb shell pm install -r "MYPATH"
Run Code Online (Sandbox Code Playgroud)
而且我还在这里https://developer.android.com/studio/command-line/adb.html#pm看到,有一个选项可以-g说“授予应用清单中列出的所有权限”。
这就是我需要自动发生的事情。
| 归档时间: |
|
| 查看次数: |
3188 次 |
| 最近记录: |