Voglio aggiungere i servizi di localizzazione fusi ma mi mostra un errore. Aiutatemi.
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'
Nessuna delle risposte che ti hanno dato era esaustiva. Il problema sta nel Multidex. Devi aggiungere la libreria nell'app gradle :
implementation 'com.android.support:multidex:1.0.3'
Dopo, aggiungere nel defaultConfig dell'app gradle :
multiDexEnabled true
La tua applicazione deve essere di tipo Multidex. Dovete scriverlo nel manifesto:
android:name=".MyApplication"
"MyApplication" deve essere o la classe Multidex, o deve estenderla.
Ciao il problema è qui rimuovilo
compile 'com.google.android.gms:play-services:11.8.0'
perché?
Nota: Non usare l'obiettivo combinato play-services. Porta decine di librerie, gonfiando la tua applicazione. Invece, specificate solo le specifiche API dei servizi Google Play che la vostra applicazione utilizza.
E usate quello che vi serve.https://developers.google.com/android/guides/setup
Come per il servizio di localizzazione
com.google.android.gms:play-services-location:11.8.0
Per la messaggistica cloud
com.google.android.gms:play-services-gcm:11.8.0
Hai troppi metodi contati. Il file dex di Android ha un limite di 65536 metodi che puoi avere.
Per cominciare, se non hai bisogno di tutte le API di Google Play Services e solo della posizione, sostituisci
compile 'com.google.android.gms:play-services:11.8.0'
con
compile 'com.google.android.gms:play-services-location:11.8.0'
Puoi fare riferimento a questa pagina per i modi per evitarlo o, se necessario, per permetterne di più: https://developer.android.com/studio/build/multidex.html