2

パッケージcom.demo.location;

import android.app.Activity;
import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;

public class MyLocation  extends Activity
{
    LocationManager mlocManager;
    LocationListener mlocListener;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);


        /* Use the LocationManager class to obtain GPS locations */
        mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);

        mlocListener = new MyLocationListener();
        mlocManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener);
    }

    /* Class My Location Listener */
    public class MyLocationListener implements LocationListener
    {

        //@Override
        public void onLocationChanged(Location loc)
        {
            Log.e("","HERE It IS");
            loc.getLatitude();
            loc.getLongitude();

            Log.e("","LAT"+loc.getLatitude());
            Log.e("","LONG"+loc.getLongitude());
            String Text = "My current location is: " +
            "Latitud = " + loc.getLatitude() +
            "Longitud = " + loc.getLongitude();

            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)
        {

        }
    }
}



Manifest File

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

ユーザーがいる正確な場所が必要です。このアプリケーションを実行すると、エミュレーターとデバイスから何も取得されません...(Samsung Galaxy GT S5360)。また、lat&longが必要であり、それをパラメーターとして他のメソッドに渡す必要があるため、他のソリューションもありがたいです。

よろしく、

4

1 に答える 1

2

使用する

locManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener);

isteadof

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

私の場合、それは私にとって役に立ちます。

次の権限も追加してください。

android.permission.INTERNET
android.permission.ACCESS_COARSE_LOCATION
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_MOCK_LOCATION
于 2012-07-26T07:19:26.943 に答える