Android目标SDK34中哪个使用foregroundServiceType为MESSAGE_EVENT?

问题描述 投票:0回答:1

我在Android中迁移TargetSDK34。 AndroidManifest 标记出现错误行。 所以我搜索了 Android 文档,这让我很困惑我用它做什么?.

Message_EVENT是我使用dataSync或remoteMessaging还是其他东西? 请为我建议解决方法!

谢谢!

    <service android:name=".Push.PushIntentService"
        android:exported="false"
        android:foregroundServiceType="dataSync" >   <!--here!!-->
        <intent-filter>
            <action android:name="com.google.firebase.MESSAGING_EVENT" />
        </intent-filter>
    </service>

android foreground-service
1个回答
0
投票

如果您的前台服务用于:

“将短信从一台设备传输到另一台设备。协助 用户切换设备时消息传递任务的连续性。” 参考

然后你需要将其类型标记为 remoteMessaging

您可以通过做三件事来做到这一点:

  1. 在 AndroidManifest.xml 文件中,添加值为 remoteMessaging

    的 foregroundServiceType 属性
  2. 您需要在 AndroidManifest.xml 文件中添加以下权限FOREGROUND_SERVICE_REMOTE_MESSAGING。这个权限级别是正常的所以不需要做任何其他事情

  3. 当您使用 startForeground 启动前台服务时,将以下常量作为第三个参数传递到那里 FOREGROUND_SERVICE_TYPE_REMOTE_MESSAGING

© www.soinside.com 2019 - 2024. All rights reserved.