Ego*_*gor 6 android android-intent android-location
在我的应用程序中,我正在检查用户设备上是否启用了GPS,如果没有,我想将他发送到设置以让他打开它.
Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivityForResult(intent, LocationHelper.LOCATION_SETTINGS_REQUEST_CODE);
Run Code Online (Sandbox Code Playgroud)
用户关闭"设置"屏幕后,我会在内部执行操作onActivityResult().
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == LocationHelper.LOCATION_SETTINGS_REQUEST_CODE) {
LogUtils.d("onActivityResult from settings");
fetchCurrentLocation();
}
}
Run Code Online (Sandbox Code Playgroud)
但是,onActivityResult()不会被调用.我做错了什么或这种做法一般不起作用?提前致谢.
小智 5
lauch的设定意图:
Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
并在onResume方法中获取当前位置:
public void onResume(){
super.onResume();
if(isGPSEnabled){
fetchCurrentLocation();
}
}
Run Code Online (Sandbox Code Playgroud)
从设置屏幕退回后,您的onResume方法将被调用,在这里您可以获取您的位置.
Jam*_*aaz -2
您是否在清单中定义了 ACCESS_FINE_LOCATION 权限?
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8659 次 |
| 最近记录: |