0
私のアプリケーションでoutofmemory例外のエラーがあります。私は以下のように私のbuild.gradleにdexoptionsのこのコードを追加しましたが、うまくいきません。 Androidのスタジオバージョン2.1.1ではOutofMemory Android Studio 2.1.2のGradle dexoptionでのエラー例外
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
useLibrary 'org.apache.http.legacy'
defaultConfig {
applicationId "Package name"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
sourceSets {
main.java.srcDirs += 'src/main/facebooka'
}
dexOptions {
incremental = true;
preDexLibraries = false
javaMaxHeapSize "2g" // 2g should be also OK
}
/* dexOptions
{
incremental true
javaMaxHeapSize "2048M"
preDexLibraries = false
}*/
}
dependencies {
compile project(':library1')
compile project(':facebooka')
compile 'com.android.support:support-v4:23.1.1'
compile 'com.android.support:appcompat-v7:23.1.1'
compile files('libs/YouTubeAndroidPlayerApi.jar')
compile 'com.android.support:design:23.1.1'
compile 'com.google.android.gms:play-services:8.4.0'
compile 'com.android.support:multidex:1.0.1'
compile 'com.devfigas:marshmallow-permission:0.0.9'
}
このコードが正常に動作しますが、私は、バージョン2.1.2で同じコードをしようとしたとき
dexOptions {
incremental = true;
preDexLibraries = false
javaMaxHeapSize "2g" // 2g should be also OK
}
これは、あまりにも多くのメモリを使用していることを意味します。メモリにロードされているリソースの数を減らそうとする必要があります。デバイスが2Gを手元に持たない場合、ヒープ2Gを作ることで魔法のような問題は解決しません。 – litelite
**すべての** Googleプレイサービスを追加しないでください。それが問題を解決するかどうかを確認してください –
あなたは、アプリケーションを構築している間、あなたのアプリまたはあなたのPCにOutOfMemoryを持っていますか? Dexoptionsは、ビルド中にOOMが発生した場合にのみ機能します。 – Christopher