Android 如何在运行时像谷歌地图一样打开谷歌定位服务
如何在运行时像谷歌地图一样打开谷歌定位服务 使用请求权限还是其他方式Android 如何在运行时像谷歌地图一样打开谷歌定位服务,android,google-maps,Android,Google Maps,如何在运行时像谷歌地图一样打开谷歌定位服务 使用请求权限还是其他方式 使用此功能打开GPS定位 private void buildAlertMessageNoGps() { final AlertDialog.Builder builder = new AlertDialog.Builder(context); builder.setMessage("Your GPS seems to be disabled, do you want to enable it?
使用此功能打开GPS定位
private void buildAlertMessageNoGps() {
final AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setMessage("Your GPS seems to be disabled, do you want to enable it?")
.setCancelable(false)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(@SuppressWarnings("unused") final DialogInterface dialog, @SuppressWarnings("unused") final int id) {
startActivity(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS));
dialog.cancel();
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
public void onClick(final DialogInterface dialog, @SuppressWarnings("unused") final int id) {
dialog.cancel();
}
});
final AlertDialog alert = builder.create();
alert.show();
}
你可以使用任何你想使用的信息
编辑:
要直接打开GPS,请使用以下命令:-
LocationRequest locationRequest = LocationRequest.create();
locationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
locationRequest.setInterval(30 * 1000);
locationRequest.setFastestInterval(5 * 1000);
LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder()
.addLocationRequest(locationRequest);
builder.setAlwaysShow(true);
PendingResult<LocationSettingsResult> result =
LocationServices.SettingsApi.checkLocationSettings(googleApiClient, builder.build());
result.setResultCallback(new ResultCallback<LocationSettingsResult>() {
@Override
public void onResult(LocationSettingsResult result) {
final Status status = result.getStatus();
switch (status.getStatusCode()) {
case LocationSettingsStatusCodes.RESOLUTION_REQUIRED:
try {
// Show the dialog by calling startResolutionForResult(),
// and check the result in onActivityResult().
status.startResolutionForResult(
MainActivity.this, 101);
} catch (IntentSender.SendIntentException e) {
// Ignore the error.
}
break;
}
}
});
LocationRequest LocationRequest=LocationRequest.create();
locationRequest.setPriority(locationRequest.PRIORITY\u高精度);
位置请求设置间隔(30*1000);
locationRequest.SetFastTestInterval(5*1000);
LocationSettingsRequest.Builder=新建LocationSettingsRequest.Builder()
.addLocationRequest(locationRequest);
builder.setAlwaysShow(true);
Pendingreult结果=
LocationServices.SettingsApi.checkLocationSettings(GoogleAppClient,builder.build());
result.setResultCallback(新的ResultCallback(){
@凌驾
公共void onResult(位置设置结果){
最终状态状态=result.getStatus();
开关(status.getStatusCode()){
案例位置设置StatusCodes.RESOLUTION_要求:
试一试{
//通过调用startResolutionForResult()显示对话框,
//并在onActivityResult()中检查结果。
status.StartResult解决方案(
主要活动(本,101);
}catch(IntentSender.sendtintentexe){
//忽略错误。
}
打破
}
}
});
非常感谢,但是在本活动中是否有其他方法可以直接打开它,而不需要更改为设置活动