混乱のAndroidのGPSクラウド!
質問
私は、GPSを利用して私の最初のAndroidアプリケーションを設計しようとしています。今のように、Iがクリック描画可能なボタンを有する、経度と緯度のトーストメッセージを警告します。私は値を養うためののtelnet localhostの5554 を、その後の地理修正#NUMBER番号NUMBER のが、何もありません表示だけ0
0
を使用しようとしました。私はまた、GPS座標を送信するDDMSの方法を試してみましたが、私は同じことを取得します。
私の質問は正確にGEOの修正や座標を送信するDDMSの方法を使用する正しい方法は何かということです。私はLocation
、LocationManger
とLocationListener
を使用しているが、私は正しい選択であることを確認していない。
コードは、エラーコード
で存在する場合、念のために、与えられます。@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button = (Button) findViewById(R.id.track);
button.setOnClickListener(this);
LocationManager location =(LocationManager)getSystemService(Context.LOCATION_SERVICE);
Location loc = location.getLastKnownLocation(location.GPS_PROVIDER);
updateWithNewLocation(loc);
}
private final LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
updateWithNewLocation(location);
}
private void updateWithNewLocation(Location l) {
longitude = l.getLongitude();
latitude = l.getLatitude();
provider = l.getProvider();
}
public void onClick(View v) {
Toast.makeText(this, "Your location is " +
longitude + " and " + latitude + " provided by: " +
provider, Toast.LENGTH_SHORT).show();
}
}
解決
2つのこと
1)を作る緯度と経度揮発性
2)GPSロケーションマネージャのリスナーとして登録してみてください
location.requestLocationUpdates(LocationManager.GPS、100、1、locationListener)。
それはあなたのlocationListenerオブジェクトに送信されたコールバックを取得する必要があります。
あなたはここにいくつかのサンプルAndroidのGPSコードをチェックアウトすることができます: http://www.devx.com/wireless/Article/43005する
(WARNING!DEVX私は、このリンクを追加しましたので、登録着陸を追加しました!)
他のヒント
行をコメント 位置LOC = location.getLastKnownLocation(location.GPS_PROVIDER);
そして、DDMSに手動でGPSを更新することによって、アプリケーションをテスト
それが動作するかどうか、入れて戻ってくるコードに 位置LOC = location.getLastKnownLocation( "GPS");