본문으로 건너뛰기
@capgo/capacitor-배경 작업 장치 API 오픈 소스

배경 작업 Capacitor 플러그인

__CAPGO_KEEP_0__ 플러그인을 사용하여 iOS 및 Android에서 Expo-style 작업 등록과 함께 주기적인 배경 가져오기 작업을 예약합니다.

설치

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

가이드

Capacitor에서 백그라운드 태스크 사용 방법

장치에서 테스트

Capgo 앱을 다운로드한 후 QR code를 스캔하세요

배경 작업 플러그인 미리보기 QR code

@capgo/capacitor-배경 작업 사용

Capacitor 앱에서 이름이 지정된 작업을 위한 주기적인 배경 fetch 작업을 스케줄링하고, 지속적인 등록, 상태 확인, 등록 해제, 개발 트리거를 사용합니다. 플러그인은 Android WorkManager와 iOS BGTaskScheduler를 사용합니다.

설치

npm install @capgo/capacitor-background-task
npx cap sync

iOS 설정

__CAPGO_KEEP_0__에 배경 처리 지원 추가 ios/App/App/Info.plist:

<key>UIBackgroundModes</key>
<array>
  <string>processing</string>
</array>
<key>BGTaskSchedulerPermittedIdentifiers</key>
<array>
  <string>app.capgo.backgroundtask.processing</string>
</array>

그런 다음 실행:

npx cap sync ios

이 플러그인이 제공하는 것

  • defineTask - 이름이 지정된 작업에 대한 자바스크립트 콜백을 정의합니다.
  • registerTaskAsync - 주기적인 작업을 저장하고 예약하세요.
  • unregisterTaskAsync - 하나의 작업을 취소하세요.
  • isTaskRegisteredAsync - 하나의 작업의 등록 상태를 확인하세요.
  • getRegisteredTasksAsync - 등록된 작업 이름 목록을 확인하세요.
  • getStatusAsync - 네이티브 배경 작업 사용 가능 여부를 확인하세요.
  • triggerTaskWorkerForTestingAsync - 개발 시에 등록된 작업을 즉시 트리거하세요.
  • addExpirationListener - iOS에서 작업이 만료되었을 때 반응하세요.

예시 사용

모듈 범위에서 작업을 정의하세요. OS가 앱을 잠재우면 작업이 사용 가능합니다:

import { BackgroundTask, BackgroundTaskResult } from '@capgo/capacitor-background-task';

const SYNC_TASK = 'sync-offline-data';

BackgroundTask.defineTask(SYNC_TASK, async () => {
  try {
    await fetch('https://api.example.com/sync', { method: 'POST' });
    return BackgroundTaskResult.Success;
  } catch {
    return BackgroundTaskResult.Failed;
  }
});

await BackgroundTask.registerTaskAsync(SYNC_TASK, {
  minimumInterval: 30,
  requiresNetwork: true,
});

상태를 확인하고 등록된 작업 이름을 확인하세요:

const status = await BackgroundTask.getStatusAsync();
const tasks = await BackgroundTask.getRegisteredTasksAsync();

console.log({ status, tasks });

개발 환경에서 작업을 트리거하세요:

await BackgroundTask.triggerTaskWorkerForTestingAsync();

작업을 취소하세요:

await BackgroundTask.unregisterTaskAsync(SYNC_TASK);

플랫폼 참고 사항

  • 배경 작업 스케줄은 기회주의적이므로 정확한 타이머가 아닙니다.
  • Android의 주기적 작업은 최소 15분 간격입니다.
  • iOS는 minimumInterval 을 가장 빠른 시작 날짜로 처리하고 나중에 실행될 수 있습니다.
  • iOS 배경 처리를 테스트하려면 물리적 장치를 사용하세요.

전체 참조

Using @capgo/capacitor-background-task

__CAPGO_KEEP_0__를 사용 중이라면 Capacitor @capgo/capacitor-background-task Capacitor @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-background-task Capacitor @capgo/capacitor-background-task @capgo/capacitor 백그라운드 작업 Capacitor 시작하기 Capacitor 플러그인 디렉토리 Capgo 플러그인 디렉토리 Capgo 제품 워크플로우에 대한 플러그인 디렉토리에서. Capacitor Capgo 플러그인 for Capacitor 구현 세부 사항에 대한 Capgo 플러그인에 의해 플러그인 추가 또는 업데이트 Capacitor @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-background-task

FAQ

배경 작업 플러그인 FAQ

백그라운드 태스크 플러그인을 Capacitor 앱에 설치하는 방법은 무엇입니까?

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

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

네. 백그라운드 태스크는 Capacitor 패키지이므로, Capacitor 내에서 실행되는 모든 웹 프레임워크와 함께 작동합니다. 예를 들어, Ionic, React, Vue, Angular, Svelte 및 plain JavaScript도 포함됩니다.

어떤 Capacitor 버전이 @capgo/capacitor-background-task을 지원합니까?

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/capacitor-background-task은 무료이며 오픈 소스입니까?

Yes. The source code is public on GitHub at https://github.com/Cap-go/capacitor-background-task/ and the package is free to install from npm. Bug reports and pull requests are welcome.

백그라운드 태스크를 사용하는 code를 App Store 리뷰 없이 업데이트할 수 있나요?

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

앱 리뷰 기다리지 않고 배경 작업 변경을 실현합니다.

Capgo live updates는 사용자에게 몇 분만에 자바스크립트, HTML 및 CSS 변경을 푸시합니다.

Capgo