본문으로 건너뛰기
@capgo/배경 위치 추적 위치 오픈 소스

배경 위치 추적 Capacitor 플러그인

자연스러운 iOS 및 Android 지오펜싱 및 전환 웹 훅과 함께 정확한 배경 위치 추적

설치

bun add @capgo/background-geolocation bunx cap sync
npm, pnpm 또는 yarn
  • npm install @capgo/background-geolocation
  • pnpm add @capgo/background-geolocation
  • yarn add @capgo/background-geolocation

가이드

배경 위치 추적을 사용하는 방법은 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" />

전체 참조

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 플러그인에 의해 플러그인 추가 또는 업데이트 이 페이지

FAQ

배경 위치 플러그인 FAQ

배경 위치 플러그인을 Capacitor 앱에 설치하는 방법은 무엇입니까?

Run &quot;bun add @capgo/background-geolocation&quot; (또는 &quot;npm install @capgo/background-geolocation&quot;)를 실행한 후 &quot;bunx cap sync&quot;를 실행하여 iOS 및 Android 프로젝트가 네이티브 code를 인식하도록 하세요. 그리고 앱 code에서 &quot;@capgo/background-geolocation&quot;을 임포트하세요.

@capgo/background-geolocation은 React, Vue 및 Angular와 함께 작동합니까?

네. 배경 위치 플러그인은 Capacitor 패키지이므로, Ionic, React, Vue, Angular, Svelte 및 일반 JavaScript와 같은 웹 프레임워크가 Capacitor 내부에서 실행되는 경우에 작동합니다.

Capacitor Capacitor 버전은 @capgo/background-geolocation이 지원하는 버전인가?

Capgo plugins follow Capacitor&#39;s major version: use the plugin major version that matches your Capacitor major version (for example plugin v8 with Capacitor 8). The compatibility table in the GitHub README lists the maintained versions.

@capgo/background-geolocation은 무료이며 오픈 소스입니까?

네. code은 GitHub에 공개되어 있으며 https://github.com/Cap-go/capacitor-background-geolocation/에서 무료로 설치할 수 있습니다. npm에서 버그 리포트와 풀 리퀘스트를 환영합니다.

code을 Background Geolocation이 사용하는지 여부와 관계없이 App Store 리뷰 없이 업데이트할 수 있나요?

code을 설치하거나 업그레이드하면 native code이 변경되므로 새로운 스토어 빌드를 필요로 합니다. 그 후에 JavaScript, HTML 및 CSS 변경 사항이 플러그인을 호출하는 경우 Capgo 라이브 업데이트와 함께 즉시 배포할 수 있습니다.

배포 시 앱 리뷰 기다리지 않고 Background Geolocation 변경을 전송합니다.

플러그인이 스토어 빌드에 포함된 후, Capgo Live Update는 사용자에게 몇 분 내에 JavaScript, HTML 및 CSS 변경을 푸시합니다.

시작하세요 Capgo