Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
GeoPoint无法获取我的当前位置,并抛出java.lang.NullPointerException_Java_Android - Fatal编程技术网

GeoPoint无法获取我的当前位置,并抛出java.lang.NullPointerException

GeoPoint无法获取我的当前位置,并抛出java.lang.NullPointerException,java,android,Java,Android,我试图使用Geopoint访问设备位置,但不幸的是,我在一个空对象引用上抛出了一个错误,即“double android.location.location.getLatitude”,并且已经阅读了很多教程,但我仍然面临这个问题 这是我的密码 抛出的错误 进程:com.aquaapp.gesfasta,PID:23200 java.lang.NullPointerException:尝试对空对象引用调用虚拟方法“double android.location.location.getLatitu

我试图使用Geopoint访问设备位置,但不幸的是,我在一个空对象引用上抛出了一个错误,即“double android.location.location.getLatitude”,并且已经阅读了很多教程,但我仍然面临这个问题

这是我的密码

抛出的错误

进程:com.aquaapp.gesfasta,PID:23200 java.lang.NullPointerException:尝试对空对象引用调用虚拟方法“double android.location.location.getLatitude” 在com.aquaapp.gesfasta.MuuzaMainActivity$1.onCompleteMuuuzamainActivity.java:107 位于com.google.android.gms.tasks.zzj.run未知来源:4 位于android.os.Handler.handleCallbackHandler.java:873 在android.os.Handler.dispatchMessageHandler.java:99 在android.os.Looper.Looper.java:193 在android.app.ActivityThread.mainActivityThread.java:6803 在java.lang.reflect.Method.Invokenactive方法中 位于com.android.internal.os.RuntimeInit$MethodAndArgsCaller.RuntimeInit.java:497 位于com.android.internal.os.ZygoteInit.mainZygoteInit.java:930* getLastLocation可以根据可用性为您提供空值。在这种情况下,您需要调用RequestLocationUpdate并侦听任何新的位置更新

有关这方面的更多信息,请参阅此。
private void getLastKnownLocation() {

        if ( ActivityCompat.checkSelfPermission (this, Manifest.permission.ACCESS_FINE_LOCATION)
                != PackageManager.PERMISSION_GRANTED
                && ActivityCompat.checkSelfPermission (this, Manifest.permission.ACCESS_COARSE_LOCATION)
                != PackageManager.PERMISSION_GRANTED ) {
            return;
        }

        mFusedLocationClient.getLastLocation ().addOnCompleteListener (new OnCompleteListener<Location> () {
            @Override
            public void onComplete(@NonNull Task<Location> task) {

                if ( task.isSuccessful () ) {
                    Location location = task.getResult ();
                    GeoPoint geoPoint = new GeoPoint (location.getLatitude (),location.getLongitude ());
                    Log.d (TAG, "onComplete: latitude"+ geoPoint.getLatitude ());
                    Log.d (TAG, "onComplete: latitude"+ geoPoint.getLongitude ());

                }

            }
        });

    }