添加一个信号依赖时出错

时间:2017-10-27 20:25:08

标签: android onesignal

我想在我的Android应用中使用 OneSignal 但是在我的gradle文件中添加OneSignal依赖项后出现了一些错误。

我正在使用Android Studio 3.1。

这是我的gradle文件:

android {
compileSdkVersion 27
defaultConfig {
    applicationId "com.example.nasser.myapplication"
    minSdkVersion 14
    targetSdkVersion 27
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
    release {
        postprocessing {
            removeUnusedCode false
            removeUnusedResources false
            obfuscate false
            optimizeCode false
            proguardFile 'proguard-rules.pro'
        }
    }
}
}

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.0.0-alpha1'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:0.5'
androidTestImplementation 'com.android.support.test.espresso:espresso-  core:2.2.2'
compile 'com.onesignal:OneSignal:[3.6.2, 3.99.99]'
}

这是项目的build.gradle文件:

buildscript {

repositories {
    google()
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.1.0-alpha01'


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

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

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

现在,当我同步gradle文件时,我收到很多错误,如下所示:

Could not resolve com.android.support:support-v4:[26.0.0,26.2.0).
Required by:
project :app > com.onesignal:OneSignal:3.6.5
 > Could not resolve com.android.support:support-v4:[26.0.0,26.2.0).
> Failed to list versions for com.android.support:support-v4.
      > Unable to load Maven meta-data from https://dl.google.com/dl/android/maven2/com/android/support/support-v4/maven-metadata.xml.
               > Could not HEAD 'https://dl.google.com/dl/android/maven2/com/android/support/support-v4/maven-metadata.xml'.
                           > dl.google.com:443 failed to respond

2 个答案:

答案 0 :(得分:0)

您应该在项目 build.gradle中添加Google maven:

repositories {
    maven { url 'https://maven.google.com' }
}

您需要记住,OneSignal会自动添加以下依赖项:

com.google.android.gms - Version 11.2.+  
com.android.support - Version 26.1.+

因此,所有依赖项必须具有匹配的版本。

要强制使用所选版本的支持库,可以使用以下命令:

// Must use 26.0.0 or newer if you have targetSdkVersion 26
def androidSupportVersion = '26.1.+'
compile("com.android.support:support-v4:${androidSupportVersion}")  {
    force = true
}
compile("com.android.support:customtabs:${androidSupportVersion}")  {
    force = true
}

Troubleshooting Android了解详情。

p.s:您应该修复build.gradle

答案 1 :(得分:0)

我在Android Studio 3.1中遇到了同样的问题,所有构建任务都失败了。

最后我发现我的问题是由Gradle代理设置引起的。解决方案:

打开文件〜/ .gradle / gradle.properties,并删除其中的代理设置(如果有的话),例如

systemProp.https.proxyPort=50846
systemProp.http.proxyHost=127.0.0.1
systemProp.https.proxyHost=127.0.0.1
systemProp.http.proxyPort=50846

然后重新启动Android Studio,构建任务现在可以正常工作。