메뉴로 바로가기

문제 해결

GitHub

ITMS-91056(Invalid Privacy Manifest)라는 제목의 섹션

ITMS-91056(Invalid Privacy Manifest)

If App Store Connect reports this error:

ITMS-91056: Invalid privacy manifest - The PrivacyInfo.xcprivacy file from the following path is invalid: …

앱 수준을 확인하세요. PrivacyInfo.xcprivacy 파일:

  • 파일은 유효한 JSON이어야 합니다.
  • Apple-documented 키와 값만 사용하세요.
  • 플러그인 패키지에 개인 정보 매니페스트를 추가하지 마세요. 앱에 추가하세요.

See 개인 정보 매니페스트 및 iOS URL 핸들러 Google Play Console AD_ID 권한 오류

Section titled “Google Play Console AD_ID permission error”

개인 정보 매니페스트와 iOS URL 핸들러

After submitting an app to Google Play, you may see:

Google Api Error: Invalid request - This release includes the com.google.android.gms.permission.AD_ID permission
but your declaration on Play Console says your app doesn't use advertising ID.

Facebook SDK에는 AD_ID 광고와 광고 관련된 권한이 포함되어 있습니다. Facebook 로그인 기능을 사용하지 않는 경우 Facebook 제공자를 capacitor.config.ts:

import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = {
plugins: {
SocialLogin: {
providers: {
google: true,
facebook: false,
apple: true,
},
},
},
};
export default config;

그런 다음 다음 명령어를 실행하세요:

터미널 창
npx cap sync

플러그인은 실제 Facebook SDK 대신 스텁 클래스를 사용하므로 Facebook 의존성과 권한이 빌드에 포함되지 않습니다.

Android에서 Google Sign-In 28444

Android에서 Google Sign-In 28444

GetCredentialCustomException: [28444] Developer console is not set up correctly Google Credential Manager에서 설치된 APK의 서명 인증서, 패키지 이름 또는 webClientId Google Cloud Console과 일치하지 않습니다.

전체 Android Google 문제 해결 목록로그캣에서 로그인에 실패한 후 GoogleProvider; 플러그인은 package, signingSha1, 그리고 마스킹된 webClientId 을 비교하여 OAuth 클라이언트와 비교합니다.

가족 연결 LINK 관리 계정과 함께 Google Sign-In에 관한 섹션

가족 연결 LINK 관리 계정은 다음 문제로 실패할 수 있습니다.

NoCredentialException: No credentials available

가족 연결 계정과 함께 지원해야 하는 앱은 Google 로그인 호출에 대해 인증된 계정 필터링을 비활성화해야 합니다.

import { SocialLogin } from '@capgo/capacitor-social-login';
await SocialLogin.login({
provider: 'google',
options: {
style: 'bottom',
filterByAuthorizedAccounts: false,
scopes: ['profile', 'email'],
},
});

주요 점:

  • 설정 filterByAuthorizedAccounts 으로 false; 기본값은 true.
  • 플러그인은 standard 스타일이 실패하면 bottom 스타일이 실패할 경우 NoCredentialException.
  • 이 옵션은 Android에만 영향을 줍니다. iOS는 일반적으로 Family Link 계정을 처리합니다.
  • 오류 메시지가 플러그인을 비활성화하는 것을 제안할 때 filterByAuthorizedAccounts 이 실패가 감지될 때

액세스 토큰을 저장할 위치

Section titled “Access 토큰을 저장하는 곳”

Use @capgo/capacitor-persistent-account 앱이 액세스 토큰이나 리프레시 토큰을 안전하게 저장할 필요가 있는 경우 사용합니다.

Android에서는 Account Manager에 데이터를 저장하고, iOS에서는 Keychain에 데이터를 저장합니다.