我有這一點的代碼;爲什麼這個工作在Android 1.5而不是1.6(位置管理器)
lm = (LocationManager)
getSystemService(Context.LOCATION_SERVICE);
gpslocation = Double.toString(lm.getLastKnownLocation("gps").getLatitude()) +" "
+ Double.toString(lm.getLastKnownLocation("gps").getLongitude());
這兩個模擬器和我的英雄運行Android 1.5系統工作正常,但它強制關閉在1.6的模擬器,也對我的紋身。
什麼由1.5改爲1.6?
好的,用這個代替;
lm = (LocationManager)
getSystemService(Context.LOCATION_SERVICE);
Double latPoint = null;
Double lngPoint = null;
Location loc = lm.getLastKnownLocation("gps");
if(loc != null) {
latPoint = lm.getLastKnownLocation("gps").getLatitude();
lngPoint = lm.getLastKnownLocation("gps").getLongitude();
} else {
}
Toast.makeText(getBaseContext(),"test lat " + latPoint, Toast.LENGTH_LONG).show();
如果我在運行應用程序之前在模擬器上觸發位置,我會得到空烤麪包和空烤麪包。
錯誤是一個java lang空指針錯誤,所以我想它是返回null。我在另一個班上有一個位置監聽器,但在這裏我只想知道最後一個已知位置。什麼從1.5改變到1.6使這不起作用? – Mark