web-dev-qa-db-ja.com

デバイスに現在のバージョンと一致しない古いdexed jarがある可能性があるため、インストールが失敗しました(dexoptエラー)

Android studioからsamsumgスマートフォンを実行しているAndroid 2.3.6までアプリを実行できません。スクリーンショットの下にある「アプリケーションのインストールに失敗しました」ポップアップが表示されます。

enter image description here

[OK]をクリックすると、ログに以下のエラーが表示されます

Failure [INSTALL_FAILED_DEXOPT]
DEVICE Shell COMMAND: pm uninstall my.package.name
Unknown failure

「App Cloud Backend with Google Cloud Messaging」というGoogle Cloud Moduleを追加した後、この問題が発生しました。

これは、スタックオーバーフローの質問の1つで説明されている問題とまったく同じです ここ

受け入れられた答えを試しました。

dex-method-countsアプリケーションを実行しました。ターミナルで「全体のメソッド数:24474」を取得しました。次に何をしたらいいのかわかりませんか?

(注:同じアプリケーションが、KitKatで実行されている他のデバイスでも実行されています。)

この問題の解決にご協力ください。過去2日間から苦労しています。同様の質問がたくさんあることは知っていますが、何の助けにもなりませんでした。

ビルド->クリーンが機能していません。

これが私のbuild.gradleファイルです

apply plugin: 'com.Android.application'

Android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "my.package.name"
        minSdkVersion 9
        targetSdkVersion 19
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_7
            targetCompatibility JavaVersion.VERSION_1_7
        }
    }

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


dependencies {
    compile files('libs/libGoogleAnalyticsServices.jar')
    compile project(path: ':gcmAppEngineBackend', configuration: 'Android-endpoints')
    compile 'com.Android.support:support-v4:22.0.0'
    compile 'com.Android.support:appcompat-v7:22.0.0'
    compile 'com.google.Android.gms:play-services:7.0.0'

}

前もって感謝します!

22
Programmer

これは通常、デバイスのメモリに十分なスペースがないために発生します。

一部のアプリを削除して、もう一度お試しください

15
Jorge Casariego

Androidエミュレーターが「古くなった」メッセージを表示する場合) this がMacで私を助けてくれました:

  1. エミュレータを停止する
  2. cd〜/ .Android/avd/[エミュレータ名] .avd
  3. rm * .lock
  4. エミュレータをワイプ
  5. エミュレータを起動
4
Ken

無効にするInstant Run

Android Studio -> Preferences -> Instant Run

2
Kiryl

このエラーが発生したとき、AVD-ManagerでNexus 4を使用していました。デフォルトでは、このデバイスは500MBの内部ストレージで作成されました。ストレージを2048MBに増やしたところ、「stale dexed」エラーがなくなりました。

内部ストレージを増やすには:

  1. ADV-Managerに移動します
  2. 「アクション」で対応するデバイスの編集ボタンを選択します
  3. 「詳細設定を表示」をクリックします
  4. 内部ストレージを増やす
2
DrGregoryHouse

データを消去することでこれを解決しました。

Android Studio-> AVD Manager-> Actions-> Wipe Data

1
Xenon Kfr

この「compile files( 'libs/libGoogleAnalyticsServices.jar')」をこの「com.google.Android.gms:play-services-analytics:8.3.0」に置き換えます

0
Moses Mwongela

また、同じ問題があります。これを機能させるには、依存関係から「サードパーティライブラリ」を削除する必要がありました。またはこれを試してください: https://developer.Android.com/tools/building/multidex.html

0