Passer à la navigation

Troubleshooting

GitHub

Manuel de confidentialité non valide (ITMS-91056)

Section intitulée « Manuel de confidentialité non valide (ITMS-91056) »

Si App Store Connect signale cette erreur :

ITMS-91056 : Manuel de confidentialité non valide - Le fichier PrivacyInfo.xcprivacy provenant du chemin suivant est invalide : …

Vérifiez votre niveau d'application PrivacyInfo.xcprivacy fichier :

  • Le fichier doit être un JSON valide.
  • Utilisez uniquement les clés et valeurs documentées par Apple.
  • N'ajoutez pas un manifeste de confidentialité au package du plugin ; ajoutez-l’à votre application.

Voir Privacy manifest and iOS URL handlers pour des exemples.

Après avoir soumis une application sur Google Play, vous pouvez voir :

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.

Le Facebook SDK inclut AD_ID et autres autorisations liées à la publicité. Si votre application ne utilise pas Facebook Login, désactivez le fournisseur Facebook dans capacitor.config.ts:

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

Then run:

Fenêtre de terminal
npx cap sync

Le plugin utilise des classes de substitution au lieu du vrai Facebook SDK, donc les dépendances et les autorisations Facebook ne sont pas incluses dans votre build.

GetCredentialCustomException: [28444] Developer console is not set up correctly le problème provient du gestionnaire de credenciaux Google lorsque le certificat de signature, le nom de package ou webClientId ne correspondent pas à la console Cloud Google.

Utilisez la version complète Android Google checklist de dépannageAprès un échec de connexion, filtrez Logcat pour GoogleProvider ; le plugin imprime package, signingSha1, et un masque webClientId pour comparer avec vos clients OAuth.

Les comptes Family Link gérés peuvent échouer avec :

NoCredentialException: No credentials available

Pour les applications qui doivent supporter les comptes Family Link, désactivez le filtrage des comptes autorisés pour l'appel de connexion Google :

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

Points clés :

  • Configurez filterByAuthorizedAccounts à false; la valeur par défaut est true.
  • Le plugin réessaye automatiquement avec standard si bottom si cela échoue avec NoCredentialException.
  • Ces options n'affectent que l'Android. Les comptes Family Link sont traités normalement sur iOS.
  • L'erreur suggère de désactiver filterByAuthorizedAccounts lorsque ce type d'échec est détecté.

Où stocker les jetons d'accès

Titré « Où stocker les jetons d'accès »

Utilisez @capgo/capacitor-compte persistant when your app needs native secure storage for access or refresh tokens.

Sur Android, il stocke les données dans le Gestionnaire de comptes. Sur iOS, il stocke les données dans le Keychain.