Noriu pridėti susiliejusias vietos nustatymo paslaugas, bet man rodo tam tikrą klaidą. Padėkite man.
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion "27.0.1"
defaultConfig {
applicationId "com.example.adil.bloodbankapplication"
minSdkVersion 15
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:26.1.0'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.google.firebase:firebase-auth:11.8.0'
compile 'com.google.firebase:firebase-database:11.8.0'
compile 'com.android.support:support-v4:26.1.0'
compile 'junit:junit:4.12'
compile 'com.android.support:design:26.1.0'
compile 'com.github.joielechong:countrycodepicker:2.1.5'
compile 'com.jaredrummler:material-spinner:1.2.4'
compile 'hanks.xyz:htextview-library:0.1.5'
compile 'com.firebaseui:firebase-ui-database:1.2.0'
compile 'com.google.android.gms:play-services:11.8.0'
}
apply plugin: 'com.google.gms.google-services'
Nė vienas iš jų pateiktų atsakymų nebuvo išsamus. Problema slypi "Multidex". Turite pridėti biblioteką į app gradle :
implementation 'com.android.support:multidex:1.0.3'
Po to pridėkite į app gradle defaultConfig :
multiDexEnabled true
Jūsų programa turi būti Multidex tipo.. Jūs turite tai įrašyti į manifestą :
android:name=".MyApplication"
"MyApplication" turi būti arba Multidex klasė, arba ją išplėsti.
Sveiki problema yra čia pašalinti jį
compile 'com.google.android.gms:play-services:11.8.0'
kodėl?
Pastaba: Nenaudokite jungtinio žaidimo ir paslaugų tikslo. Jis įtraukia dešimtis bibliotekų ir išpučia jūsų programą. Vietoj to nurodykite tik konkrečias "Google Play" paslaugų API, kurias naudoja jūsų programa.
Ir naudokite tai, ko jums reikia.https://developers.google.com/android/guides/setup
Pavyzdžiui, vietos nustatymo paslaugai
com.google.android.gms:play-services-location:11.8.0
Debesų pranešimų siuntimo paslaugai
com.google.android.gms:play-services-gcm:11.8.0
Jūs turite per daug metodų. "Android" dex faile leidžiama turėti ne daugiau kaip 65536 metodus.
Pirmiausia, jei jums nereikia visos "Google Play Services API", o tik vietos, pakeiskite
compile 'com.google.android.gms:play-services:11.8.0'
į
compile 'com.google.android.gms:play-services-location:11.8.0'
Šiame puslapyje galite rasti būdų, kaip to išvengti arba, jei reikia, leisti daugiau: https://developer.android.com/studio/build/multidex.html.