适用于FCM的Unity android插件

时间:2016-11-02 09:51:17

标签: android unity3d push-notification firebase-cloud-messaging android-unity-plugin

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

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

    之后,我在移动设备上测试了Android Studio项目,并且FCM控制台推送通知运行良好。然后,我开始为Unity配置Android Studio项目。

  5. 更改'申请'到图书馆'在 build.gradle (模块)中,为AndroidPlugin.jar
  6. 添加 deleteOldJar exportJar
  7. 将Unity的classes.jar添加到Android Studio库和模块设置
  8. 中删除' android:icon ...' ' android:theme ...' >的AndroidManifest.xml
  9. 导出jar并将AndroidPlugin.jarAndroidManifest.xml添加到Unity中的'插件/ Android'

    然后,我在移动设备上测试了Unity项目。它毫无例外地构建,但FCM控制台推送通知不起作用。 (我做了测试日志,确认Android Studio libray已经很好地插入Unity,日志运行良好)

  10. 也许,有些事情要添加到'插件/ Android' AndroidManifest.xmlAndroidPlugin.jar除了以下参考资料。

    Google firebase analytics plugin for unity - StackOverflow
    http://joxi.ru/Q2KeQD7C3zdYrj

    但是,我无法找到答案。请让我知道我要做什么或添加什么。 对不起英语不好和很长的解释。非常感谢:))

2 个答案:

答案 0 :(得分:0)

我在 OneSignal 中使用了 Unity SDK 这是一个非常简单,简单,酷炫的推送通知SDK。

以下参考链接 https://onesignal.com/

答案 1 :(得分:0)

这种方法不可行。

Jar文件不包含资源,因此jar构建中将缺少json文件。或者,理论上包含资源的aar文件由Unity3D解释为纯插件并忽略资源或至少一些资源,特别是在使用gradle时。但是Unity正在变得更好。

试试https://firebase.google.com/docs/unity/setup。这是新的,我已经让示例项目工作了。

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