Sejak saya upgrade proyek dengan versi terbaru dari layanan google dan perpustakaan (9.0.0), saya memiliki masalah ini aneh :
Kelas konsol :
:app:processDebugGoogleServices
Parsing json file: /Users/cyrilmorales/Documents/Projects/mobilemeans-punainenristi/app/google-services.json
:app:processDebugGoogleServices FAILED
Error:Execution failed for task ':app:processDebugGoogleServices'.
> Missing api_key/current_key object
Information:BUILD FAILED
membangun.gradle (root) :
dependencies {
classpath 'com.android.tools.build:gradle:2.2.0-alpha1'
classpath 'com.google.gms:google-services:3.0.0'
}
membangun.gradle (aplikasi) :
dependencies {
....
compile 'com.google.android.gms:play-services-analytics:9.0.0'
compile 'com.google.android.gms:play-services-gcm:9.0.0'
compile 'com.google.android.gms:play-services-maps:9.0.0'
compile 'com.google.android.gms:play-services-location:9.0.0'
...
}
apply plugin: 'com.google.gms.google-services'
Namun, ia bekerja dengan baik dengan bermain layanan perpustakaan di 8.4.0 dan google-jasa 2.1.0
Apakah anda memiliki ide dari solusi ?
Menghasilkan berkas konfigurasi baru (google-jasa.json) dari: https://developers.google.com/cloud-messaging/android/client#get-config
Baru config dengan "api_key": [ { "current_key": XXX } ]
di bagian klien
Update: atau secara manual diaktifkan layanan di konsol pengembang dan menghasilkan kunci.
Menambahkan kosong saat ini nilai kunci di google-jasa.file json memecahkan masalah ini untuk saya
"api_key": [{ "current_key": "," }]
Untuk semua orang yang memiliki masalah ini, untuk saat ini, anda'akan perlu untuk menambahkan layanan ke aplikasi anda di https://developers.google.com/cloud-messaging/android/client#get-config
Dalam kasus saya saya telah menambahkan admob (sudah memiliki analisis dan gcm) dan kemudian file yang dihasilkan dengan api_key.
Saya pikir's's bug dan akan segera diperbaiki, sampai yang melakukannya.
Meskipun Jozka Jozin's jawaban yang diterima dan komentar, Cloud Messaging tidak berhubungan dengan atau diperlukan.
Namun demikian, kembali menghasilkan-google-jasa.json
ini adalah kunci untuk solusi (agar aku memilih dia). Di bawah ini adalah apa yang saya lakukan:
Seperti yang anda tahu, anda dapat menghasilkan file konfigurasi untuk Analisis dari Google Developers Guide.
1: Memilih aplikasi anda.
2: Menutup popup! Menyembunyikan...
3: PILIHAN ADMOB!
4: Tentu saja, pilih dan aktifkan!
5: Sekarang kita benar dapat menghasilkan file-file konfigurasi!
6: Kita berhasil! Saat ini, file konfigurasi harus mencakup api_key tepat.
Kesimpulan: UI interaktif generasi alat ini sedikit membingungkan...
Anda dapat men-download google-jasa.json
file lagi.
Langkah-langkah untuk men-download:
1). Klik pada bagian atas menu di aplikasi anda dalam Firebase
Konsol.
2). Klik kelola.
3). Anda akan menemukan Download terbaru config
option file, men-download dan mengganti google-jasa.json
file dalam aplikasi anda.
Pertama di file JSON
Mengganti
"api_key": []
dengan
"api_key": [{ "current_key": "" }]
Maka gradle membangun akan berhasil tapi ketika anda menjalankan aplikasi anda, anda mungkin mendapatkan error seperti berikut..
Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/LICENSE
File1: C:\Users\bucky\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.core\jackson-core\2.2.2\d20be6a5ddd6f8cfd36ebf6dea329873a1c41f1b\jackson-core-2.2.2.jar
File2: C:\Users\bucky\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.core\jackson-databind\2.2.2\3c8f6018eaa72d43b261181e801e6f8676c16ef6\jackson-databind-2.2.2.jar
File3: C:\Users\bucky\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.core\jackson-annotations\2.2.2\285cb9c666f0f0f3dd8a1be04e1f457eb7b15113\jackson-annotations-2.2.2.jar
Untuk memperbaiki masalah ini, anda dapat menambahkan kode berikut ke aplikasi anda.gradle.. Itu bekerja untuk saya.
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/notice.txt'
exclude 'META-INF/ASL2.0'
}
Edit: Itu menunjukkan saya beberapa kesalahan kemudian sambil membangun file apk. Jadi saya harus men-download file json lagi. Setelah 2 percobaan saya punya file json dengan kunci api valid.
Anda perlu menambahkan SHA sertifikat sidik jari untuk proyek anda dan kemudian download google-jasa.jason file lagi, yang harus berisi "api_key": [{ "current_key": "xxxxxx" }] secara otomatis.
Anda dapat melihat halaman berikut untuk melihat bagaimana untuk menghasilkan sidik jari:
https://developers.google.com/android/guides/client-auth
Pada windows, hanya menjalankan perintah berikut, dan menggunakan android sebagai password untuk debug tujuan:
keytool -exportcert -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore
Saya bisa memecahkan masalah ini dengan langkah-langkah yang tidak terjawab di sini. Jawaban ini TIDAK memungkinkan Cloud Messaging, hanya mengambil server kunci.
Jadi pertama, pergi ke Firebase Konsol, dan kemudian pergi ke Pengaturan Proyek, dan kemudian klik pada tab "Cloud Messaging". Lihatlah di mana itu mengatakan "server kunci" dan jika tidak ada panjang kunci menampilkan (bukan "ID Pengirim" jumlah) klik "Meregenerasi Kunci", dan panjang kunci harus sekarang menunjukkan. Salin kunci itu dan menempatkannya di google-jasa.file json di: "api_key": [ {"current_key" : "kunci yang masuk dari sini,"} ]
.
Metode ini membantu saya untuk sementara tidak ada orang lain yang bekerja, jadi mudah-mudahan ini akan membantu seseorang.
regenerasi google-jasa.json di https://developers.google.com/cloud-messaging/android/client#get-config,**salah satu hal yang penting adalah bahwa anda harus mengaktifkan Cloud Messaging di "Memilih layanan" langkah** ,buka google baru-jasa.file json anda akan melihat kata-kata seperti
"api_key": [
{
"current_key": "xxxxxxxxxxx"
}"
tanpa kata-kata atau tanpa nilai current_key tidak file yang tepat
GoogleServices'. > Missing api_key/current_key object
Aku punya kesalahan ini setelah memperbarui yang sudah ada proyek baru Firebase Jasa.
Yang dihasilkan google-layanan.json file yang di-download dari firebase proyek pengaturan halaman tidak termasuk api_key
yang dibutuhkan.
Dari jawaban yang lain di sini sepertinya Google/Firebase Cloud Pesan (GCM/FCM) perlu ditambahkan untuk ini
api_key
untuk dimasukkan digoogle-layanan.json
file.
Jadi saya menambahkan dependensi pada firebase FCM sebelum men-download file lagi, dan kali ini kunci dimasukkan.
Termasuk FCM (GCM)
dependencies {
compile 'com.google.firebase:firebase-messaging:9.0.0'
}
Jika anda don't ingin mengkonfigurasi ulang dan men-download google-jasa.json
file maka anda dapat mengambil kunci api langsung dari firebase konsol. Hanya pergi ke
Gambaran > Menambahkan Aplikasi lain > Web
Anda akan mendapatkan konfigurasi untuk database anda yang akan berisi apiKey
. Hanya menyalin nilai dan menempatkannya di current_key
nilai dilambangkan oleh XXX di bawah ini
"api_key": [{ "current_key": "XXX" }]
Jika anda menggunakan firebaes, anda harus menyalin serverKey dari firebase ke google-jasa.json
"api_key": [{ "current_key": "SERVER_KEY"}
Untuk mendapatkan Kunci server, Goto ProjectOverview> Proyek Pengaturan > CloudMessaging > Copy ATAU generate dan copy serverKey..