일반적인 업데이트 문제
설치 단계와 이 플러그인의 전체 마크다운 가이드를 포함한 설정 명령어를 복사하세요.
업데이트 체크가 실패할 때, Capgo 일반적으로 Capgo과 함께 error code message 에서 반환합니다. /updates 응답. 이 페이지는 가장 일반적인 실패와 가장 빠른 해결책을 설명합니다.
먼저 읽어보세요
먼저 읽어보세요no_new_version_available이것은 정상 상태이며, 실패는 아닙니다.- 많은 "업데이트가 발견되었지만 적용되지 않았습니다." 보고는 캐시 지연보다는 정책/구성 거부로 특히 응답에 명시적인 "__CAPGO_KEEP_0__"가 포함되었을 때尤其 그렇습니다.
errorcode. - 문제를 재현하는 동안 요청/응답 세부 정보를 보려면 사용하세요.
npx @capgo/cli@latest app debug일반적인 실패 코드
provider_infrastructure_request_blocked
원인provider_infrastructure_request_blocked
앱이 제공자 인프라 요청을 차단하고 Google 또는 Apple 데이터 센터 IP 범위에서 요청이 시작된 경우 차단이 활성화되어 있습니다. Capgo은 제공자에서 시작된 트래픽을 장치 트래픽으로 처리하는 것을 방지하기 위해 이러한 요청을 /updates, /stats, /channel_self 에서 차단합니다.
해결
- 물리적 장치에서 일반 사용자 네트워크에서 업데이트를 다시 시도하세요.
- 이 보호 기능이 활성화된 동안 업데이트, 통계, 채널-자신 확인에 사용되는 클라우드 호스팅 프로브 또는 제공자 데이터 센터 러너를 사용하지 마세요.
- 그렇지 않다면, 앱의 정보 탭을 열고 제공자 인프라 요청을 차단. 재 활성화 할 때 테스트가 완료되면.
새로운 앱은 기본적으로 이 보호 기능이 활성화되어 있습니다. 이전에 설정이 도입되기 전에 생성된 앱은 활성화할 때까지 비활성화 상태로 유지됩니다.
응답 세부 정보
/updates업데이터 응답 계약을 유지하고 HTTP200그것의 본문에는error,message,kind: "blocked", 그리고provider("google"또는"apple")./stats또는/channel_selfHTTP429동일한 오류 code와 함께 반환합니다. 이를 의도적인 정책 차단으로 간주하고, 일시적인 재시도 조건이 아닌 것으로 처리합니다.
disable_auto_update_to_major
‘disable_auto_update_to_major’라는 제목을 가진 섹션원인
채널이 주요 업그레이드를 차단하고 (disable_auto_update = major그리고 장치 기준 버전보다 대상 패키지의 주요 버전이 높습니다.
일반적인 증상
version: 1.0.8 with old: 0.0.0 means 장치가 기준 0.0.0를 보고 있으므로 주요 업그레이드는 거부됩니다.
해석 방법
백엔드에서는 장치 기준 버전과 대상 버전을 비교하여 old 대상이 version.
- 일 때 기준의 주요 버전은
1.0.1(예를 들어1(for example1.0.0). - If target is
10.0.1, baseline major must be10(for example10.0.0).
Fix option A (recommended): align device baseline major
Set plugins.CapacitorUpdater.version in capacitor.config.* so its MAJOR matches the bundle MAJOR you want to deliver (for example 1.0.0 for 1.0.1, 10.0.0 Then apply this config to the installed app once: 10.0.1).
protectedTokens
- 실행
npx cap sync. - 원본 앱을 재구축하고 다시 설치하세요.
옵션 B: 채널 정책을 완화하세요.
채널 설정에서 크로스-메이저 자동 업데이트를 허용하세요 (만약 그 롤아웃 전략이 의도적이라면).
관련 문서:
disable_auto_update_to_minor / disable_auto_update_to_patch
“minor 버전 업데이트를 비활성화하기” 또는 “patch 버전 업데이트를 비활성화하기” 섹션원인
업데이트가 제안되는 것보다 채널 정책이 더 엄격합니다.minor 또는 patch업데이트가 제안되는 것보다 채널 정책이 더 엄격합니다.
minor대상 버블이 기기 기본 라인업의 주요 또는 부수 버전과 다를 때version_build예시:1.2.3 -> 1.3.0차단된다.patch대상 버블의 주요, 부수 또는 패치 번호 변경이version_build에서만 차단된다.MAJOR.MINOR.PATCH수식어 변경만 허용되며1.0.0-beta.1 -> 1.0.0-beta.2의 버전이 동일한 경우,1.0.0+build.1 -> 1.0.0+build.2.
또는
- 과 같은 경우이다.
- change channel policy in dashboard/CLI.
현재 정책과 호환되는 버블을 업로드하거나
disable_auto_update_to_metadata
Section titled “자동 업데이트 차단”원인
채널은 메타데이터 기반 타겟팅 (version_number)을 사용하고 기기 기준선은 요구된 것보다 낮습니다. min_update_version.
해결
- 기기 기준선을 설치된 네이티브 앱 버전과 일치시키거나
CapacitorUpdater.version) 또는 채널 전략을 조정하십시오. - 관련 문서:
min_update_version채널: 자동 업데이트 전략 차단
Section titled “네이티브 앱 버전 하위 자동 업데이트 차단”
disable_auto_update_under_native
Channels: Disable Auto Update strategies원인
채널은 원본 기준 하위 버전으로 다운그레이드하는 것을 방지합니다.
해결
- 원본 기준보다 높은 버전의 배포본을 업로드하거나, 또는 해당 채널에 대해 "원본 기준 하위 버전으로 다운그레이드 방지"를 비활성화하세요.
- 관련 문서:
버전 대상: 자동 다운그레이드 방지
cannot_update_via_private_channel
원인선택된/기본 채널은 장치 자체 할당을 허용하지 않습니다.
해결
다른 채널을 사용하여 장치 자체 할당을 허용하거나
- __CAPGO_KEEP_0__
- 채널을 공개하거나 자체 할당을 활성화하세요.
관련 문서:
unknown_version_build / semver_error
“unknown_version_build / semver_error”라는 제목의 섹션원인
기기 기본 버전이 누락되거나 (unknown) 또는 semver가 유효하지 않습니다. 해결.
유효한 semver로 설정하세요.
- Channels: 앱에서 setChannel() 사용하기
plugins.CapacitorUpdater.versionunknown_version_build / semver_error Device baseline version is missing ( 같이1.2.3. - 네이티브 앱을 다시 빌드하세요.
관련 문서:
unsupported_plugin_version
제목이 "unsupported_plugin_version"인 섹션원인
업데이터 플러그인 버전이 현재 백엔드 요구 사항에 맞지 않습니다.
수정
- 업그레이드
@capgo/capacitor-updater. - 실행
npx cap sync. - 네이티브 앱을 다시 빌드하고 재설치하세요.
disabled_platform_ios / disabled_platform_android
플랫폼이 비활성화되었습니다 (disabled_platform_ios / disabled_platform_android)원인
채널에서 해당 플랫폼의 업데이트를 비활성화했습니다.
해결
- 채널에서 플랫폼을 활성화하십시오.
disable_prod_build / disable_dev_build / disable_device / disable_emulator
빌드 유형이나 런타임 타겟이 채널에 의해 금지되었습니다 (disable_prod_build / disable_dev_build / disable_device / disable_emulator)원인
채널 옵션을 테스트 타겟과 일치시키십시오.
키 ID가 일치하지 않습니다 (key_id_mismatch)
- 채널 옵션을 테스트 타겟과 일치시키십시오.
allow_prod,allow_dev,allow_device,allow_emulator해결
key_id_mismatch
채널 옵션을 테스트 타겟과 일치시키십시오.원인
앱 구성과 번들 암호화 워크플로에서 사용하는 암호화 키/공개 키가 다릅니다.
해결
- 앱 구성과 번들 암호화 워크플로에서 동일한 암호화 키/공개 키를 사용하십시오.
no_channel / null_channel_data
no_channel / null_channel_data원인
장치에 대한 유효한 채널이 해결되지 않았습니다.
해결
- 클라우드 기본 채널을 설정하거나
- 테스트 빌드에서
defaultChannel장치에 대한 채널 오버라이드 할당 - 설정
관련 문서:
on_premise_app
원격 업데이트 채널온프레미스 앱
원인 on_premise_app백엔드에서 HTTP 429이 반환되었습니다.
- App ID does not exist in Capgo 앱 ID가 __CAPGO_KEEP_0__에 존재하지 않습니다.
app_id— 장치에서 보내는 __CAPGO_KEEP_0__는 등록되지 않았기 때문에 백엔드에서 기록하지 못했습니다. - 앱이 온프레미스로 표시되어 있습니다. — 앱이 있지만 자체 호스팅 업데이트로 구성되어 있기 때문에 Capgo 클라우드 엔드포인트는 이를 제공하지 않습니다.
- 조직 플랜이 취소되었습니다. — 앱의 조직이 더 이상 활성 구독을 가지고 있지 않습니다.
일반적인 오류
오류 plugins.CapacitorUpdater.appId ( capacitor.config.ts) or a mismatch with the app ID registered in the Capgo dashboard. The backend cannot distinguish “unknown app” from “on-premise app”, so it returns the same error code.
수정
- 다음과 같이 __CAPGO_KEEP_0__ 대시보드에 표시된 것과 정확히 일치하는지 확인하세요.
app_idmatches exactly what is shown in the Capgo dashboard (case-sensitive). - 앱이 의도적으로 온프레미스 앱일 경우,
npx @capgo/cli@latest app add. - __CAPGO_KEEP_0__ 클라우드 URL 대신 자체 호스팅 업데이트 엔드포인트를 설정하세요.
plugins.CapacitorUpdater.updateUrlto your self-hosted update endpoint instead of the Capgo cloud URL. - __CAPGO_KEEP_1__
빠른 진단 체크리스트
빠른 진단 체크리스트 섹션- 빌드에 대한 앱 ID 및 채널이 올바른지 확인하세요.
- 확인
CapacitorUpdater.version설치된 네이티브 앱 버전과 일치하는지 확인합니다. - 채널 정책 (
disable_auto_update)이 의도한 롤아웃과 일치하는지 확인하세요. - 플랫폼/빌드 대상 설정이 이 기기에 허용하는지 확인하세요.
- 실행
npx @capgo/cli@latest app debugand read backend error code.
더 많은 도움이 필요하세요?
더 많은 도움이 필요하세요?일반 업데이트 문제에서 계속
일반 업데이트 문제에서 계속Capgo를 사용하여 Capgo를 사용하여 Capgo 플러그인 디렉토리 Using @capgo/capacitor-updater for the native capability in Using @capgo/capacitor-updater, Capgo Plugin Directory Capgo Capacitor Plugins by Capgo 구현 세부 사항에 대한 Capacitor 플러그인에 대한 Capgo 플러그인 추가 또는 업데이트 플러그인 추가 또는 업데이트에 대한 구현 세부 사항 및 아이오닉 엔터프라이즈 플러그인 대체 아이오닉 엔터프라이즈 플러그인 대체에 대한 제품 워크플로우.