메뉴로 바로가기

FAQ

If you have questions not answered here, please ask! Both filing an issue or asking on Discord work.

Code push, also referred to as “over-the-air updates” (OTA) is a cloud service enabling Capacitor developers to deploy updates to their apps in production. Capgo currently works on Android, iOS, and Electron.

“Code Push” is a reference to the name of a deploy feature used by the React Native community from and Expo , neither of which support __CAPGO_KEEP_0__.Capacitor push는 개발자가 앱을 배포하는 데 사용하는 기능의 이름을 의미합니다. __CAPGO_KEEP_1__ 개발자들은 현재 __CAPGO_KEEP_2__를 사용하여 안드로이드, iOS, Electron에서 앱을 배포할 수 있습니다.

배포본과 릴리스 간의 차이점은 무엇인가요?

‘배포본과 릴리스 간의 차이점’이라는 제목의 섹션

앱 스토어에 배포하기 위한 바이너리를 준비하는 것을 ‘릴리스’라고 합니다. 릴리스를 위해 배포하기 위한 바이너리를 추출하기 위해서는 Capgo이 배포된 정확한 바이너리를 알아야 합니다.

‘배포본’은 릴리스를 업데이트하기 위한 패치를 의미합니다. code이 새로운 버전으로 업데이트되기 위해서는 배포본을 적용해야 합니다. npx @capgo/cli@latest bundle upload 릴리스를 업데이트하기 위한 패치를 생성하는 명령어입니다. 이 명령어를 사용하여 새로운 로컬 code에서 배포본을 생성하고 사용자에게 배포합니다.

로드맵은 무엇인가요?

‘로드맵’이라는 제목의 섹션

프로젝트 보드도 공개되어 있으며 다음 주소에서 확인하실 수 있습니다: https://github.com/orgs/Cap-go/projects

팀도 공개적으로 운영되고 있으니, 언제든지 진행 중인 작업을 확인하실 수 있습니다. 로드맵이나 우선순위에 대한 질문이 있으시면 Github 이슈를 통해 질문해 주시기 바랍니다. Discord.

Capgo 팀과 함께 사용할 수 있나요?

Capgo 팀과 함께 사용할 수 있나요?

네! 모든 플랜은 무제한 개발자를 지원합니다. 우리는 앱 메트릭스(사용자 수, 저장소 및 대역폭)에 한하여 각 조직에 제한을 둡니다.

보기 에 대한 자세한 정보를 참조하십시오.

Capgo은私のcode을 저장합니까?

Capgo은私のcode을 저장합니까?

아니요. Capgo 서버는私のcode을 절대 보지 않습니다. Capgo을 실행할 때 npx @capgo/cli@latest bundle uploadCapgo은 code의 압축/컴파일된 zip 파일을 저장합니다. 이는 브라우저가 받는 code와 동일한 code입니다. 이는 code의 원본과 다릅니다.

추가 보안을 위해 두 가지 옵션이 있습니다:

  • 끝-to-끝 암호화: 업로드 전 암호화하여 저장 및 전송 중에 보호하고, 개인 키가 없는 경우 유효한 암호화된 업데이트를 생성하는 세 번째 당사자로부터 보호합니다. 이 방법은 공개 키가 분포된 앱에 포함되어 있기 때문에 배포된 웹 자산을 역공학할 수 없습니다.
  • 외부 URL 업로드: Capgo에 다운로드 링크만 제공하고, 옵션을 제공하여 Capgo에 저장된 배ंडल을 업로드합니다. --external <url>

개인 정보 보호 정책을 참조하십시오: https://capgo.app/privacy

CI 시스템에서 Capgo을 사용할 수 있나요?

CI 시스템에서 Capgo을 사용할 수 있나요?

네. Capgo은 CI 시스템에서 사용하기 위해 설계되었습니다. 우리는 CI 시스템을 사용하는 방법에 대한 안내서를 공개했습니다. Android와 Github 액션 and iOS, and for GitLab. 다른 CI 시스템은 유사해야 합니다.

Please don’t hesitate to reach out over GitHub issues or Discord if you encounter any issues.

Firebase Remote Config 또는 Launch Darkly와 관련이 있습니까?

Firebase Remote Config 또는 Launch Darkly와 관련이 있습니까?

Code 푸시를 통해 기기에서 새로운 code를 추가하거나 code를 교체할 수 있습니다. Firebase Remote Config 및 Launch Darkly는 모두 구성 시스템입니다. 앱의 구성 변경을 위해 새로운 버전을 배포하지 않고도 구성 변경이 가능합니다. 구성 시스템은 code를 대체하는 것이 목적이 아닙니다.

이것은 얼마나 큰 의존성 footprint를 추가합니까?

의존성 footprint가 얼마나 큰지에 대한 질문

code push 라이브러리는 최근에 측정하지 않았지만 Capacitor 앱에 1MB 미만의 사이즈를 추가할 것으로 예상합니다. 사이즈가 문제가 되면 알려주세요. 사이즈를 줄일 수 있는 방법을 알고 있습니다.

Capgo은 iOS 18.4 시뮬레이터에서 작동합니까?

Capgo이 iOS 18.4 시뮬레이터에서 작동하는지에 대한 질문

아니요. iOS 18.4 시뮬레이터에 영향을 미치는 업스트림 문제로 인해 Capgo은 신뢰할 수 없습니다. 실제 기기에서 테스트하거나 다른 iOS 시뮬레이터 버전을 사용하세요.

React Native 이슈에 대한 자세한 내용은 다음을 참조하세요. facebook/react-native#50510

code push는 대형 애플리케이션과 함께 작동합니까?

code push가 대형 애플리케이션과 함께 작동하는지에 대한 질문

Yes. code 크기 제한이 없습니다. code push로 업데이트할 수 있는 애플리케이션의 크기는 무제한입니다. 아래에 설명되어 있습니다. 아래Capgo는 애플리케이션 내의 모든 JS code를 변경할 수 있습니다. 크기가 상관없이.

주의: 앱의 크기가 클수록 사용자가 업데이트를 다운로드하는 것이 어려워집니다. 앱의 크기를 가능한 한 작게 유지하는 것을 추천합니다.

Capgo code push를 사용할 수 있는 방법은 무엇인가요?

Capgo code push를 사용할 수 있는 방법

우리는 다양한 사용 사례를 확인했습니다.

  • production 앱에 긴급한 수정을 적용했습니다.
  • 사용자가 사용하는 앱의 버전이 오래된 경우 버그 수정을 배포했습니다.
  • 매시간 배포하는 경우도 포함됩니다.

대부분의 앱 스토어에서는 앱의 동작을 크게 변경하는 code를 배포하는 것을 금지하고 있습니다. 자세한 내용은 아래 더 많은 정보를 원하시면.

A MAU is a “Monthly Active User”. In Capgo’s context, this actually refers to a Monthly Active Device. We count a MAU as any device that has contacted our servers in the last 30 days. We do not count devices that have not contacted our servers in the last 30 days.

: 플러그인 버전v5.10.0 v6.25.0, v7.25.0 and__CAPGO_KEEP_0__ __CAPGO_KEEP_1__

__CAPGO_KEEP_0__ __CAPGO_KEEP_1__

  • __CAPGO_KEEP_0__ __CAPGO_KEEP_1__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__

__CAPGO_KEEP_0__

__CAPGO_KEEP_0__

Capgo __CAPGO_KEEP_0__ __CAPGO_KEEP_1__ 더 많은 정보를 원하시면.

또한 Capgo은 네이티브 code (예: 안드로이드의 Java/Kotlin 또는 iOS의 Objective-C/Swift)를 변경하는 것을 지원하지 않습니다. 업데이트 시도 중에 네이티브 code이 변경된 경우 도구는 경고 메시지를 표시합니다.

capacitor.config.ts 변경을 Capgo으로 업데이트할 수 있나요?

capacitor.config.ts 변경을 Capgo으로 업데이트할 수 있는지 여부

아니요. __CAPGO_KEEP_0__ live updates를 통해 capacitor.config.ts Capgo live updates를 통해 변경할 수 없습니다. 네이티브 빌드 시 Capacitor 구성 파일이 읽어지고 네이티브 앱 바이너리에 컴파일됩니다. 따라서 capacitor.config.ts (예: 플러그인 구성, 앱 ID, 서버 설정 또는 네이티브 플러그인 옵션) 변경을 위해 새로운 네이티브 릴리스를 앱 스토어 또는 구글 플레이에서 수행해야 합니다.

Capgo은 런타임에 로드되는 웹 자산 (HTML, CSS, JavaScript)만 업데이트할 수 있습니다. Capacitor 구성 변경이 필요하다면:

  1. 업데이트 capacitor.config.ts 로컬로
  2. 네이티브 앱을 다시 빌드npx cap sync __CAPGO_KEEP_0__를 native 빌드로 따릅니다)
  3. 앱 스토어에 새로운 바이너리를 제출하세요

Capgo는 스토어에 제출해 주나요?

Capgo가 스토어에 제출해 주나요?

Capgo는 현재 앱 스토어에 제출해 주는 기능을 지원하지 않습니다. 미래에 이 기능을 추가할 계획입니다. 현재는 기존 프로세스를 계속 사용하여 앱 스토어에 제출해야 합니다.

CI를 사용하여 CI 가이드 Android 이 프로세스를 자동화하고 CI 가이드 iOS.

Capgo는 디스크에 어떤 것을 저장하고 어디에 저장하는지 알려주세요

“Capgo” 디스크에 저장되는 내용물과 위치는 무엇인가요?”

The Capgo updater (included in your application when you build your app) caches the latest downloaded bundle in the only directory that capacitor allow to load code. On Android, this is located in /data/user/0/com.example.app/code_cache/capgo_updater although 그 디렉토리의 기본 경로는 안드로이드 시스템이 제공하고 런타임에 동적으로 변경될 수 있습니다. iOS 기기에서는 데이터는 Library/Application Support/capgo.

Capgo 명령줄 도구(예: npx @capgo/cli@latest bundle upload)는 디스크에 설치된 npm 캐시에서 찾을 수 있습니다. 로그인 정보는 홈 디렉토리에서 저장됩니다. ~/.capgo.

Capacitor Hot Reload과 어떻게 관련이 있나요?

“Capacitor Hot Reload과 어떻게 관련이 있나요?”

Capacitor의 Hot reload은 개발 시간 전용 기능입니다. Code은 프로덕션용입니다.

Capacitor Hot Reload은 개발 중에 code을 변경할 수 있는 기능입니다. Capacitor 앱을 빌드할 때 로컬 머신에 연결하기 위한 프록시를 사용해야 합니다.

Code push는 프로덕션에서 code을 변경할 수 있는 기능입니다. 우리는 다양한 기술을 사용하여 플랫폼에 따라 이 기능을 구현할 것입니다.

Capgo push는 code을 변경할 수 있는 기능입니다. Capgo push는 code을 변경할 수 있는 기능입니다.

Capgo code 변경이 지원하는 유형?

Capgo는 애플리케이션의 모든 자바스크립트 code를 변경할 수 있습니다. 이에는 앱 code 및 생성된 code가 포함됩니다. 또한 의존성을 업데이트할 수 있습니다. package.json 자바스크립트 code 변경이 필요하지 않으면서도.

자바스크립트 code 변경을 지원하지 않습니다. (예: 안드로이드의 Java/Kotlin 또는 iOS의 Objective-C/Swift). 또한, code 변경을 감지하면 경고 메시지를 표시합니다. 왜냐하면 code 변경은 번들에 포함되지 않기 때문입니다.

웹을 지원합니까?

웹을 지원합니까?

Code push는 웹에 필요하지 않습니다. 왜냐하면 웹은 이미 이 방식으로 작동하기 때문입니다. 사용자가 웹 앱을 열면 서버에서 최신 버전을 다운로드할 수 있습니다.

웹에 code push를 사용하는 경우를 알고 싶습니다.

iOS, Android, Mac, Windows, Linux 등에서 작동합니까?

iOS, Android, 맥, 윈도우, 리눅스 등에서 작동할까요?

네.

현재는 Android, iOS, Electron 지원에 초점을 맞추고 있으며 code는 모든 세 가지에서 프로덕션 준비가 완료되었습니다.

Capgo가 어떤 운영 체제 버전을 지원하는지

Capgo가 어떤 운영 체제 버전을 지원하는지

Capgo는 Capacitor가 지원하는 Android 버전과 동일한 버전을 지원합니다.

Capacitor는 현재 Android API 레벨 22+ 및 iOS 13.0+:를 지원합니다. https://capacitorjs.com/docs/main/reference/support-policy

Capgo가 Capacitor의 어떤 버전을 지원하는지

Capgo가 Capacitor의 어떤 버전을 지원하는지

Capgo는 현재 Capacitor의 최근 안정 버전만 지원합니다. Capacitor의 이전 버전도 지원할 수 있었지만, Capacitor를 유지하기 위한 인프라를 구축하지 않았기 때문에 지원하지 않습니다. Capacitor의 더 많은 버전을 지원할 계획이며, 기업 고객의 버전도 포함합니다. https://github.com/Cap-go/capgo/issues/1100

Capgo는 Capacitor의 안정 버전을 추적하고 일반적으로 안정 버전이 출시되면 몇 시간 이내에 업데이트를 진행합니다. 업데이트를 위한 시스템은 자동화되어 업데이트가 완료되면 몇 분만 소요됩니다. 업데이트를 완료한 후에는 추가적인 수동 검증 단계를 진행한 후 서버에 업데이트를 진행합니다.

앱/플레이 스토어 리뷰 프로세스나 정책과 관련이 있나요?

앱/플레이 스토어 리뷰 프로세스나 정책과 관련이 있나요?

스토어 제공자와의 계약에 따라 개발자는 스토어를 사용할 때 bound됩니다. Code push는 iOS, Android, Electron 배포 채널에서 앱을 업데이트할 수 있도록 개발자에게 허용하는 기능입니다. React Native와 같은 다양한 상업적 제품과 마찬가지로, Code push는 개발자가 스토어 정책에 부합하는 앱을 업데이트할 수 있도록 도와줍니다. 마이크로소프트, 마이크로소프트는 React Native와 __CAPGO_KEEP_1__ push의 스토어 정책 준수에 대한 가이드를 제공합니다.).

https://__CAPGO_KEEP_0__.com/microsoft/react-native-__CAPGO_KEEP_1__-push#store-guideline-compliance github는 code의 안정 버전을 추적하고 일반적으로 안정 버전이 출시되면 몇 시간 이내에 업데이트를 진행합니다. 업데이트를 위한 시스템은 자동화되어 업데이트가 완료되면 몇 분만 소요됩니다. 업데이트를 완료한 후에는 추가적인 수동 검증 단계를 진행한 후 서버에 업데이트를 진행합니다.

Code push는 앱 스토어에서 광범위하게 사용되는 기술입니다. 모든 큰 앱을 알고 있는 것처럼 code push를 사용합니다. 주된 정책은 앱의 동작을 크게 바꾸지 않는 것입니다. 자세한 내용은 아래 를 참조하세요.

예.

플레이 스토어에서는 업데이트 도구와 관련하여 두 가지 제한을 제공합니다.

  1. 업데이트는 인터프리터 또는 가상 머신을 사용해야 합니다 (Capgo은 WebView에서 JavaScript을 사용합니다). https://support.google.com/googleplay/android-developer/answer/9888379?hl=en
An app distributed via Google Play may not modify, replace, or update itself
using any method other than Google Play's update mechanism. Likewise, an app
may not download executable code (such as dex, JAR, .so files) from a
source other than Google Play. *This restriction does not apply to code
that runs in a virtual machine or an interpreter* where either provides
indirect access to Android APIs (such as JavaScript in a webview or
browser).
Apps or third-party code, like SDKs, with interpreted languages (JavaScript,
Python, Lua, etc.) loaded at run time (for example, not packaged with the
app) must not allow potential violations of Google Play policies.
  1. 앱의 변경 사항은 속임수로 변경되지 않아야 합니다 (예: 앱의 목적을 업데이트하는 등). https://support.google.com/googleplay/android-developer/answer/9888077 사용자에게 애플리케이션에서 제공하는 내용에 대해 명확하게 알려주고, Capgo를 사용하여 사용자 기대에 부합하지 않는 중요한 행동 변경을 일으키지 않는다.

Capgo는 Play Store 지침과 호환되도록 설계되었습니다. 그러나 Capgo는 도구이며, 어떤 도구든지 남용될 수 있습니다. Play Store 지침을 위반하기 위해 Capgo를 남용하는 것은 Capgo 위반이다. 서비스 약관 이로 인해 계정 해지가 발생할 수 있습니다.

마지막으로, code 푸시 서비스는 업계에서 널리 사용되는 서비스입니다 (모든 큰 앱이 code를 사용하고 있습니다) 및 다른 code 푸시 서비스가 공개적으로 사용할 수 있습니다 (예: expo.dev 및 appcenter.ms). 이 경로는 잘 알려진 경로입니다.

Microsoft는 React Native의 'codepush' 라이브러리가 앱 스토어와 호환되는지 설명하는 가이드를 공개했습니다. https://github.com/microsoft/react-native-code-push#store-guideline-compliance

예.

iOS App Store는 기술적 및 정책적 제한을 모두 제공합니다.

3.2.2
... interpreted code may be downloaded to an Application but only so long as
such code:
(a) does not change the primary purpose of the Application by providing
features or functionality that are inconsistent with the intended and
advertised purpose of the Application as submitted to the App Store,
(b) does not create a store or storefront for other code or applications, and
(c) does not bypass signing, sandbox, or other security features of the OS.

Capgo은 iOS에서 업데이트 시 인터프리터만 허용하는 제한을 충족하기 위해 WebView에서 JavaScript를 사용합니다. Capgo (또는 다른 code 푸시 솔루션)으로 업데이트하는 것은, 업데이트를 통해 앱의 목적을 변경하는 등 유도적 행위(예: 업데이트를 통해 앱의 목적을 변경하는 등 유도적 행위)를 수행하지 않는 한, 표준 산업 관행이며 앱 스토어 가이드라인에 준수합니다.

Capgo을 악용하여 앱 스토어 가이드라인을 위반하는 것은 Capgo의 위반입니다. Terms of Service 그것은 계정 해지로 이어질 수 있습니다.

Microsoft는 React Native의 'codepush' 라이브러리가 앱 스토어와 어떻게 준수하는지에 대한 안내서를 공개했습니다. https://github.com/microsoft/react-native-code-push#store-guideline-compliance

Capgo을 나의 국가에서 사용할 수 있나요?

Capgo을 나의 국가에서 사용할 수 있나요? (섹션 제목)

Capgo에 대한 국가 제한은 없습니다.

We recognize that some countries have restrictions on what urls can be accessed from within the country. Capgo currently uses Cloudflare Cloud for hosting, including R2 Storage and Cloudflare workers.

다음 URL은 Capgo에 사용됩니다.

  • https://api.capgo.app — 사용자는 __CAPGO_KEEP_0__ 서버 및 사용자의 기기에서 업데이트 확인을 위해 __CAPGO_KEEP_1__ 업데이터와 상호 작용하기 위해 명령줄 도구를 사용합니다. npx @capgo/cli command line tools to interact with the Capgo servers as well as the Capgo updater on users’ devices to check for updates.
  • — 사용자는 명령줄 도구를 통해 배ंडल 업로드 및 다운로드를 수행합니다. __CAPGO_KEEP_0__가 작동하려면 모든 URL이 국가에서 접근할 수 있어야 합니다. npx @capgo/cli __CAPGO_KEEP_0__에 대한 접근을 국가의 지역이 요구하는 경우에만 차단하는 URL이 있다면, 알려주십시오. 그 경우에 우리는 해결책을 찾기 위해 함께 일할 수 있습니다. 프록시 서버는 하나의 옵션입니다.

Capgo를 자체 호스팅할 수 있나요?

__CAPGO_KEEP_0__를 자체 호스팅할 수 있나요?

https://Capgo.__CAPGO_KEEP_1__.app

Capgo 자체 호스팅이 가능합니까?

Capgo 자체 호스팅이 가능합니다. 가이드는 아직 작성되지 않았지만 code은 오픈 소스이며 https://github.com/cap-go/capgo

code 푸시가 인터넷 연결이 필요합니까?

code 푸시가 인터넷 연결이 필요합니까?

네. 서버를 분리하여 업데이트를 배포하는 것을 상상할 수 있지만, 업데이트를 장치로 전송하기 위해 네트워크 연결이 필요합니다.

Capgo이 네트워크 연결이 없는 경우 어떻게 영향을 받습니까?

Capgo이 네트워크 연결이 없는 경우 어떻게 영향을 받습니까?

Capgo 업데이터(Capgo으로 앱을 빌드할 때 포함된 앱)는 네트워크 연결 문제에 대한 내결함성을 디자인했습니다.

기본 업데이트 동작에서, 앱이 시작될 때 Capgo 업데이터를 알립니다. 이 업데이터는 별도의 스레드를 생성하여 Capgo 서버에 네트워크 요청을 보내 업데이트를 요청합니다. 네트워크 요청이 실패하거나 타임아웃이 발생하면 업데이터는 다음 앱 시작 시 다시 확인하려고 시도합니다.

Capgo 명령 줄 도구 (예: npx @capgo/cli@latest bundle upload) 네트워크 연결이 필요한 경우 작동합니다. Capgo을 사용하여 앱을 배포하는 경우 CI 시스템이 네트워크 연결을 보유하고 있는지 확인해야 합니다.

__CAPGO_KEEP_0__을 오랫동안 업데이트하지 않고 중간 업데이트를 놓친 사용자의 상황입니다.

__CAPGO_KEEP_0__을 오랫동안 업데이트하지 않고 중간 업데이트를 놓친 사용자의 상황에 대한 섹션입니다.

__CAPGO_KEEP_0__의 구현은 항상 특정 장치에 맞춰 업데이트를 전송하며, 요청자에게 항상 최신 버전이 사용 가능한 버전을 업데이트합니다. 따라서 사용자가 오랫동안 업데이트를 하지 않으면 중간 업데이트를 놓칠 수 있습니다.

업데이트 서버를 변경하여 응답할 수 있는 버전을 __CAPGO_KEEP_0__의 사용자의 요구에 따라 다음 인크레멘탈 버전 또는 최신 버전으로 변경할 수 있습니다. 중요한 업데이트 동작이 필요하십니까?

Capgo과 Capacitor 사이의 관계입니다.

Capgo과 Capacitor 사이의 관계에 대한 섹션입니다.

Capgo은 Capacitor의 플러그인으로 code 푸시를 추가합니다. Capgo은 Capacitor의 대체품이 아닙니다. Capacitor 도구를 이미 알고 있는 경우 Capacitor 도구를 계속 사용할 수 있습니다.

Capacitor의 최신 안정 버전을 추적하고 code 푸시 플러그인을 업데이트하여 Capacitor과 호환되도록 합니다.

업데이트가 언제 발생하는지?

업데이트가 언제 발생하는지?

기본적으로 Capgo 업데이터는 앱 시작 시 업데이트를 확인합니다. 이 업데이터는 백그라운드 스레드에서 실행되며 UI 스레드를 차단하지 않습니다. 업데이트가 설치되면 사용자가 앱을 사용 중이더라도 업데이트가 설치되고 다음으로 앱이 재시작될 때 적용됩니다.

Capgo 업데이터를 수동으로 실행할 수도 있습니다. @capgo/capacitor-updater __CAPGO_KEEP_0__ 업데이터는 패키지를 통해 업데이트를 트리거할 수 있으며, 사용자가 언제든지 업데이트를 트리거할 수 있습니다. 또한 푸시 알림을 통해 업데이트를 트리거할 수 있습니다.

Capgo 업데이터는 네트워크가 불안정하거나 서버가 다운되거나 접근할 수 없을 때도 앱이 정상적으로 작동하도록 설계되었습니다. 우리 서버에서 업데이트를 삭제하더라도 모든 클라이언트는 정상적으로 작동합니다.

업데이트 롤백 기능을 추가했습니다. 가장 단순한 방법은 이전 버전의 패키지를 채널에 첨부하여 롤백하는 것입니다.

업데이트가 언제 발생하는지?

업데이트가 언제 발생하는지?

아니요. __CAPGO_KEEP_0__ 업데이터는 앱 ID를 암호화하지 않습니다. app_id 앱에 포함되어 있으며, 공개되어도 안전합니다. 버전 관리에 포함하여도 (공개적으로도) 걱정할 필요가 없습니다.

누군가가 당신의 app_id 누군가가 Capgo 서버에서 최신 버전의 앱을 가져올 수 있지만, 앱 업데이트를 푸시하거나 Capgo 계정의 다른 부분에 접근할 수는 없습니다.

Capgo 서버로 어떤 정보가 전송되는가?

Capgo 서버로 전송되는 정보에 대한 섹션

Capgo은 네트워크에 연결되지만, 개인 식별 정보를 전송하지 않습니다. Capgo을 포함하는 것은 Play Store 또는 App Store의 선언에 영향을 주지 않습니다.

Capgo 서버로부터 앱으로 전송되는 요청에는 다음과 같은 정보가 포함됩니다.

  • app_id (사용자 지정된 capacitor.config.json)
  • channel (선택적 capacitor.config.json)
  • release_version (AndroidManifest.xml의 versionName 또는 Info.plist의 CFBundleShortVersionString 또는 capacitor.config.json if set in CapacitorUpdater.version )
  • 버전 번호 (자동으로 생성되는 npx @capgo/cli@latest bundle upload)
  • 운영 체제 버전 (예: ‘11.2.1’)
  • platform (e.g. ‘android’, needed to send down the right patch) That’s it. The code for this is in updater/library/src/network.rs
  • 그것은 여기 있습니다. __CAPGO_KEEP_0__
  • 기기 ID (기기에서 첫 실행 시 생성, 기기당 중복 설치를 방지하고 사용자당 월간 활성 사용자를 계산하기 위해 사용)

Capgo을 지원하는 플랫폼

현재, Capgo은 Android, iOS, 및 Electron을 지원합니다. 모두 프로덕션 준비 완료

Android, iOS, 또는 Electron을 위한 Capgo의 사용은独立된 결정이 될 수 있습니다. Android 채널 전략과 App Store에 빌드된 ipa를 설정하거나 Electron 채널을 필요에 따라 설정할 수 있습니다.

Capgo은 데스크톱 또는 임베디드 대상에 대한 지원을 쉽게 추가할 수 있습니다. 중요한 경우 알려 주세요.

Capgo이 Google Play 테스트 트랙 또는 애플 테스트 플라이트와 어떻게 상호 작용하는지에 대한 섹션입니다.

각 앱 스토어에는 사용자들을 그룹으로 나누고 각 그룹에 특정 버전의 앱을 배포하는 데 사용되는 별도의 메커니즘들이 있습니다. (예를 들어, “내부 테스트”, “닫힌 베타” 등).

이러한 모든 메커니즘은 앱이 특정 테스트 트랙 또는 테스트 플라이트를 통해 설치되었는지 3rd 파티가 감지할 수 없기 때문에, 우리는 이러한 그룹의 구성에 대한 신뢰할 수 있는 가시성을 가지고 있지 않으며, 이러한 그룹에 기반하여 Capgo 패치에 대한 접근을 신뢰할 수 없게 합니다. https://stackoverflow.com/questions/53291007/can-an-android-application-identify-the-test-track-within-google-play https://stackoverflow.com/questions/26081543/how-to-tell-at-runtime-whether-an-ios-app-is-running-through-a-testflight-beta-i

Capgo 배포의 가용성을 구획화하려면 4 가지 잠재적인 옵션이 있습니다.

  1. 각 그룹에 대해 별도의 채널을 사용하는 것입니다. 이 방법은 가장 직관적인 방법이지만, 여러 채널을 관리해야 합니다. 이미 개발 채널과 프로덕션 채널이 다른 가용성을 가지고 있다면, 개발 채널을 업데이트하고 확인한 후에 별도로 프로덕션 채널을 업데이트하는 것이 좋습니다. 우리는 버전 제어에서 branch / tag를 사용하여 각 릴리스와 관련된 소스에 대한 추적을 도와주기 위해 branch / tag를 추천합니다.
  2. __CAPGO_KEEP_0__의 사용자 집합을 추적하고, 자동 업데이트 기능을 비활성화하고, 특정 사용자에게만 업데이트 트리거를 활성화할 수 있습니다. 이 기능은 현재 작동하지만, 사용자 자신의 opt-in 목록 관리를 필요로 합니다. @capgo/capacitor-updater __CAPGO_KEEP_0__에서 장치별로 opt-in 메커니즘을 생성할 수 있도록 허용합니다. (Test Tracks 또는 TestFlight과 유사하지만 플랫폼에 독립적입니다). QA 팀이 일반 대중으로 승격되기 전에 배포를 옵트인할 수 있습니다.
  3. Capgo에서는 퍼센티지 기반 롤아웃을 지원합니다. 특정 장치를 선택할 수는 없지만, 문제가 발생하는 경우 롤백할 수 있는 incremental 롤아웃을 지원합니다.
  4. Capgo have percentage based rollouts. This does not let you choose which devices to send to, but can help you roll out incrementally and roll-back on sight of any problems.

https://console.__CAPGO_KEEP_0__.app/settings/organization/plans https://console.capgo.app/settings/organization/plans

내 결제 기간이 언제 다시 시작되나요?

내 결제 기간이 언제 다시 시작되는지에 대한 섹션

Capgo에 가입한 달의 첫 번째 달에 자동으로 매월 결제 기간이 다시 시작됩니다. 예를 들어, Capgo에 가입한 달의 15일이라면, 매월 15일에 결제 기간이 다시 시작됩니다.

내 구독을 언제든지 داش보드에서 취소할 수 있습니다: https://console.capgo.app/settings/organization/plans

1년 미리 결제할 수 있나요?

1년 미리 결제할 수 있는지에 대한 섹션

당신은 언제든지 대시보드에서 다음을 확인할 수 있습니다: https://console.capgo.app/settings/organization/plans

대시보드의 통계는 매일 자정 UTC에 업데이트됩니다. 통계는 당신의 장치에 설치된 MAU 장치 ID 생성 방법

장치 ID 생성 방법으로 바로가기

protectedTokens

__CAPGO_KEEP_0__는 기기에서 첫 실행 시 생성되며, 기기당 설치를 중복 제거하고 사용자당 __CAPGO_KEEP_1__을 청구할 수 있도록 합니다. (예: 월간 활성 사용자). 기기당 patch 또는 patch 설치 총 수를 기준으로 하는 것보다 더 정확하고 실제 __CAPGO_KEEP_1__ 비용을 반영합니다.

Capgo을 가격하기 위해 MAU가 더 좋은 해결책입니다. 이는 더 정확하고 실제 기기당 Capgo 비용을 반영합니다.

기기 ID 보존 (v6.25.0 및 v7.25.0에서 업데이트):

  • 현재 동작기기 ID는 앱 재설치 시에도 계속 유지됩니다. 기기 키체인 (iOS) 또는 암호화된 SharedPreferences (Android)에서 안전하게 저장되며, 기기 재설치 후에도 동일한 기기를 추적할 수 있도록 합니다.
  • 이전 동작 (v6.25.0/v7.25.0 이전): 애플과 구글 스토어 정책과 관련된 개인 정보 보호 사유로 인해 기기 ID는 앱 재설치 시마다 초기화되었습니다. 따라서 재설치 후 동일한 기기를 추적할 수 없습니다.

애플과 구글이 규정하는 개인 정보 보호 규칙을 준수하고 Capgo의 구현은 기기 식별의 최적 방법입니다.

기기 ID는 첫 번째 패치가 설치될 때까지 기기 목록에 표시되지 않습니다.

__CAPGO_KEEP_0__와 MAU가 다른 이유는 무엇입니까?

__CAPGO_KEEP_0__와 MAU가 다른 이유는 무엇입니까?

현재 기기 목록은 MAU와 같은 빈도로 업데이트되지 않습니다.

기기 목록은 기기가 업데이트를 설치할 때만 업데이트됩니다.

앱 런칭 시마다 MAU가 업데이트됩니다. 현재 플랫폼의 한계입니다. 우리의 분석 플랫폼은 raw 업데이트를 지원하지 않기 때문에 기기 목록은 일반 데이터베이스를 사용합니다.

앱 업데이트를 위해 row만 업데이트하여 데이터베이스 쿼리 수를 줄입니다.

이 한계는 미래에 제거될 것입니다.

플랫폼별로 다른 업데이트를 어떻게 받을 수 있나요?

플랫폼별로 다른 업데이트를 어떻게 받을 수 있나요?

각 플랫폼별로 채널을 만들고 각 채널에서 플랫폼별 업데이트를 비활성화할 수 있습니다.

iOS 채널에서 안드로이드 업데이트를 비활성화하고 안드로이드 채널에서 iOS 업데이트를 비활성화할 수 있습니다.

그런 다음 각 채널에 업로드한 번들을 사용하여 각 플랫폼별로 다른 업데이트를 받을 수 있습니다.

만약 두 플랫폼에 동일한 업데이트를 받으려면, 하나의 번들을 여러 채널에 연결할 수 있습니다. 번들을 중복해서 업로드할 필요가 없습니다.