2012-09-02 6 views
0

이 문제가 발생합니다. 코드에서 아무 이상도 보이지 않지만 getLastKnownLocation은 매번 null을 반환합니다. 어떤 아이디어?Android lastKnownLocation이 null을 반환합니다.

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

     EditText et1 = (EditText) findViewById(R.id.editText1); 

     LocationManager manager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE); 
     Location location = manager.getLastKnownLocation(LocationManager.GPS_PROVIDER); 

     if(location != null) et1.setText((int)location.getLatitude()); 
     else et1.setText("null"); 

    } 
} 

감사

답변

3

getLastKnownLocation() 자주 위치 제공자 (예컨대, GPS)은 최근에 사용되지 않은 경우 특히 null를 반환한다. getLastKnownLocation()은 실제 위치가 인 경우에만 위치가 필요하지만 (있을 수는 있지만) getLastKnownLocation()이 (예 : 위치 업데이트 요청)을 반환하는 경우 다른 기술을 사용할 위치에서만 사용해야합니다.

+0

어떻게 위치를 찾습니까? 나는 OS가 GPS 또는 네트워크 또는 와이파이를 사용하여 현재 위치를 찾을 수있게 할 수있다. –

+0

어떻게 프로그래밍 방식으로 구글 그램 서비스를 켜는가? 이것을 시도했다. http://stackoverflow.com/questions/4721449/enable-gps-programatically- like-tasker/5305835 # 5305835하지만 2.3.3 gingebread에서 필요하지 않습니다. –

+0

@ user2726456 :'requestLocationUpdates()'를 사용하여 위치 업데이트를 요청하십시오. – CommonsWare

관련 문제