这是请求DND权限的常用方法:
Intent intent = new Intent();
intent.setAction("android.settings.NOTIFICATION_POLICY_ACCESS_SETTINGS");
startActivityForResult(intent, NOTIFICATION_REQUEST_CODE);
然而,在(至少一个)三星SM-G800H上抛出ActivityNotFoundException
。
显然,在该型号上,他们有一种称为“阻止模式”的东西。任何人都知道正确的意图/如何处理该模型? 见https://www.cnet.com/uk/how-to/where-to-find-do-not-disturb-mode-on-the-galaxy-s5/
设备详细信息: 制造商:三星 型号:SM-G800H 董事会:Msm8228 Android API:23 Android操作系统:6.0.1 品牌:三星 内存:1.35GB 方向:肖像
答案 0 :(得分:1)
这可能不是三星相关的问题。根据官方文档,ACTION_NOTIFICATION_POLICY_ACCESS_SETTINGS仅适用于API 23+(Marshmallow)。您正在测试的S5是否运行Android 6 Marshmallow?如果没有,那就是你的问题。
编辑:由于每个设备上可能不存在此活动,即使它们在Android 6上,您也需要处理无法解决意图的情况。所以这样的事情可能就是你想要的:
{{DL core eventType}} is DataLayer variable eventType
window.dataLayer.push({
eventTypePreviousTwoEventsAgo: {{DL eventTypePrevious}}
eventTypePrevious : {{DL core eventType}},
});
}