가이드
배경 위치 추적을 사용하는 방법은 Capacitor
capgo/배경 위치 추적 사용
Capacitor 앱에서 iOS 및 Android에서 정확한 배경 위치 추적 및 네이티브 지오펜싱을 제공합니다. 위치 업데이트를 스트리밍하고 원형 영역을 모니터링하고 JavaScript 또는 백엔드에 지오펜스 입/출 transition을 전달하여 precis 위치 업데이트를 사용하세요.
설치
bun add @capgo/background-geolocation
bunx cap sync
이 플러그인이 제공하는 것
start- 정확한 전면 또는 배경 위치 업데이트를 스트리밍합니다.stop- 활성 위치 추적을 중지합니다.openSettings- 사용자가 위치 권한을 수정해야 할 때 native 설정을 열어줍니다.setPlannedRoute- 사용자가 계획된 경로를 떠날 때 native 사운드 재생합니다.setupGeofencing- 네이티브 지오펜스 기본값을 구성하고 옵션 transition webhook 전달을 제공합니다.addGeofence- iOS 또는 Android 원형 지오펜스 영역을 모니터링합니다.removeGeofence/removeAllGeofences- 등록된 영역 중 하나 또는 모든 영역을 중지합니다.getMonitoredGeofences- 지역 식별자 목록geofenceTransition- listener - 앱이 활성화된 동안 입장 및 이탈 이벤트를 받습니다.geofenceError- listener - 네이티브 모니터링 오류를 전환 이벤트와 별도로 처리합니다.
예시 사용
start
장치의 위치 변경을 감지하기 위해 이 메서드를 호출하세요. Promise가 반환되어 호출이 완료되었음을 나타내며, callback은 새로운 위치가 준비되거나 오류가 발생했을 때 호출됩니다. 오류 처리에 Promise를 의존하지 마세요.
import { BackgroundGeolocation } from '@capgo/background-geolocation';
await BackgroundGeolocation.start(
{
backgroundMessage: "App is using your location in the background",
backgroundTitle: "Location Service",
requestPermissions: true,
stale: false,
distanceFilter: 10
},
(location, error) => {
if (error) {
console.error('Location error:', error);
return;
}
if (location) {
console.log('New location:', location.latitude, location.longitude);
}
}
);
stop
위치 업데이트 중지
import { BackgroundGeolocation } from '@capgo/background-geolocation';
await BackgroundGeolocation.stop();
openSettings
장치의 위치 설정 페이지를 열어줍니다. 사용자에게 위치 서비스를 활성화하거나 권한을 조정하도록 안내할 수 있습니다.
import { BackgroundGeolocation } from '@capgo/background-geolocation';
// Direct user to location settings
await BackgroundGeolocation.openSettings();
setPlannedRoute
사용자가 계획된 경로에서 벗어났을 때 사운드 파일을 재생합니다. 네이티브에서만 재생할 수 있습니다.
import { BackgroundGeolocation } from '@capgo/background-geolocation';
await BackgroundGeolocation.setPlannedRoute({
soundFile: "notification.mp3",
route: [[-74.0060, 40.7128], [-118.2437, 34.0522]]
});
네이티브 지오펜싱
네이티브 iOS 및 Android 지오펜스를 사용하여 매장, 작업장, 배송 구역, 캠퍼스, 또는 체크인 지역을 감시하세요. HTTP 또는 HTTPS url 네이티브 code POST 전환 패킷을 WebView가 중단된 동안 허용하세요.
import { BackgroundGeolocation } from '@capgo/background-geolocation';
await BackgroundGeolocation.setupGeofencing({
url: 'https://api.example.com/geofences',
notifyOnEntry: true,
notifyOnExit: true,
payload: { userId: '123' },
});
await BackgroundGeolocation.addGeofence({
identifier: 'warehouse',
latitude: 40.7128,
longitude: -74.006,
radius: 200,
});
const listener = await BackgroundGeolocation.addListener(
'geofenceTransition',
(event) => console.log(event.identifier, event.transition),
);
const errorListener = await BackgroundGeolocation.addListener(
'geofenceError',
(event) => console.error(event.identifier, event.message),
);
await BackgroundGeolocation.removeGeofence({ identifier: 'warehouse' });
await listener.remove();
await errorListener.remove();
안드로이드에서 ACCESS_BACKGROUND_LOCATION 앱 매니페스트에만 백그라운드 지오펜싱을 사용할 때 필요합니다:
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
전체 참조
- GitHub: https://github.com/Cap-go/capacitor-background-geolocation/
- 문서: /docs/plugins/background-geolocation/
Using @capgo/background-geolocation에서 계속 진행하세요.
이미 @__CAPGO_KEEP_0__/background-geolocation을 사용 중이라면 @capgo/배경 위치 정보 @__CAPGO_KEEP_0__/background-geolocation을 연결하세요. @capgo/background-geolocation의 implementation detail for the implementation detail in @capgo/배경 위치기반 위치정보. 시작하기 Capacitor 배경 위치 추적 플러그인 Capgo 플러그인 디렉토리 Capgo 플러그인 디렉토리 내의 제품 워크플로우를 위해 Capacitor Plugins by Capgo for Capacitor 구현 세부 사항에 대한 Capgo 플러그인에 의해 플러그인 추가 또는 업데이트 이 페이지