Unity android FCM 插件

Unity android plugin for FCM

我正在尝试将 Google FCM 推送通知功能添加到 Unity 项目中。我很惊讶没有关于 Google FCM for Unity 的资源。只有旧的 Google GCM 资源。这是我在下面的一步一步的进展。

  1. 创建 Android Studio 项目并将其注册到 FCM 控制台项目
  2. google-service.json添加到'/app'并配置build.gradle(项目和模块)
  3. 添加 MyFirebaseInstanceIDServiceMyFirebaseMessagingService java 类 和 onTokenRefresh, sendRegistrationToServer, onMessageReceived, sendNotification 方法根据 FCM 文档中的示例
  4. 将 类 的服务添加到 AndroidManifest.xml

    之后,我在手机上测试了Android Studio项目,FCM控制台推送通知效果很好。然后,我开始为 Unity 配置 Android Studio 项目。

  5. build.gradle(模块)中将'application'更改为'library'并添加deleteOldJarexportJar 用于 AndroidPlugin.jar
  6. 将 Unity classes.jar 添加到 Android Studio 库和模块设置
  7. 删除'android:icon ...','android:theme ...'AndroidManifest.xml
  8. 导出jar并在Unity中添加AndroidPlugin.jarAndroidManifest.xml'Plugins/Android'

    然后,我在移动端测试了Unity项目。它无一例外地构建,但 FCM 控制台推送通知不起作用。 (我制作了测试日志以确认 Android Studio libray 为 Unity 很好地插件化,日志运行良好)

也许,'Plugins/Android' 除了 AndroidManifest.xmlAndroidPlugin.jar 之外还有一些东西要添加到下面的参考文献中。


http://joxi.ru/Q2KeQD7C3zdYrj

但是,我找不到我的答案。请让我知道我必须做什么或添加什么。 抱歉英语不好,解释很长。非常感谢:)

我在 OneSignal 中使用了 Unity SDK
非常简单、易用、酷炫的推送通知SDK。

参考 link 下面。
https://onesignal.com/

这种方法行不通。

Jar 文件不包含资源,因此,json 文件将从 jar 构建中丢失。或者,理论上包含资源的 aar 文件被 Unity3D 解释为纯插件并忽略资源或至少一些资源,特别是在使用 gradle 时。但 Unity 在这方面做得越来越好。

尝试https://firebase.google.com/docs/unity/setup。它是新的,我已经可以运行示例项目了。

补充一下:Firebase for Unity3D 的新插件很有魅力。像纯系统尝试通知这样的用例不需要在客户端进行一行额外的编程。数据消息也很容易实现。