개발 가이드
Local Navigation
- 위치 기반 서비스 개요
- 위치 찾기
- 단말기에서 위치 서비스 켜기 및 쿼리하기
- GPS를 사용한 위치 검색
- GPS 모드 지정
- JSR 179를 사용하여 GPS 모드 지정
- BlackBerry JSR 179 확장 버전을 사용하여 GPS 모드 지정
- A-GPS 모드를 사용하여 위치 정보 검색
- 위치 공급자 검색
-
BlackBerry 단말기의 위치 검색
- BlackBerry 단말기의 위치 검색
- 코드 샘플: BlackBerry 단말기의 GPS 위치 검색
- 연속 수정값 요청을 지정하여 BlackBerry 단말기의 위치 검색
- 코드 샘플: 연속 수정값 요청을 사용하여 BlackBerry 단말기의 GPS 위치 검색
- 위치 클래스를 사용하여 위치 정보 검색
- 위치 클래스를 사용하여 위치 정보 검색
- 코드 샘플: 위치 클래스를 사용하여 GPS 위치 정보 검색
- BlackBerryLocation 클래스를 사용하여 위치 정보 검색
- BlackBerryLocation 클래스를 사용하여 위성 정보 검색
- 코드 샘플: BlackBerryLocation 클래스를 사용하여 위성 정보 검색
- 위치 정보 수신을 위한 기준 변경
- 코드 샘플: 위치 정보 검색을 위해 기준 변경
- 오류 처리
- 웹 페이지를 사용하여 GPS 위치 검색
- Geolocation을 사용한 위치 검색
- GPS 및 Geolocation으로 최적 수정값 검색
- GPS와 Geolocation 업데이트 동시 요청
- 지오코딩과 역 지오코딩
- 지오펜싱을 사용한 근접 정보 알림 수신
- 방향 또는 방위 알아내기
- 예상 이동 시간, 거리 및 출발 시간 검색
- 지도를 사용한 위치 시각화
- 지도의 모양 사용자 정의
- BlackBerry Maps와의 통합
- 자세한 정보 확인
- 용어
- 의견 제공
- 법적 고지
BlackBerry Manuals & Help
>
개발자 문서
>
Java 개발 가이드 및 API 참조서
>
개발 가이드
Location-Based Services - BlackBerry Java SDK - 7.0
BlackBerryLocationProvider 클래스를 사용하여 위치 추적 제어
net.rim.device.api.gps.BlackBerryLocationProvider 클래스를 사용하여 위치 추적을 일시 중지, 다시 시작 또는 중지할 수 있습니다.
- 필요한 클래스를 가져옵니다.
import net.rim.device.api.gps.*; import javax.microedition.location.*;
- 새 클래스와 생성자를 만듭니다.
public class handleGPS { static BlackBerryLocationProvider myProvider; public handleGPS() { } } - 생성자에서 try/catch 블록을 만듭니다. 블록에서 생성자에 GPS 모드를 매개 변수로 전달하여 BlackBerryCriteria 클래스의 인스턴스를 만듭니다.
try { BlackBerryCriteria myCriteria = new BlackBerryCriteria(GPSInfo.GPS_MODE_AUTONOMOUS); } catch ( UnsupportedOperationException uoex ) { return; } - 블록의 try 파트에서 새 try/catch 블록을 만듭니다. 이 블록에서 BlackBerryCriteria 클래스의 인스턴스를 검색하여 BlackBerryLocationProvider 클래스의 인스턴스를 만듭니다. LocationListener 추가를 위해 간격 값, 시간 제한 값 및 최대 기간을 매개 변수로 전달하여 setLocationListener()를 호출합니다.
try { myProvider = (BlackBerryLocationProvider) LocationProvider.getInstance(myCriteria); myProvider.setLocationListener(new handleGPSListener(), 10, -1, -1); } catch ( LocationException lex ) { return; } myProvider.pauseLocationTracking(30); myProvider.resumeLocationTracking(); myProvider.stopLocationTracking(); - try/catch 블록의 외부에서 pauseLocationTracking(), resumeLocationTracking() 또는 stopLocationTracking()을 호출하여 위치 추적을 일시 중지, 다시 시작 또는 중지합니다.
myProvider.pauseLocationTracking(30); myProvider.resumeLocationTracking(); myProvider.stopLocationTracking();
- 클래스에서 LocationListener 인터페이스를 구현합니다. locationUpdated() 메소드 및 providerStateChanged() 메소드에 대해 기본 구조를 구현합니다.
public static class handleGPSListener implements LocationListener { public void locationUpdated(LocationProvider provider, Location location) { if (location.isValid()) {} else {} } public void providerStateChanged(LocationProvider provider, int newState) { if (newState == LocationProvider.AVAILABLE) {} else if (newState == LocationProvider.OUT_OF_SERVICE) {} else if (newState == LocationProvider.TEMPORARILY_UNAVAILABLE ) {} } }