2011-07-04 14 views
1

LocationManager mlocManager =(LocationManager)getSystemService(Context.LOCATION_SERVICE);NETWORK_PROVIDERからGPS座標を取得できません。

LocationListener mlocListener = new MyLocationListener(); 

    mlocManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, mlocListener); 

    //init(); 

} 

/* Class My Location Listener */ 

public class MyLocationListener implements LocationListener 

{ 

@Override 

public void onLocationChanged(Location loc) 

{ 

    //_pd.dismiss(); 

loc.getLatitude(); 

loc.getLongitude(); 

String Text = "My current location is: " +"Latitud = " + loc.getLatitude() +"Longitud =" + loc.getLongitude(); 
txtInfo.setText(Text); 

Toast.makeText(getApplicationContext(),Text,Toast.LENGTH_SHORT).show(); 

} 

@Override 

public void onProviderDisabled(String provider) 

{ 

Toast.makeText(getApplicationContext(),"Gps Disabled",Toast.LENGTH_SHORT).show(); 

} 

@Override 

public void onProviderEnabled(String provider) 

{ 

Toast.makeText(getApplicationContext(),"Gps Enabled",Toast.LENGTH_SHORT).show(); 

} 

@Override 

public void onStatusChanged(String provider, int status, Bundle extras) 

{ 

} 
} 

これは私のコードです。私はgpsの座標を取得し、時々私はなぜそれが起こっていないのですか?

答えて

0

GPSを使用して地理情報を取得するには時間がかかるため、地理座標を信頼できる方法で取得するには、Wi-FiネットワークプロバイダとGPSを切り替える必要があります。ワイヤレスネットワークを最初にポーリングし、有効にされていないか利用可能でない場合は、GPSプロバイダーにフォールバックすることをお勧めします。

良い参考:いくつかの場所は、Androidで緯度と経度を示していないので、Android-location-providers-gps-network-passive

0

です。これは大きな問題ではありません。ちょうどあなたのlatとlngがヌルかどうかをチェックしてください。 nullを返す場合は、単純なメッセージを表示します。この場所にはlatとlngはありません。

+0

あなたのコードは絶対に上手です。 – user824330

関連する問題