如何禁用 OneSignal 通知弹出窗口?

How to disable OneSignal notification popup?

是否可以不显示 OneSignal 的弹出通知,而是以编程方式创建通知?

好的,经过一番研究后,我发现它非常简单。 这是关于如何操作的官方文档的link。 OneSignal Android Customizations

实现它的步骤很少:

1- 创建 NotificationExtenderServiceClass

 public class NotificationExtenderBareBonesExample extends NotificationExtenderService {
     @Override
     protected boolean onNotificationProcessing(OSNotificationReceivedResult receivedResult) {
     // Read properties from result.

     // Return true to stop the notification from displaying.
     return true;
   }
}

如您所见,很明显,将 read 设置为 true 将停止显示通知。 但是文档没有说 FCM 将停止工作,而是通知将传递到这里。

2 - 将服务添加到清单

<service
   android:name=".NotificationExtenderBareBonesExample"
   android:permission="android.permission.BIND_JOB_SERVICE"
   android:exported="false">
   <intent-filter>
      <action android:name="com.onesignal.NotificationExtender" />
   </intent-filter>
</service>

就是这样。 现在,在 NotificationExtender 中添加您的逻辑,您将能够自由地管理您的通知。