2019 年 Android 的 Phonegap 推送通知 - 它有效吗?
Phonegap Push Notifications for Android in 2019 - does it work?
我看过很多关于在 Phonegap 中使用推送通知的教程和论坛帖子,但其中大部分似乎都已过时。有人知道这在今天(2019 年)是否有效吗?
我通过 Phonegap 创建了 Push Notification demo 并在我的 Android 8 设备上 运行 它。当它运行并显示 "Registered" 时,没有示例通知。
我尝试通过 CLI 发送推送,但也没有用(我被告知 this was removed 所以将不再有效,尽管 Adobe 的教程页面已过时)
(请注意,Phonegap Developer 应用表示它与 Play 商店中的 Android 8 不兼容,因此必须从其他地方下载 APK。这是否表明没有任何效果?)
然后我发现Phonegap有一个"new"推送服务,我也下载了,才发现this is no longer in service either.
所以现在我发现有一些第三方应用程序可以提供推送服务(大部分不是免费的)。诸如“PushWhoose”之类的服务。
有谁知道,这些第 3 方服务有效吗?哪些是最可靠的?它们在什么版本的 Android 和 iOS 上有效?
感谢任何帮助。
我有许多生产中的 phonegap (CLI-8.0.0) 应用程序目前正在接收 2019 年的通知,所以是的,它的工作。
我使用了 Firebase 的第 3 方云消息传递 (https://firebase.google.com/docs/cloud-messaging/) 和 phonegap-plugin-push(Android 的版本 2.1.3 和 iOS 的最新版本)
我们已经在 Android 7 和 8 以及 iOS 12 上测试了以下内容。
通知是通过 C# Firebase API 发送的。
如何将 Firebase 与 Phonegap 结合使用:
首先你必须为Android安装4个插件:
<plugin name="phonegap-plugin-push" spec="2.1.3" />
<plugin name="cordova-android-support-gradle-release" spec="https://github.com/dpa99c/cordova-android-support-gradle-release.git" />
<plugin name="cordova-android-play-services-gradle-release" spec="https://github.com/dpa99c/cordova-android-play-services-gradle-release.git" />
<plugin name="cordova-android-firebase-gradle-release" spec="https://github.com/dpa99c/cordova-android-firebase-gradle-release.git" />
我为 android 使用了 2.1.3 版本的插件,因为最后一个版本不适合我。
*-gradle-release 授予您 phonegap-plugin-push 和其他插件之间的完全兼容性,因为经常存在冲突
对于 iOS 我使用的是最后一个版本:
<plugin name="phonegap-plugin-push" />
之后,您必须将您的应用程序注册到 firebase,直到您拥有 sender id
和 google-services.json
。
对于苹果,您必须授予您的证书推送通知权限并获得 APNS 证书。
当您拥有 sender id
、google-services.json
和 GoogleService-Info.plist
时,您只需像这样配置 config.xml:
<platform name="android" custom="push">
<plugin name="cordova-android-support-gradle-release" spec="https://github.com/dpa99c/cordova-android-support-gradle-release.git" />
<plugin name="phonegap-plugin-push" spec="2.1.3">
<param name="SENDER_ID" value="XXXXXXXXXXXXXXXXXXXXXX" />
</plugin>
<plugin name="cordova-android-play-services-gradle-release" spec="https://github.com/dpa99c/cordova-android-play-services-gradle-release.git" />
<plugin name="cordova-android-firebase-gradle-release" spec="https://github.com/dpa99c/cordova-android-firebase-gradle-release.git"/>
<resource-file src="google-services.json" target="/app/google-services.json" />
</platform>
<platform name="ios" custom="push">
<plugin name="phonegap-plugin-push">
<param name="SENDER_ID" value="XXXXXXXXXXXXXXXX" />
</plugin>
<resource-file src="GoogleService-Info.plist" />
</platform>
google-services.json 和 GoogleService-Info.plist 必须与 www 文件夹中的 config.xml 处于同一级别。
在那之后,插件的文档将能够比我更好地帮助你。
我看过很多关于在 Phonegap 中使用推送通知的教程和论坛帖子,但其中大部分似乎都已过时。有人知道这在今天(2019 年)是否有效吗?
我通过 Phonegap 创建了 Push Notification demo 并在我的 Android 8 设备上 运行 它。当它运行并显示 "Registered" 时,没有示例通知。
我尝试通过 CLI 发送推送,但也没有用(我被告知 this was removed 所以将不再有效,尽管 Adobe 的教程页面已过时)
(请注意,Phonegap Developer 应用表示它与 Play 商店中的 Android 8 不兼容,因此必须从其他地方下载 APK。这是否表明没有任何效果?)
然后我发现Phonegap有一个"new"推送服务,我也下载了,才发现this is no longer in service either.
所以现在我发现有一些第三方应用程序可以提供推送服务(大部分不是免费的)。诸如“PushWhoose”之类的服务。
有谁知道,这些第 3 方服务有效吗?哪些是最可靠的?它们在什么版本的 Android 和 iOS 上有效?
感谢任何帮助。
我有许多生产中的 phonegap (CLI-8.0.0) 应用程序目前正在接收 2019 年的通知,所以是的,它的工作。
我使用了 Firebase 的第 3 方云消息传递 (https://firebase.google.com/docs/cloud-messaging/) 和 phonegap-plugin-push(Android 的版本 2.1.3 和 iOS 的最新版本)
我们已经在 Android 7 和 8 以及 iOS 12 上测试了以下内容。
通知是通过 C# Firebase API 发送的。
如何将 Firebase 与 Phonegap 结合使用:
首先你必须为Android安装4个插件:
<plugin name="phonegap-plugin-push" spec="2.1.3" />
<plugin name="cordova-android-support-gradle-release" spec="https://github.com/dpa99c/cordova-android-support-gradle-release.git" />
<plugin name="cordova-android-play-services-gradle-release" spec="https://github.com/dpa99c/cordova-android-play-services-gradle-release.git" />
<plugin name="cordova-android-firebase-gradle-release" spec="https://github.com/dpa99c/cordova-android-firebase-gradle-release.git" />
我为 android 使用了 2.1.3 版本的插件,因为最后一个版本不适合我。
*-gradle-release 授予您 phonegap-plugin-push 和其他插件之间的完全兼容性,因为经常存在冲突
对于 iOS 我使用的是最后一个版本:
<plugin name="phonegap-plugin-push" />
之后,您必须将您的应用程序注册到 firebase,直到您拥有 sender id
和 google-services.json
。
对于苹果,您必须授予您的证书推送通知权限并获得 APNS 证书。
当您拥有 sender id
、google-services.json
和 GoogleService-Info.plist
时,您只需像这样配置 config.xml:
<platform name="android" custom="push">
<plugin name="cordova-android-support-gradle-release" spec="https://github.com/dpa99c/cordova-android-support-gradle-release.git" />
<plugin name="phonegap-plugin-push" spec="2.1.3">
<param name="SENDER_ID" value="XXXXXXXXXXXXXXXXXXXXXX" />
</plugin>
<plugin name="cordova-android-play-services-gradle-release" spec="https://github.com/dpa99c/cordova-android-play-services-gradle-release.git" />
<plugin name="cordova-android-firebase-gradle-release" spec="https://github.com/dpa99c/cordova-android-firebase-gradle-release.git"/>
<resource-file src="google-services.json" target="/app/google-services.json" />
</platform>
<platform name="ios" custom="push">
<plugin name="phonegap-plugin-push">
<param name="SENDER_ID" value="XXXXXXXXXXXXXXXX" />
</plugin>
<resource-file src="GoogleService-Info.plist" />
</platform>
google-services.json 和 GoogleService-Info.plist 必须与 www 文件夹中的 config.xml 处于同一级别。
在那之后,插件的文档将能够比我更好地帮助你。