android OneSignal导入错误

时间:2015-11-26 06:28:53

标签: android build.gradle onesignal

您好我正在尝试在Android中使用OneSignal,我正在按照本教程在Android Studio中安装SDK。 here

我能够编译依赖项并同步gradle文件。但是当我要导入com.onesignal.OneSignal;时,它说:无法解析符号!

这是app.gradle文件中的依赖项

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:design:23.0.1'
    compile 'com.onesignal:OneSignal:1.10.+@aar'
    compile 'com.google.android.gms:play-services-gcm:+'
    compile 'com.google.android.gms:play-services-analytics:+'
    compile project(':gson-2.2.2')
    compile project(':java_websocket')
    compile project(':signalr-client-sdk')
    compile project(':signalr-client-sdk-android')
}

我做的事情:

1. File > Synchronize
2. File > Invalidate Cashes and Restart

更新:

我在新项目中完成了这些步骤,这很好! 为什么我不能在这个特定的项目中做到这一点?

编辑:

整个build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    useLibrary 'org.apache.http.legacy'

    defaultConfig {
        applicationId "ir.irsapardaz.sina.gamev01"
        manifestPlaceholders = [manifestApplicationId:"${applicationId}"]
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'),    'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:design:23.0.1'
    compile 'com.onesignal:OneSignal:1.10.+@aar'
    compile 'com.google.android.gms:play-services-gcm:+'
    compile 'com.google.android.gms:play-services-analytics:+'
    compile project(':gson-2.2.2')
    compile project(':java_websocket')
    compile project(':signalr-client-sdk')
    compile project(':signalr-client-sdk-android')
}

5 个答案:

答案 0 :(得分:11)

在gradle文件中使用以下内容以获取最新的OneSignal SDK 3.X版本。

compile 'com.onesignal:OneSignal:[3.8.3, 3.99.99]'

您看到的错误通常是由于Android Studio未从Maven Central中提取SDK,或者您已经同步了.gradle,因为您已将OneSignal添加到其中。

在你的情况下转到Tool> Android> Sync Project应该修复以下错误

com.onesignal.OneSignal; Cannot resolve symbol!

如果不起作用,请参阅OneSignal的文档以了解更多内容。 https://documentation.onesignal.com/docs/troubleshooting-android

答案 1 :(得分:2)

如果有人遇到ReactNative v0.37,我有类似的问题,但我的代码一般都比较新。以下解决了这个问题:

for android一定要使用:

import com.geektime.reactnativeonesignal.ReactNativeOneSignalPackage;而非import com.geektime.rnonesignal.ReactNativeOneSignalPackage;

一些旧的文档有rnonesignal,并且自那时起已经更新。

如果您使用的物品低于RN的v0.37,则为YMMV。祝你好运。

答案 2 :(得分:2)

Click here for image reference

Click here for image reference

在Build buildl文件中

申请插件:' com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    useLibrary 'org.apache.http.legacy'

    defaultConfig {

        applicationId "ir.irsapardaz.sina.gamev01"
        manifestPlaceholders = [manifestApplicationId:"${applicationId}"]
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'),    'proguard-rules.pro'
        }
    }

default Config{

}

添加:

manifestPlaceholders = [onesignal_app_id: " Your app ID as provided by OneSignal ",

onesignal_google_project_number: " Your Sender Id as provided by Google firebase "

答案 3 :(得分:2)

在build.gradle中添加此依赖项和同步gradle文件,我希望它能正常工作。

data1 = pd.read_sql("""select * from my_table where my_col in ('2535488','2568394')""",cnxn)

如果不起作用,您还可以查看正确的OneSignal文档。 https://documentation.onesignal.com/docs/android-sdk-setup

答案 4 :(得分:0)

编译'com.onesignal:OneSignal:2.3.0'在gradle文件中尝试此操作.Version将会更新。