首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在安卓系统中使用FusedLocationApi获取定位模式

如何在安卓系统中使用FusedLocationApi获取定位模式
EN

Stack Overflow用户
提问于 2016-01-05 14:19:57
回答 2查看 59关注 0票数 0

我使用以下代码来获取用户的位置。

代码语言:javascript
运行
复制
LocationServices.FusedLocationApi.getLastLocation(
                mGoogleApiClient);

这将返回一个android.location.Location对象,并且我可以成功地获取纬度和经度。然而,当我尝试获取模式时,它给了我“融合”。

而我想知道获取位置的方式是使用GPS还是网络。

EN

回答 2

Stack Overflow用户

发布于 2016-01-05 14:28:32

如果您想检查gps和网络提供商使用以下代码。我不认为使用融合api,我们能够区分它

代码语言:javascript
运行
复制
public Location getLocation() {
    try {
        locationManager = (LocationManager) context.getSystemService(LOCATION_SERVICE);

        isGPSEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);

        isNetworkEnabled = locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);

        if(!isGPSEnabled && !isNetworkEnabled) {

        } else {
            this.canGetLocation = true;

            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();
                    }
                }

            }

            if(isGPSEnabled) {
                if(location == null) {
                    locationManager.requestLocationUpdates(
                            LocationManager.GPS_PROVIDER,
                            MIN_TIME_BW_UPDATES,
                            MIN_DISTANCE_CHANGE_FOR_UPDATES, this);
                    if(locationManager != null) {
                        location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);

                        if(location != null) {
                            latitude = location.getLatitude();
                            longitude = location.getLongitude();
                        }
                    }
                }
            }
        }
票数 0
EN

Stack Overflow用户

发布于 2016-01-05 14:57:40

您可以确定使用的准确性。如果精度很高,则来自GPS。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34605362

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档