首页 > 解决方案 > 尝试使用 'com.onesignal:OneSignal:3.7.1' 但出现错误

问题描述

我打开了一个已经创建的项目。我正在添加firebase和onesignal。已经添加了firebase,但是当我尝试添加此行时出现错误:
implementation 'com.onesignal:OneSignal:3.7.1' 错误是:AAPT2 error: check logs for details 图片 图片 图像可能无法显示,对此感到抱歉。

build.gradle(模块:应用程序):

    apply plugin: 'com.android.application'

android {
    compileSdkVersion 24
    buildToolsVersion '26.0.2'
    defaultConfig {
        applicationId "dedeler.com.deredere"
        minSdkVersion 17
        targetSdkVersion 24
        versionCode 11
        versionName "1.1"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

        manifestPlaceholders = [
                onesignal_app_id               : '82f1gtd7-uy16-4c37-80s4-b1ebd8ad38a6',
                // Project number pulled from dashboard, local value is ignored.
                onesignal_google_project_number: '837758431119'
        ]
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile files('libs/ftp4j-1.7.2.jar')
    compile 'com.android.support:appcompat-v7:24.2.1'
    compile 'com.android.support:cardview-v7:24.2.1'
    compile 'com.android.support:recyclerview-v7:24.2.1'
    compile 'com.android.support:design:24.2.1'
    compile 'com.squareup.retrofit:retrofit:1.9.0'
    compile 'com.code-troopers.betterpickers:library:3.0.1'
    compile 'com.baoyz.pullrefreshlayout:library:1.2.0'
    compile 'com.toptoche.searchablespinner:searchablespinnerlibrary:1.3.1'
    compile 'me.dm7.barcodescanner:zbar:1.9'
    compile 'de.hdodenhof:circleimageview:2.1.0'
    compile 'com.google.firebase:firebase-messaging:17.1.0'
    compile 'com.squareup.okhttp3:okhttp:3.7.0'
    testCompile 'junit:junit:4.12'
    compile 'com.google.firebase:firebase-core:16.0.1'
    implementation 'com.google.android.gms:play-services-gcm:12.0.1'
    implementation 'com.google.android.gms:play-services-location:12.0.1'
    implementation 'com.onesignal:OneSignal:3.7.1'

}
apply plugin: 'com.google.gms.google-services'

build.gradle(项目):

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0'

        classpath 'com.google.gms:google-services:4.0.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files

    }
}

allprojects {
    repositories {
        jcenter()
        maven { url 'https://maven.google.com' }
        google()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

当我删除implementation 'com.onesignal:OneSignal:3.7.1'这个正常运行的项目时,我没有收到错误。我应该怎么办?需要帮忙..

标签: androidandroid-studiogradleandroid-gradle-plugin

解决方案


您需要pluginbuild.gradle中添加它,如下所示。

buildscript {
    repositories {
        jcenter()
        google()
        maven { url 'https://plugins.gradle.org/m2/'}
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0'

        classpath 'com.google.gms:google-services:4.0.0'
        classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:0.11.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files

    }
}

allprojects {
    repositories {
        jcenter()
        maven { url 'https://maven.google.com' }
        google()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

在应用程序级别build.gradle添加这个。

在顶部应用插件

apply plugin: 'com.android.application'
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'

内部依赖项。

implementation 'com.onesignal:OneSignal:3.9.1'

推荐阅读