알려진 문제
Ionic 라이브 리로드
Section titled “Ionic 라이브 리로드”- 개발 시 CLI의 Ionic 라이브 리로드 기능을 사용하면 플러그인이 재정의되므로 업데이트를 볼 수 없습니다.
Quasar 라이브 리로드
Section titled “Quasar 라이브 리로드”- 내부적으로 ionic과 동일한 시스템을 사용하므로 업데이트를 볼 수 없습니다.
업데이트 실패
Section titled “업데이트 실패”- 일반적으로 큰 업데이트(> 20mb)를 푸시할 때 발생하며, 상당한 비율의 사용자가 최신 버전을 받지 못합니다. 과거에는 사용자가 다운로드가 완료될 때까지 앱을 열어두어야 했지만, 이제는 백그라운드 다운로드를 사용하지만 여전히 몇 초로 제한됩니다.
Android
Section titled “Android”다운로드할 수 없음
Section titled “다운로드할 수 없음”인도의 일부 기기에서 문제를 발견했고, 사용자와 통화하여 다양한 DNS 서버를 시도하게 했더니 작동했습니다.
따라서 문제가 있다면 Cloudflare 또는 Google DNS와 같은 다른 DNS 서버를 사용해 보세요.
Cloudflare: 1.1.1.1 및 1.0.0.1
Google DNS: 8.8.8.8 및 8.8.4.4 또는 dns.google
자체 호스팅
Section titled “자체 호스팅”자체 호스팅 업데이트를 푸시할 때 “HTTP” 엔드포인트를 사용할 수 없다는 점에 유의하세요. 이는 Android 앱의 보안 정책에 위배됩니다. 그래도 사용하려면 다음 가이드를 따르세요:
압축 해제 문제: DEFLATED 항목에 EXT 설명자가 있을 수 있습니다
CLI가 아닌 다른 것으로 번들을 압축한 경우 zip의 형식이 올바르지 않을 수 있습니다. CLI 명령 npx @capgo/cli zip BUNDLE_FOLDER를 사용하세요.
이것은 Java의 알려진 문제입니다:
Clearfix 문제
Section titled “Clearfix 문제”- usesCleartextTraffic 문제가 있는 경우, 플러그인이 sonar cloud에서 권장하는 모범 사례를 따르기 때문입니다. 90%의 경우 잘 작동하지만 일부 플러그인에서는 문제가 발생합니다.
이를 수정하려면 android/app/src/main/AndroidManifest.xml의 <application> 키에 다음을 추가하세요:
tools:replace="android:usesCleartextTraffic"xmlns:tools="http://schemas.android.com/tools"개인정보 보호 매니페스트
Section titled “개인정보 보호 매니페스트”NSPrivacyAccessedAPICategoryUserDefaults 딕셔너리 키를 개인정보 보호 매니페스트(일반적으로 ios/App/PrivacyInfo.xcprivacy)에 추가하세요:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"> <dict> <key>NSPrivacyAccessedAPITypes</key> <array> <!-- 파일이 이미 존재하는 경우 이 dict 항목을 배열에 추가합니다. --> <dict> <key>NSPrivacyAccessedAPIType</key> <string>NSPrivacyAccessedAPICategoryUserDefaults</string> <key>NSPrivacyAccessedAPITypeReasons</key> <array> <string>CA92.1</string> </array> </dict> </array> </dict></plist>UserDefaults API에 액세스하는 이유로 CA92.1을 선언하는 것이 좋습니다.
네트워크 권한
Section titled “네트워크 권한”업데이트 테스트를 위해 로컬 서버를 사용할 때 앱이 네트워크 권한을 요청하는 것은 정상적인 동작입니다. 원격 서버를 사용할 때는 그렇지 않습니다.
두 OS 모두
Section titled “두 OS 모두”수동 모드 업데이트를 수행할 때 일부 이벤트는 포착하기 어렵습니다. 예를 들어 업데이트 실패는 JS 코드가 다시 로드되기 직전에 트리거되므로 포착할 수 없습니다.
한 가지 대안은 번들 목록을 나열하고 오류 통계를 확인하여 업데이트가 실패했는지 알아보는 것입니다.
향후 이를 처리하는 더 나은 방법을 찾아야 하지만, 자동 모드가 권장되는 업데이트 방법이므로 우선순위는 아닙니다.
이를 개선하는 데 도움이 되는 PR을 환영합니다.
CLI가 무언가를 수행하는 데 문제가 있는 경우,
capacitor.config.ts에 appId 및 appName이 있는지 확인하세요.
공식 문서의 가이드를 따르세요: