Android GPS 상세 설명 및 예시 코드
그러면 우 리 는 현재 위 치 를 가 져 오 는 기능 을 실현 하기 위해 간단 한 프로그램 을 작성 합 니 다.
1,새 항목 Lesson 26GPSLocation
2.MainActivity.java 의 코드 는 다음 과 같 습 니 다.
package basic.android.lesson26;
import android.app.Activity;
import android.content.Context;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity {
TextView tv1;
Location location;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// UI
Button b1 = (Button) findViewById(R.id.button1);
tv1 = (TextView) findViewById(R.id.textView1);
// LocationManager
LocationManager lm = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
// Criteria
Criteria criteria = new Criteria();
// Criteria.ACCURACY_COARSE , Criteria.ACCURACY_FINE
criteria.setAccuracy(Criteria.ACCURACY_FINE);
// Altitude
criteria.setAltitudeRequired(true);
// Bearing
criteria.setBearingRequired(true);
//
criteria.setCostAllowed(true);
//
criteria.setPowerRequirement(Criteria.POWER_LOW);
// GPS
String bestProvider = lm.getBestProvider(criteria, true);
Log.i("yao", "bestProvider = " + bestProvider);
//
location = lm.getLastKnownLocation(bestProvider);
//
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
updateLocation(location);
}
});
//
LocationListener locationListener = new LocationListener() {
//
@Override
public void onLocationChanged(Location location) {
Log.i("yao", location.toString());
updateLocation(location);
}
// Provider
@Override
public void onProviderDisabled(String arg0) {
Log.i("yao", arg0);
}
// Provider
@Override
public void onProviderEnabled(String arg0) {
Log.i("yao", arg0);
}
// Provider
@Override
public void onStatusChanged(String arg0, int arg1, Bundle arg2) {
Log.i("yao", "onStatusChanged");
}
};
// 500 ,
lm.requestLocationUpdates(bestProvider, 500, 0, locationListener);
}
//
private void updateLocation(Location location) {
if (location != null) {
tv1.setText(" :" + location.toString() + "
\t :" + location.getLongitude() + "
\t :"
+ location.getLatitude());
} else {
Log.i("yao", " Location");
}
}
}
3.main.xml 코드 를 붙 이지 않 겠 습 니 다.버튼 하나 와 텍스트 상자 만 있 습 니 다.잠시 후에 캡 처 를 보면 알 수 있 습 니 다.4、AndroidManifest.xml 에 권한 을 추가 해 야 합 니 다:
<!-- -->
<uses -permission="" android:name="android.permission.ACCESS_COARSE_LOCATION"></uses>
<!-- -->
<uses -permission="" android:name="android.permission.ACCESS_FINE_LOCATION"></uses>
<!-- -->
<uses -permission="" android:name="android.permission.ACCESS_MOCK_LOCATION"></uses>
<!-- -->
<uses -permission="" android:name="android.permission.INTERNET"></uses>
5.실제 컴퓨터 에서 실행 프로그램 을 컴 파일 하고 결 과 를 봅 니 다.여기 서 설명 하 자 면 제 가 시 뮬 레이 터 에 시 뮬 레이 터 데 이 터 를 제출 하 는 데 성공 하지 못 했 고 실제 컴퓨터 에서 테스트 하 는 것 도 순 조 롭 지 못 했 습 니 다.하드웨어 와 관련 되면 알 수 없 는 오류 가 발생 할 수 있 습 니 다.
이상 은 안 드 로 이 드 GPS 의 소개 와 간단 한 예 입 니 다.필요 한 학생 들 을 도 울 수 있 기 를 바 랍 니 다.본 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.