如何获取旧API版本的运行时权限?

时间:2017-01-02 14:44:27

标签: android

所以我一直试图开始使用简单的GPS应用程序但是在某些时候我需要请求用户对locationManager方法的权限

if (isNetworkEnabled) {
                    locationManager.requestLocationUpdates(
                            locationManager.NETWORK_PROVIDER,
                            MIN_TIME_BW_UPDATES,
                            MIN_DISTANCE_CHANGE_FOR_UPDATES, this);
                if (locationManager != null) {
                    location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
                    if (location != null) {
                        Latitude = location.getLatitude();
                        Longitude = location.getLongitude();
                    } //location
                } //locationManager
            } //isNetworkEnabled

我知道有一种简单的方法可以用于API 23,但我想定位Android 4.0。

我见过关于它的文档(https://developer.android.com/training/permissions/requesting.html),但我不太明白如何将它应用到我的代码中。我知道我应该使用ActivityCompact和ContextCompact,但我不确定如何。请帮忙!

1 个答案:

答案 0 :(得分:4)

正如您所指出的,Android API >= 23添加了新的runtime permissions

对于较旧的API ,系统会提示用户在安装时接受所有

如下图所示

enter image description here

您只需要在manifest中添加它们,而不是其他内容:)