Android 在不使用系统警报窗口的情况下,通过服务中的正负按钮显示警报

Android 在不使用系统警报窗口的情况下,通过服务中的正负按钮显示警报,android,android-service,Android,Android Service,我希望在应用程序位于前台时,将通知显示为带有“批准”和“拒绝”按钮的警报对话框。但是,当我使用SYSTEM_ALERT_窗口时,正按钮和负按钮不起作用。以及具有上下文问题的正常警报对话框 那么,如何在不使用系统警报窗口的情况下显示服务中的警报对话框呢 好吧,正确的答案是不要这样做。使用通知,可能是高优先级通知,以便在Android 5.0+上以提示模式显示。这允许用户在通知出现时与该通知进行交互(如果用户愿意),否则它会像正常情况一样滚动到状态栏中 记住,当你想要显示这个警报时,你不知道用户在用

我希望在应用程序位于前台时,将通知显示为带有“批准”和“拒绝”按钮的警报对话框。但是,当我使用SYSTEM_ALERT_窗口时,正按钮和负按钮不起作用。以及具有上下文问题的正常警报对话框


那么,如何在不使用系统警报窗口的情况下显示服务中的警报对话框呢

好吧,正确的答案是不要这样做。使用
通知
,可能是高优先级通知,以便在Android 5.0+上以提示模式显示。这允许用户在
通知出现时与该通知进行交互(如果用户愿意),否则它会像正常情况一样滚动到状态栏中

记住,当你想要显示这个警报时,你不知道用户在用他们的设备做什么,并且用户可能不欣赏你在玩游戏的时候中断他们,在驾驶时使用导航应用程序等等。 很少有情况下用户会同意从后台接管前台是个好主意(例如,来电)。在这些情况下,请使用主题为

活动的对话框(即,其主题从名称中包含
dialog
的对话框扩展而来,例如
theme.Material.dialog