跳转到主要内容
某些 Android 设备存在一个已知问题,即当应用被滑掉时它们无法接收推送通知。有关详细信息,请参阅此处。这个问题影响所有推送提供商,但幸运的是 OneSignal 提供了一种方式来联系这些设备的用户,帮助教育他们如何在滑掉应用时为您的应用启用推送。 使用原生 Android SDK,您可以轻松检查 deviceModeldeviceManufacturer。然后,根据这些数据,触发应用内消息要求这些用户在设备上为您的应用启用正确的设置。 一些示例代码如下所示:
//获取设备型号
String deviceModel = android.os.Build.MODEL;
//获取设备制造商
String deviceManufacturer = android.os.Build.MANUFACTURER;
HashSet<String> manufWithIssues = new HashSet<>(Arrays.asList("samsung","huawei","xiaomi","oppo","vivo","lenovo","sony","asus"));
if (manufWithIssues.contains(deviceManufacturer.toLowerCase()){
  //基于设备制造商,您可以触发显示应用内消息
  OneSignal.addTrigger("device_manuf", "issue_manuf");  //"issue_manuf" == deviceManufacturer
}
在此示例中,如果当前设备的制造商与 HashSet 中存在已知问题的制造商匹配,它将被传递给 OneSignal 的 addTrigger 方法,您可以使用该方法触发在 OneSignal 仪表板中设置的应用内消息。

选择应用内消息触发器

示例消息可能会说: 您的设备可能无法接收我们的通知!😱 请检查您的设备设置是否已开启我们的重要提醒: 设置 ➝ 设备管理 ➝ 电池 ➝ 不受监控的应用 ➝ 添加此应用 👍 设置 ➝ 应用 ➝ 此应用 ➝ 应用设置 ➝ 通知 ➝ 设为优先级 👍

显示应用内编辑器的图像,预览提醒用户他们可能只会收到某些通知的应用内警告

I