android - 当我尝试在 Android Studio 2 中集成 SDK 时出现 OneSignal 问题

标签 android gradle push-notification onesignal

我遵循了有关如何集成的文档
OneSignal for Android Studio但没有成功。

当我尝试将编译依赖项添加到 build.gradle (Module) 文件时

compile 'com.onesignal:OneSignal:3.0.0'
compile 'com.google.android.gms:play-services-gcm:9.4.0'
compile "com.google.android.gms:play-services-location:9.4.0"
compile 'com.google.android.gms:play-services-analytics:9.4.0'

我还在 build.gradle 文件中添加了具有正确 key 的 manifestPlaceholders。

此外,我使用 java8 功能开发我的应用程序,我必须像这样启用 jackOption:
defaultConfig {
    applicationId "eu.application.test"
    manifestPlaceholders = [manifestApplicationId: "${applicationId}",
                            onesignal_app_id: "PUT YOUR ONESIGNAL APP ID HERE",
                            onesignal_google_project_number: "PUT YOUR GOOGLE PROJECT NUMBER HERE"]
    minSdkVersion 18
    targetSdkVersion 24
    versionCode 1
    versionName "1.0"
    jackOptions {
        enabled true
    }
}

Android Studio 版本是 2.1.3,我有 java 1.8.0_25。
Android Studio 可以安装该应用程序,但需要花费大量精力和时间(大约 10 分钟),有时我必须重新启动计算机。

最佳答案

请更改您的 .grandle条目来自

compile 'com.onesignal:OneSignal:3.0.0'
compile 'com.google.android.gms:play-services-gcm:9.4.0'
compile "com.google.android.gms:play-services-location:9.4.0"
compile 'com.google.android.gms:play-services-analytics:9.4.0'

到:
compile 'com.onesignal:OneSignal:3.+'
compile 'com.google.android.gms:play-services-gcm:9.4.0'
compile "com.google.android.gms:play-services-location:9.4.0"

3.+ 确保您拥有最新的 OneSignal 稳定版本。如果您使用 gcm 8.1.0 或更高版本,OneSignal 不需要分析。

删除任何 AndroidManifest.xml您已从 OneSignal Eclipse 添加文档,因为它会干扰 Android Studio 设置。

由于您遇到系统速度变慢,我建议您尝试我们测试过的示例项目以消除其他变量。
https://github.com/OneSignal/OneSignal-Android-SDK/tree/master/Examples/AndroidStudio

关于android - 当我尝试在 Android Studio 2 中集成 SDK 时出现 OneSignal 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39290760/

相关文章:

java - ARCore中,如何让节点/ anchor 粘在相机上?

javascript - CakePHP SSE 或悬挂获取

android - 使用 Lambda 表达式和 Butterknife

java - Kotlin、Scala 和 Java 的 Gradle 构建失败

iOS 我可以构建一个应用程序或服务来保持蓝牙发现设备吗

java - 如何从服务器使用 Cloud Messaging Firebase 推送通知

android - 如何在 Facebook Android SDK 中支持较早的 API 版本?

android - 显示 WebView

android - 每次构建代码时都无法链接引用并出现 AAPT2 错误

android - 如何在没有 Gradle 的情况下在 Eclipse 中的 Android 项目上启用 multidex