[Android] فشل GoogleService في التهيئة


Answers

[من Product Manager @ Google]

يمكنك حل هذه المشكلة عن طريق تنزيل ملف google-services.json ونسخه لتطبيق Android من خلال اتباع الخطوات التالية:

  • حدد اسم التطبيق / المشروع و packagename Android من developer.google.com وانقر على " Continue to Choose and configure services .
  • انقر فوق " Continue to Generate Configuration files .
  • قم بتنزيل google-services.json وانسخ الملف إلى دليل app/ أو mobile/ الوحدة في مشروع Android الخاص بك.

إذا سبق لك استيراد مشروع Google إلى Firebase ، فيمكنك الحصول على google-services.json المحدَّث من وحدة تحكم Firebase ضمن إعدادات Project.

لا تنشر الرقم PROJECT_NUMBER كما هو مقترح من أحد الإجابات الأخرى لأن google_app_id يشير إلى تطبيقك داخل المشروع وليس المشروع نفسه.

Question

أستخدم تطبيق خرائط Google في تطبيق Android. لقد قمت بإنشاء المفتاح وإضافة الأذونات الضرورية في ملف البيان. ولكن سرعان ما أبدأ التطبيق أحصل على هذه الرسالة في المصحح:

أخفقت GoogleService في التهيئة ، الحالة: 10 ، تفتقد موردًا متوقعًا: "R.string.google_app_id" لتهيئة خدمات Google. هناك أسباب محتملة في عداد المفقودين google-services.json أو com.google.gms.google-plugin for gradle plugin.

لست متأكدا ما الخطأ. الخريطة تعمل بشكل جيد ويمكنني استخدامها دون أي مشاكل. يحتوي ملف gradle الخاص بي على هذا الإدخال:

compile 'com.google.android.gms: play-services: 8.4.0'

ما هو الشكوى وكيف أقوم بتخفيفها؟




التقيت نفس المشكلة وحلها اتبع https://developers.google.com/cloud-messaging/android/client .

فيما يلي الخطوات:

  1. احصل على ملف التهيئة google-services.json من هذا الرابط .

  2. انسخ ملف google-services.json الذي نزّلته للتو في التطبيق / أو الجوال / دليل مشروع Android Studio.

  3. أضف التبعية إلى build.gradle على مستوى المشروع:

    classpath 'com.google.gms:google-services:1.5.0-beta2'
    
  4. إضافة المكوِّن الإضافي إلى build.gradle على مستوى التطبيق:

    apply plugin: 'com.google.gms.google-services'
    
  5. أضف هذه التبعية إلى build.gradle على مستوى التطبيق:

    dependencies {
        compile "com.google.android.gms:play-services:8.3.0"
    }
    



بالنسبة لأولئك الذين يواجهون هذه المشكلة حتى بعد إعداد خدمات اللعب بشكل صحيح ووضع ملف google-services.json في مجلد project/app ، فإن الحل الفعلي هو

Build > Rebuild Project

ربما يرجع ذلك إلى حقيقة أن السلاسل من ملف json غير مدمجة في الموارد المترجمة حتى يتم إجراء إعادة بناء كاملة.




الإصلاح السريع الذي استخدمته هو تعطيل التوقيع. إذا كنت لا تريد إنشاء رمز إنتاج ، فيمكنك تعيين متغير البنية الخاص بك للتصحيح أو localOldDebug أو localDebug.

انقر على "إنشاء أشكال" في الجزء السفلي الأيسر في Android Studio.

how-to-disable-generated-signed-apk-android-studio




كان لي نفس المشكلة في ذلك الوقت. كان قادرا على حلها عن طريق استخدام مكتبة خدمات اللعب اللازمة فقط ، والتي في حالتي GCM.

بدلاً من com.google.android.gms:play-services:8.4.0 ، أستخدم com.google.android.gms:play-services-gcm:8.4.0 . انظر here لمزيد من المعلومات ؛ هذا أيضا يحل مشكلة multidex.

ثم قمت بتطبيق كل منRadix و @ Alexander's approach لإزالة الرسالة GCM التي تم إخراجها في logcat فيما يتعلق بـ google-services.json .