所以我試圖做一個地圖活動,顯示我的當前位置在吐司的經度和緯度,但是我得到一個Null object reference
即使對象是在我引用它之前實例化了一行。上面在創建時聲明瞭currentLocation
。Android地圖活動空對象引用,但我不明白爲什麼
錯誤信息點的代碼第二/倒數第三行:
java.lang.NullPointerException: Attempt to read from field 'java.lang.String android.location.Location.mProvider' on a null object reference
相關代碼:
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
//Initialize Google Play Services
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (ContextCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_FINE_LOCATION)
== PackageManager.PERMISSION_GRANTED) {
buildGoogleApiClient();
mMap.setMyLocationEnabled(true);
}
} else {
buildGoogleApiClient();
mMap.setMyLocationEnabled(true);
}
currentLocation = new Location(LocationServices.FusedLocationApi.getLastLocation(
mGoogleApiClient));
Toast.makeText(this, currentLocation.toString(), Toast.LENGTH_LONG).show();
}
根據文件:「如果一個位置不可用,這應該很少發生,null將返回「 – Eselfar