콘텐츠로 건너뛰기

Problemi noti

Ionic 실시간 리로드

  • 개발할 때 CLI에서 Ionic 실시간 리로드 기능을 사용하면 플러그인을 덮어쓰므로 업데이트가 반영되지 않습니다

Quasar 실시간 리로드

  • 내부적으로 Ionic과 동일한 시스템을 사용하므로 업데이트가 반영되지 않습니다

업데이트 실패

  • 일반적으로 큰 업데이트(> 20mb)를 푸시할 때 발생하며, 많은 사용자가 최신 버전을 받지 못합니다
    이전에는 사용자가 다운로드가 완료될 때까지 앱을 열어두어야 했지만, 이제는 백그라운드 다운로드를 사용합니다. 하지만 여전히 몇 초로 제한됩니다

Android

다운로드 불가

인도의 기기에서 문제가 발생했고, 사용자와 통화하여 다른 DNS 서버를 시도하게 했더니 작동했습니다

따라서 문제가 있다면 Cloudflare나 Google DNS와 같은 다른 DNS 서버를 사용해보세요

Cloudflare: 1111 및 1001

Google DNS: 8888 및 8844 또는 dnsgoogle

자체 호스팅

자체 호스팅 업데이트를 푸시할 때, Android 앱의 보안 정책 때문에 “HTTP” 엔드포인트를 사용할 수 없다는 점을 유의하세요. 그래도 사용하고 싶다면 이 가이드를 따르세요:

압축 해제

압축 해제 문제: DEFLATED entries can have EXT descriptor

CLI가 아닌 다른 방법으로 번들을 압축했다면 zip 형식이 잘못되었을 수 있습니다. CLI 명령어 npx @capgo/cli zip BUNDLE_FOLDER를 사용하세요

이는 Java의 알려진 문제입니다:

Clearfix 문제

  • usesCleartextTraffic 문제가 있다면, 플러그인이 sonar cloud에서 권장하는 모범 사례를 따르기 때문입니다. 90%의 경우에는 잘 작동하지만 일부 플러그인에서 문제가 발생할 수 있습니다

해결하려면 android/app/src/main/AndroidManifestxml<application> 키에 다음을 추가하세요:

tools:replace="android:usesCleartextTraffic"
xmlns:tools="http://schemasandroidcom/tools"

IOS

개인정보 보호 매니페스트

Privacy Manifest(일반적으로 ios/App/PrivacyInfoxcprivacy)에 NSPrivacyAccessedAPICategoryUserDefaults 사전 키를 추가하세요:

<?xml version="10" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 10//EN" "http://wwwapplecom/DTDs/PropertyList-10dtd">
<plist version="10">
<dict>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<!-- 파일이 이미 존재하는 경우 배열에 이 dict 항목을 추가하세요 -->
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>CA921</string>
</array>
</dict>
</array>
</dict>
</plist>

UserDefaults API 접근 이유로 CA921을 선언하는 것을 권장합니다

네트워크 권한

업데이트 테스트를 위해 로컬 서버를 사용할 때 앱이 네트워크 권한을 요청하는 것은 정상적인 동작입니다. 원격 서버를 사용할 때는 이런 일이 발생하지 않습니다

양쪽 OS

수동 모드 업데이트를 할 때 일부 이벤트를 캐치하기가 어렵습니다. 예를 들어 업데이트 실패는 JS 코드가 리로드되기 직전에 트리거되므로 캐치할 수 없습니다

대안으로 번들을 나열하고 오류 통계를 확인하여 업데이트 실패 여부를 알 수 있습니다

향후 더 나은 방법을 찾아야 하지만, 자동 모드가 권장되는 업데이트 방법이므로 우선순위는 아닙니다

PR을 통해 개선에 도움을 주시면 환영합니다

CLI

CLI에 문제가 있다면,

capacitorconfigtsappIdappName이 있는지 확인하세요

공식 문서의 가이드를 따르세요: