J'obtiens l'erreur suivante.
EXCEPTION FATALE: principale
voici mon build.gradle, j'ai activé le multidex dans la partie Android,
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 23
buildToolsVersion '23.0.0'
defaultConfig {
applicationId "com.mycompany.newlogin"
minSdkVersion 15
targetSdkVersion 22
versionCode 1
versionName "1.0"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
}
useLibrary 'org.Apache.http.legacy'
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.Android.support:multidex:1.0.0'
compile 'com.google.guava:guava-jdk5:17.0'
compile 'com.Android.support:appcompat-v7:23.0.1'
compile 'com.Android.support:design:23.0.1'
//compile 'org.Apache.httpcomponents:httpcore:4.4.1'
compile 'org.Apache.httpcomponents:httpclient:4.5'
compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.Apache.http.client:4.1.2'
}
et mon fichier manifeste est
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
package="com.mycompany.newlogin" >
<uses-permission Android:name="Android.permission.INTERNET"/>
<application
Android:allowBackup="true"
Android:icon="@mipmap/ic_launcher"
Android:label="@string/app_name"
Android:theme="@style/AppTheme"
Android:name="Android.support.multidex.MultiDexApplication">
<activity
Android:name=".MainActivity"
Android:label="@string/app_name" >
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
Android:name=".Login"
Android:label="@string/title_activity_login" >
</activity>
<activity
Android:name=".Register"
Android:label="@string/title_activity_register" >
</activity>
</application>
</manifest>
créer une classe permet de la nommer App
et d'étendre à partir de MultiDexApplication
comme ceci:
import Android.support.multidex.MultiDexApplication;
public class App extends MultiDexApplication {
//you can leave this empty or override methods if you like so the thing is that you need to extend from MultiDexApplication
}
dans votre manifeste, ajoutez App
comme nom d'application comme ceci
<application
Android:name=".App" // <<< this is the important line!
Android:allowBackup="true"
Android:icon="@mipmap/ic_launcher"
Android:label="@string/app_name">
Après avoir tout ajouté, faites une construction propre et cela devrait fonctionner maintenant :).
Remplacez la méthode attachBaseContext dans votre classe d'application
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}