【问题标题】:SettingsApi deprecated [duplicate]不推荐使用 SettingsApi [重复]
【发布时间】:2018-05-09 10:21:29
【问题描述】:

直到上次更新我使用了下一个代码:

mGoogleApiClient = new GoogleApiClient.Builder(this)
                .addConnectionCallbacks(this)
                .addOnConnectionFailedListener(this)
                .addApi(LocationServices.API)
                .build();
        mLocationRequest = new LocationRequest();
        mLocationRequest.setInterval(UPDATE_INTERVAL_IN_MILLISECONDS);
        mLocationRequest.setFastestInterval(FASTEST_UPDATE_INTERVAL_IN_MILLISECONDS);
        mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
        LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder();
        builder.addLocationRequest(mLocationRequest);
        builder.setAlwaysShow(true);
        mLocationSettingsRequest = builder.build();

        PendingResult<LocationSettingsResult> result =
                LocationServices.SettingsApi.checkLocationSettings(
                        mGoogleApiClient,
                        mLocationSettingsRequest
                );
        result.setResultCallback(this);

不幸的是,在更新了一条警告消息后,LocationServices.SettingsApi 已被弃用。如何更改我的代码以适应新的更新?

【问题讨论】:

    标签: android gps location client


    【解决方案1】:

    SettingsApi 接口已弃用。您应该改用 基于 GoogleApi 的 API SettingsClient

    公共类 SettingsClient 扩展 谷歌API

    此 API 可让应用轻松确保设备的系统设置已根据应用的位置需求正确配置。

        LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder();
        builder.addLocationRequest(mLocationRequest); // mLocationRequest is a Object of LocationRequest
        LocationSettingsRequest locationSettingsRequest = builder.build();
    
        SettingsClient settingsClient = LocationServices.getSettingsClient(this);
        settingsClient.checkLocationSettings(locationSettingsRequest);
    

    【讨论】:

    猜你喜欢
    • 2012-11-14
    • 2015-07-05
    • 1970-01-01
    • 2015-10-28
    • 2020-05-26
    • 1970-01-01
    • 2014-09-18
    • 2020-09-13
    相关资源
    最近更新 更多