0
ユーザーの場所(自分の場所)を取得する際に問題があります。私のコードはAndroidでユーザーの場所を表示
double lat;
double lng;
LocationManager locationManager;
String context = Context.LOCATION_SERVICE;
locationManager = (LocationManager)getSystemService(context);
String provider = LocationManager.GPS_PROVIDER;
Location location = locationManager.getLastKnownLocation(provider);
if(!locationManager.isProviderEnabled(provider)){
locationManager.setTestProviderEnabled(provider, true);
}
boolean enabled = locationManager.isProviderEnabled(provider);
if(enabled){
Toast.makeText(LoginActivity.this,"provider enabled",Toast.LENGTH_LONG).show();
}
else{
Toast.makeText(LoginActivity.this,"provider disabled",Toast.LENGTH_LONG).show();
}
if(location!=null){
lat = location.getLatitude();
lng = location.getLongitude();
AlertDialog.Builder ab=new AlertDialog.Builder(LoginActivity.this);
ab.setMessage(Html.fromHtml("<b><font color=#ff0000>Location" +"</font></b><br>"
+location.toString()+"<br>Latitude: "+lat
+"<br>Longitude "+lng));
ab.setPositiveButton("ok",null);
Toast.makeText(LoginActivity.this,"You are at "+location.toString(),Toast.LENGTH_LONG).show();
}
else{
Toast.makeText(LoginActivity.this,"Location not found",Toast.LENGTH_LONG).show();
}
である私の問題は、アプリケーション・メッセージ・プロバイダーが有効になっている間、私はnull
としての位置を取得しています。このコードでは問題は見つかりませんでした。私もデバイスでそれをテストしました、それはプロバイダが有効であり、場所が見つからないことを示しています。
私はクラス内にロケーションリスナーを実装していません。 自分のクラスにロケーションリスナーを実装する必要がありますか?
あなたのヒントのためのPichありがとう私は私のコードで位置のリスナーを追加して、それはうまく動作し、位置を示すが、私はエミュレータで動作しません。私はあなたの場所のListnerがデバイス上で正常に動作するときAVDはシャットダウンを取得 –
あなたはようこそ。受け入れられた答えをマークすることを忘れないでください。さもなければ、質問は答えられないままになります。 –