Android: ne peut pas résoudre le problème de 65k

J'étais là depuis deux jours maintenant. J'ai essayé toutes les solutions liées au multi-dexing et donc, mais sans succès. J'ai tout retiré afin que je puisse faire un nouveau départ.

App gradle:

  • L'adaptation ne peut pas se connecter à mon serveur Web local sur le port 3000
  • Comment puis-je ajouter "Projet Android" au menu Fichier> Nouveau> _____ dans Eclipse?
  • Android Databinding: "Méthode de référence utilisant '.' Est obsolète "
  • Eclipse et Android SDK problème "aapt.exe s'est arrêté"
  • PopBackStack () après saveInstanceState ()
  • Changer les onglets ActionBar couleur d'arrière-plan
  • apply plugin: 'com.android.application' android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { applicationId "com.bilboldev.joestrategy" minSdkVersion 15 targetSdkVersion 21 versionCode 1 versionName "1.0" multiDexEnabled true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile 'com.android.support:multidex:1.0.1' compile 'com.android.support:appcompat-v7:22.0.0' compile 'com.google.android.gms:play-services-ads:9.0.0' } apply plugin: 'com.google.gms.google-services' 

    Projet gradle:

     buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.1.0' classpath 'com.google.gms:google-services:3.0.0' } } allprojects { repositories { jcenter() } } 

    À l'intérieur:

      <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <application android:name="android.support.multidex.MultiDexApplication" ... 

    La solution la plus commune que j'ai lu était de ne pas inclure tous les services Google, juste ce dont vous avez besoin. Et donc je compile seulement les annonces. Mais cela ne fonctionne toujours pas.

    Certaines des classes ne sont pas trouvées:

    E / dalvikvm: Impossible de trouver la classe 'android.os.UserManager', référencé à partir de la méthode com.google.android.gms.common.zze.zzan

    E / dalvikvm: Impossible de trouver la classe 'android.app.AppOpsManager', référencé à partir de la méthode com.google.android.gms.internal.zzpv.zzg

    E / dalvikvm: Impossible de trouver la classe 'com.google.android.gms.internal.zzamq', référencée à partir de la méthode com.google.android.gms.internal.zzdi.zze

    etc…

    J'ai essayé toutes les approches que j'ai trouvées, dont l'une est la suivante . J'ai également utilisé le plugin dexcount mentionné à la fin pour compter les méthodes dans mon application. Je ne sais pas comment attacher un fichier à une question afin que vous puissiez télécharger le debug.txt à partir d' ici .

    Remarque: Je pense qu'il s'agit d'un problème de limitation de 65k car, sur un mobile Android 4,4, les annonces s'affichent et les erreurs ne s'affichent pas dans Logcat. Mais sur deux mobiles mobiles 4.2, les annonces ne s'affichent pas et les erreurs comment. TOUTEFOIS, si vous regardez debug.txt:

    Champs de méthodes nom de package / classe

    15236 5010 Android

    14282 9575 com

    Le repos est inférieur à 3k combiné

    Je ne vois pas 65k … à moins que Android et ce qu'il y ait (pile android.something)

    Qu'est-ce que j'oublie ici?

  • Affichage d'images avec effet carrousel dans Android
  • Erreur Genymotion VirtualBox
  • Enregistrez une vidéo d'une taille de 480 * 480 px dans Android?
  • Comment obtenir un identifiant matériel unique de périphérique dans Android?
  • Jouez 2 flux audio différents sur les haut-parleurs gauche et droit
  • Génération d'une version Android avec Gitlab CI
  • 3 Solutions collect form web for “Android: ne peut pas résoudre le problème de 65k”

    En ajoutant GMS, vous devriez avoir facilement atteint la limite de 64 Ko.

    Examinons donc la situation ici:

    • Vous êtes en dessous de 64K méthodes lorsque vous auriez probablement été au-dessus.
    • Vous manquez les cours.

    N'ayant pas votre fichier complet de Gradle, je suppose que le problème est lié à la suppression de tout ce que vous souhaitez garder. Je suggère tout d'abord de désactiver entièrement Proguard et de tester si cela a réglé le problème.

    ads dépendent d'autres dépendances et ne fonctionneront pas seules. Pour commencer, essayez d'inclure celui-ci:

     compile "com.google.android.gms:play-services-base:9.0.0" 

    Il semble que la raison pour laquelle ces cours n'étaient pas présentés était parce qu'ils n'étaient pas compatibles avec les services de google sur certains de mes mobiles. Au début, je pensais que j'étais à jour parce que je ne pouvais plus mettre à jour les services Google Play. Mais j'avais tort, car la mise à jour est basée sur la version maximale que votre mobile peut gérer (les meilleures explications possibles)

    La solution était de mettre à jour les API sdk liées aux versions en question (Android 4.1.2 Google API et ainsi).

    La raison pour laquelle les solutions dexing n'a pas fonctionné est parce que, tout en ayant des symptômes similaires à la limite de la méthode 65k, elle était liée à des API obsolètes.

    Si vous rencontrez une situation qui nécessite Dexing mais toujours face à des cours manquants, c'est probablement votre problème 🙂

    Android W / GooglePlayServicesUtil Google Play services obsolètes. Si vous voyez cela dans votre logcat même si votre mobile gms est «à jour», vous avez ce problème

    Edit: Stackoverflow ne me laissera pas accepter ma propre réponse, mais c'est ça. Je vais mettre à jour dans deux jours, sauf si un mod peut le faire accepter

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.