2012-04-06 71 views
2

我正在使用Android 2.3.1項目來使用LocationManager.GPS_PROVIDER獲取當前位置。Android:爲什麼native_start在Android 2.3.1模擬器的startNavigating()中失敗?

這是我的代碼

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    LocationManager locManager = (LocationManager)this.getSystemService(Context.LOCATION_SERVICE); 
    LocationListener locListener = new BTILocationListener(); 

    locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locListener); 
} 

public class BTILocationListener implements LocationListener { 

    @Override 
    public void onLocationChanged(Location loc) { 
     Log.d("BTILocation", "Inside onLocationChanged() ---"); 

     if (loc != null) { 
      double latitude = loc.getLatitude(); 
      double longitude = loc.getLongitude(); 

      String locationstr = "Latitude = " + latitude + " longitude = " +longitude; 

      Log.d("BTILocation", locationstr); 



     } 
    } 

    @Override 
    public void onProviderDisabled(String provider) { 
     Toast.makeText(getApplicationContext(), "GPS Disabled", Toast.LENGTH_SHORT).show(); 
     Log.w("BTILocation", "GPS is Disabled"); 
    } 

    @Override 
    public void onProviderEnabled(String provider) { 
     Toast.makeText(getApplicationContext(), "GPS Enabled", Toast.LENGTH_SHORT).show(); 
     Log.w("BTILocation", "GPS is Enabled"); 
    } 

    @Override 
    public void onStatusChanged(String provider, int status, Bundle extras) { 
     // TODO Auto-generated method stub 

    } 

} 

我使用的權限集 -

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

我用開放的telnet連接

telnet localhost 5544 
geo fix 12 22 

我看到下面的logcat的錯誤 -

E/GpsLocationProvider( 75): native_start failed in startNavigating() 

2.3.1上的onLocationChanged(location loc)返回的位置對象始終爲空。

相同的代碼在Android 2.1和4.0中正常工作。請請幫我解決這個問題,我已經嘗試谷歌搜索,但我無法找到任何地方的解決方案。謝謝!我沒有與Android API級別7兼容的Google API,有誰知道我可以如何下載它?

回答

0

它似乎是平臺2.3已知的問題我使用android SDK管理器爲平臺2.2和2.1下載了Google API。只需檢查過時的複選框即可下載所需的軟件包。

0

我在API級別17中遇到了與4.4.2相同的錯誤。雖然這是零星的,但並不清楚是什麼修復了問題。我沒有重啓模擬器,系統都是常用的東西,沒有任何幫助。

但我打開了另一個模擬器,並修復它們兩個。

+0

這真的很奇怪。 – coredump 2013-05-14 01:13:58

+0

更麻煩 - https://groups.google.com/forum/?fromgroups=#!topic/adt-dev/Z8NKJKyVmts – satyajit 2013-05-14 19:10:08