2016-05-29 17 views
2

Wenn ich versuche, das Programm zu starten, bekomme ich Fehler 64k Ich weiß nicht, wie das zu lösen ist. Ich hatte die Entschlossenheit bereits versucht, aber es ist immer noch fehlgeschlagen und gibt mir mehr Fehler. Bitte helfen Sie mirFehler .dex überschreitet 64k android studio

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.3" 
    useLibrary 'org.apache.http.legacy' 

    defaultConfig { 
     applicationId "com.example.timslbl.geogencybaru" 
     minSdkVersion 16 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
     multiDexEnabled true 

    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'),'proguard-rules.pro' 

     } 
    } 
} 

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:multidex:1.0.0' 
    compile 'com.android.support:appcompat-v7:23.2.1' 
    compile 'com.android.support:design:23.1.1' 
    compile 'com.android.support:cardview-v7:23.2.1' 
    compile 'com.roughike:bottom-bar:1.2.1' 
    compile 'com.google.http-client:google-http-client-android:+' 
    compile 'com.google.api-client:google-api-client-android:+' 
    compile 'com.google.api-client:google-api-client-gson:+' 
    compile 'com.google.code.gson:gson:2.2.4' 
    compile 'com.google.android.gms:play-services:8.4.0' 
    compile 'com.android.support:support-v4:23.2.1' 
} 

Manifest

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.timslbl.geogencybaru"> 

    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

    <!-- Required to show current location --> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 

    <!-- Required OpenGL ES 2.0. for Maps V2 --> 
    <uses-feature 
     android:glEsVersion="0x00020000" 
     android:required="true" /> 

    <aplication 
     android:name="android.support.multidex.MultiDexApplication" 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:supportsRtl="true" 
     android:theme="@style/AppTheme"> 
     <activity android:name=".SplashActivity"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <meta-data 
      android:name="com.google.android.maps.v2.API_KEY" 
      android:value="" /> 

     <activity android:name=".MapActivity" /> 
     <activity android:name=".MainActivity"></activity> 
     <activity android:name=".LoginActivity"></activity> 
     <activity android:name=".RegisterActivity"></activity> 
    </aplication> 
</manifest> 

Dies ist der Fehler, den ich nach dem Willen versuchen bekam enter image description here

Antwort

0

ich sehr empfehlen nicht compile 'com.google.android.gms:play-services:8.4.0' zu kompilieren, wie es ist,

, die eine der Hauptursache für 64K method dex limit.

Die separaten Compilations über play-services selbst aufgeführt wird Here ist, verwenden Sie das, die Sie wirklich nicht brauchen als Kompilieren der ganzen play-services.

0

Ist Ihr Projekt eine sehr große? Ich vermute, dass das Methodenlimit von 64k überschritten wird. Schauen Sie sich die this Dokumentation an. Es kann helfen.