android5.0开发之解决灭屏来日程只有声音没有亮屏

在Android 5.0中,当设备灭屏时,若收到日程提醒,可能只会发出声音而不会亮屏。通过在`AlertService.java`中设置标志位和唤醒屏幕的代码,可以在接收到新日程提醒时正确唤醒并点亮屏幕。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对于此类问题,我们可以找到发送通知的地方,然后判断是否有新通知,唤醒并点亮屏幕

packages/apps/Calendar/src/com/android/calendar/alerts/AlertService.java

static boolean isFired = false;//定义标志位

void processMessage(Message msg) {

---------

        boolean providerReminder = action.equals(
                android.provider.CalendarContract.ACTION_EVENT_REMINDER);
        if (providerReminder) {


   isFired=true;//修改标志位


    static boolean updateAlertNotification(Context context) {
//唤醒亮屏
if(isFired){
   PowerManager mPowerManager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
            PowerManager.WakeLock wl = mPowerManager.newWakeLock(
                     PowerManager.ACQUIRE_CAUSES_WAKEUP | PowerManager.SCREEN_DIM_WAKE_LOCK,"bright");   
   //light screen when the event is fired 
   wl.acquire();  
   wl.release();

            isFired = false;

这只是一个思路,遇到类似问题,可以这样处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值