您好我正在尝试在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')
}
答案 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)
在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将会更新。