Google Fused Location API 导致错误(Android)

Posted

技术标签:

【中文标题】Google Fused Location API 导致错误(Android)【英文标题】:Google Fused Location API causing error (Android) 【发布时间】:2018-01-15 14:19:22 【问题描述】:

我正在使用 google play 服务的位置 api,但在某些手机中出现错误。错误是

异常 java.lang.NullPointerException:尝试调用虚拟 方法'com.google.android.gms.c.d com.google.android.gms.location.b.g()' 在空对象引用上

但它的工作正常我的手机。我在firebase上遇到了上述错误。

从 android 开发者文档中我实现如下: 在 oncreate 中初始化

 mFusedLocationClient = LocationServices.getFusedLocationProviderClient(getActivity());

在初始化后调用函数

private void callFusedLocation() 

        if (ActivityCompat.checkSelfPermission(getContext(), Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) //if permission not granted then
            mFusedLocationClient.getLastLocation().addOnSuccessListener(getActivity(), new OnSuccessListener<Location>() 
                @Override
                public void onSuccess(Location location) 
                    // Got last known location. In some rare situations this can be null.
                    if (location != null) 
                        Log.e("fusedLocation "," "+ location.getLatitude()+" "+ location.getLongitude());
                       locationReceived(location);
                    
                
            );
        

     

所以请帮助我,为什么我在某些设备上遇到错误?

【问题讨论】:

与有能力的程序员一起进行代码审查 使用 firebase testlab.firebase.google.com/docs/test-lab 这似乎已被编辑为与原来完全不同的问题。将其作为一个新问题提出可能会更好,而不是试图从 [ON HOLD] 队列中挖掘出这个问题? 【参考方案1】:

在你的代码中尝试捕获,并给每个人一个错误消息,这样当错误报告来到firebase时,你可以找到错误在哪里。

【讨论】:

【参考方案2】:

您可能可以访问https://device.pcloudy.com 并测试您的应用。它可能会帮助您调试错误

【讨论】:

以上是关于Google Fused Location API 导致错误(Android)的主要内容,如果未能解决你的问题,请参考以下文章

Android:使用 Fused Location Provider 检查是不是启用了位置服务

Fused Location API 在地图中绘制时会给出不准确的纬度和长度,即使对于低准确度值,它也会稍微远离道路路径

来自 Google Play Services Fused Location Provider 的海拔高度

Android:关闭位置时,Google Fused Location 不起作用

使用 Fused Location API,Marshmallow 不会使用 location.getSpeed()

Android - Google Maps V2 无法使用 Fused Location