פתרון בעיות בהרשאה של ARCore API

בחירת פלטפורמה:

אם מתקבלת השגיאה ERROR_NOT_AUTHORIZED בתקשורת עם שרת ARCore API, צריך לוודא שהאפליקציה מכילה את הספרייה com.google.android.gms:play-services-auth:

  1. בונים את האפליקציה ובודקים את הארטיפקט שנוצר באמצעות APK Analyzer. מוודאים שהקובץ הבינארי של האפליקציה שנוצר כולל את החבילה com.google.android.gms.auth, ושלא בוצע שינוי לשם או למינימציה של התוכן שלה.
    • אם היא לא מופיעה, פועלים לפי ההוראות במאמר הכללת ספריות נדרשות ומוודאים שהספרייה כלולה והגדרות המיקוד נכונות.
  2. מציגים את פרטי האבטחה שנמצאים באובייקט היעד הפגום באמצעות הכלי keytool:

    keytool -printcert -jarfile artifact.aab
    keytool -printcert -jarfile artifact.apk
  3. מוודאים שטביעת האצבע של אישור SHA-1 תואמת לפרטי הכניסה שמשמשים במזהה הלקוח של OAuth 2.0 בפרויקט.

  4. מוודאים שהפעלתם את ARCore API בפרויקט הנכון ב-Google Cloud.

אם ההרשאה ללא מפתחות מצליחה בגרסאות build מסוימות אבל לא בגרסאות אחרות, צריך לוודא שהטביעת האצבע שמופיעה ב-artifact שנכשל תואמת לטביעת האצבע שמופיעה במסוף Google Cloud. קוראים את המאמר הרשאה ללא מפתח לא פועלת ופועלים לפי השלבים כדי לוודא שטביעת האצבע של מפתח החתימה של הארטיפקט תואמת לטביעת האצבע שמופיעה ב-Google Cloud.

אם ההרשאה ללא מפתח פועלת בגרסאות ה-build המקומיות, אבל לא אחרי ההעלאה לחנות Google Play כשהתכונה 'חתימת אפליקציות ב-Play' מופעלת, צריך לוודא שטביעת האצבע של האישור מסוג SHA-1 שרשומה בפרטי הכניסה של הפרויקט תואמת לטביעת האצבע שבה Google משתמשת כדי לחתום על האפליקציה:

מידע נוסף זמין במאמר Play App Signing.

אם ההרשאה של מפתח ה-API לא פועלת, יש לבצע את השלבים הבאים:

  • מוודאים שהפעלתם את ARCore API בפרויקט הנכון ב-Google Cloud.
  • אם יש לכם הגבלות על מפתחות API שהופעלו, משביתים אותן באופן זמני.
  • חשוב לוודא שמפתח ה-API שמופיע בפרטי הכניסה של הפרויקט תואם בדיוק למפתח ה-API שבו האפליקציה משתמשת, ללא רווחים או תווים אחרים.