【问题标题】:getting dex error on implementing OneSignal在实现 OneSignal 时出现 dex 错误
【发布时间】:2017-11-22 09:27:54
【问题描述】:

在阅读OneSignal 的文档并在Gradle 上实现该文档后在android 中出现此错误:

错误:任务执行失败 ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.

java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: 无法合并 索引

我的Gradle 在应用文件夹中:

plugins {
    id 'com.onesignal.androidsdk.onesignal-gradle-plugin' version '0.7.0'
}
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "26.0.2"
    defaultConfig {
        applicationId "ir.kiyanis.application"
        minSdkVersion 16
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
        ...
    }

    defaultConfig {
        manifestPlaceholders = [onesignal_app_id: "MY KEY IS HERE",
                                onesignal_google_project_number: "REMOTE"]
    }
}

repositories {
    jcenter()
    maven { url "https://jitpack.io" }
    maven { url "https://clojars.org/repo/" }
    maven { url 'https://maven.google.com' }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    ...
    compile 'com.google.android.gms:play-services:11.4.2'
    compile 'com.android.support:multidex:+'
    ...
    compile 'com.onesignal:OneSignal:[3.6.5, 3.99.99]'
}

我通过OneSignal 文档设置了这个实现,我该如何解决这个问题?

我的Application 班级:

public class Application extends MultiDexApplication {
    ...
    @Override
    public void onCreate() {
        super.onCreate();

        OneSignal.startInit(this)
                .inFocusDisplaying(OneSignal.OSInFocusDisplayOption.Notification)
                .unsubscribeWhenNotificationsAreDisabled(true)
                .init();
}

然后我的清单是:

<application
        android:name=".Application"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme">
        ...
</application>

【问题讨论】:

    标签: android


    【解决方案1】:

    试试这个

    dexOptions {
        jumboMode true
        javaMaxHeapSize "4g"
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-10
      相关资源
      最近更新 更多