繁体   English   中英

电容器 - 从cordova迁移后默认情况下在Android上未启用浮动通知

[英]Capacitor - floating notifications not enabled by default on Android after migration from cordova

我们将我们的应用程序从 Cordova 迁移到 Capacitor。

对于 Cordova 上的推送通知,我们使用了cordova-plugin-firebasex插件。

对于 Capacitor,用官方的Push Notifications插件和FCM插件(我们需要 FCM)替换了 Plugin。

现在在 Android 上安装应用程序时,应用程序的“浮动通知”设置默认禁用,而cordova 插件默认启用

任何想法可能是什么原因或我们如何默认启用设置?

普遍的共识是这个设置不受应用程序的影响,但为什么它适用于cordova-plugin?

发现区别:

如此所述,Android 需要至少订阅一个频道。 cordova-plugin 会自动执行此操作,对于电容器,必须手动完成。

所以添加

        await PushNotifications.createChannel({
          id: '<id>',
          name: '<Name>',
          description: '<Description>',
          importance: 5,
          visibility: 1,
          lights: true,
          vibration: true,
        });

安卓注册后。

另外将以下作为 xml 文件放入res/values

<?xml version='1.0' encoding='utf-8'?>
<resources>
    <string name="default_notification_channel_id"><id></string>
    <string name="default_notification_channel_name"><name></string>
</resources>

然后这必须在AndroidManifest.xml链接:

    <meta-data
        android:name="com.google.firebase.messaging.default_notification_channel_id"
        android:value="@string/default_notification_channel_id"/>

    <meta-data
        android:name="com.google.firebase.messaging.default_notification_channel_name"
        android:value="@string/default_notification_channel_name"/>

对于<id>最容易使用在cordova-plugin中使用的默认id:

fcm_default_channel

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM