簡體   English   中英

Android - 嘗試在模擬器上測試GPS時出錯

[英]Android - error when try to test GPS on Emulator

我想測試一下在android上使用GPS的簡單簡介。 所以我寫一個這樣的簡單代碼:

public class main extends Activity{
LocationManager mLocationManager;
TextView tv;
public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    tv = (TextView)findViewById(R.id.myLocationText);
    mLocationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);

    Criteria criteria = new Criteria();
    criteria.setAccuracy(Criteria.ACCURACY_FINE);
    criteria.setPowerRequirement(Criteria.POWER_LOW);
    String locationprovider = mLocationManager.getBestProvider(criteria, true);
    Location mLocation = mLocationManager.getLastKnownLocation(locationprovider);

    tv.setText("Last location lat:" + mLocation.getLatitude() + "long:" + mLocation.getLongitude());
}

}

另外,在AndroidManifest上我添加了use-permission,如下所示:

    <uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

但是當我嘗試在Android模擬器上運行時,我得到錯誤“意外停止”並關閉此應用程序。 我也加入了DDMS的嘗試。 但我對這個錯誤一無所知。

我在實際設備中也遇到過類似的問題。 聽眾接收新位置的頻率太高,無法更新我的TextViev。 我通過一些同步解決了它,如果當時正在刷新,則跳過View刷新。

在你的情況下,因為你沒有使用監聽器,我會檢查NullPointerExceptions

您可能沒有將Android API用於Android模擬器,這就是為什么您無法訪問GoogleMapAPı並遭遇類似崩潰的原因。

有關設置模擬器以使用地圖的詳細信息,請查看此信息。

http://code.google.com/android/add-ons/google-apis/maps-overview.html

這是因為您從模擬器中使用它並且它沒有任何與gps相關的硬件。

這是一個解決方案

要從命令行發送模擬位置數據:

在Android模擬器中啟動您的應用程序,並在SDK的/ tools目錄中打開終端/控制台。 連接到模擬器控制台:

telnet localhost <console-port>

發送位置數據:geo fix以發送固定的地理位置。 此命令接受十進制度的經度和緯度,以及米的可選高度。 例如:

geo fix -121.45356 46.51119 4392

geo nmea發送NMEA 0183句子。 此命令接受單個“$ GPGGA”類型的NMEA語句(修復數據)或“$ GPRMC”(傳輸數據)。 例如:

geo nmea $GPRMC,081836,A,3751.65,S,14507.36,E,000.0,360.0,130998,011.3,E*62

來源: http//developer.android.com/guide/topics/location/obtaining-user-location.html

另請參閱此鏈接: http//developer.android.com/guide/developing/devices/emulator.html#console

這是一個API KEY問題。 你可以嘗試申請一個新的API KEY在谷歌地圖API密鑰。
您的代碼是正確的,沒有顯示任何錯誤。

也許這個答案可以幫助您解決問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM