[通话][MTK]来电黑屏需按电源键才能点亮屏
来源:互联网 发布:淘宝虚拟市场怎么加入 编辑:程序博客网 时间:2024/04/30 00:50
该问题是因为在来电亮屏之后, 紧接着又有进程调用了 PowerManagerService.gotoSleep 操作.
导致系统关闭背光. 所以才出现来电无法亮屏的情况. 而这个调用 goToSleep 的进程对应的 uid
为 10018. 所以我们需要先确认 10018 这个 uid 到底是哪个 application. 请知悉.
您可以通过下面的方式确认 uid 对应的 packages
1. 电脑连接手机.
2. adb pull data/system/packages.xml d:/packages.xml
3. 打开 packages.xml 文件. 搜索 10018, 查看某个 uid n="10018" 对应的 package 信息.
就可以确认是哪个 package. 然后在对应的 package 里面搜索调用 PowerManagerService.goToSleep
地方. 确认为何要有这样的逻辑.
1. 灭屏
--------------------------------------------------------------------------------------------------
08-16 14:31:00.167197 998 1346 D DisplayPowerState: Updating screen state: state=ON, backlight=0, backlightChanged=true
2. 来电 ECPI URC
--------------------------------------------------------------------------------------------------
08-16 14:32:33.064434 1210 1252 D AT : AT< +ECPI: 1,0,0,0,1,0,"02110108888",161,""
3. 这里 acquire full wakelock, 亮屏之后, 在此锁 release 之前,
如无主动 goto sleep 操作, 则一直保持亮屏状态.
--------------------------------------------------------------------------------------------------
08-16 14:32:34.849950 998 998 I Telecom : InCallWakeLockController: Acquiring full wake lock
08-16 14:32:35.113044 1210 1252 D AT : AT< +ECPI: 1,4,0,1,1,0,"02110108888",161,""
4. 这里是 layout InCallActivity 时, WMS wakeUp 系统
--------------------------------------------------------------------------------------------------
08-16 14:32:36.677385 998 1024 D PowerManagerService: |----com.android.server.power.PowerManagerService.wakeUpNoUpdateLocked(PowerManagerService.java:1387)
08-16 14:32:36.677432 998 1024 D PowerManagerService: |----com.android.server.power.PowerManagerService.wakeUpInternal(PowerManagerService.java:1378)
08-16 14:32:36.677471 998 1024 D PowerManagerService: |----com.android.server.power.PowerManagerService.-wrap40(PowerManagerService.java)
08-16 14:32:36.677512 998 1024 D PowerManagerService: |----com.android.server.power.PowerManagerService$BinderService.wakeUp(PowerManagerService.java:3669)
08-16 14:32:36.677549 998 1024 D PowerManagerService: |----android.os.PowerManager.wakeUp(PowerManager.java:746)
08-16 14:32:36.677589 998 1024 D PowerManagerService: |----com.android.server.wm.WindowManagerService.performLayoutAndPlaceSurfacesLockedInner(WindowManagerService.java:10694)
08-16 14:32:36.677628 998 1024 D PowerManagerService: |----com.android.server.wm.WindowManagerService.performLayoutAndPlaceSurfacesLockedLoop(WindowManagerService.java:9323)
08-16 14:32:36.677673 998 1024 D PowerManagerService: |----com.android.server.wm.WindowManagerService.performLayoutAndPlaceSurfacesLocked(WindowManagerService.java:9270)
08-16 14:32:36.677709 998 1024 D PowerManagerService: |----com.android.server.wm.WindowManagerService.-wrap7(WindowManagerService.java)
08-16 14:32:36.677746 998 1024 D PowerManagerService: |----com.android.server.wm.WindowManagerService$H.handleMessage(WindowManagerService.java:8115)
08-16 14:32:36.677785 998 1024 D PowerManagerService: |----android.os.Handler.dispatchMessage(Handler.java:111)
08-16 14:32:36.677823 998 1024 D PowerManagerService: |----android.os.Looper.loop(Looper.java:207)
08-16 14:32:36.677864 998 1024 D PowerManagerService: |----android.os.HandlerThread.run(HandlerThread.java:61)
08-16 14:32:36.677907 998 1024 D PowerManagerService: |----com.android.server.ServiceThread.run(ServiceThread.java:46)
08-16 14:32:36.677959 998 1024 D PowerManagerService: wakeUpNoUpdateLocked: eventTime=166299032, uid=1000
08-16 14:32:36.678009 998 1024 I PowerManagerService: Waking up from sleep (uid 1000)...
5. 这里有一个主动调用 goto sleep 的操作. 显示调用的 UID = 10018
不太确定这个 UID = 10018 是谁, 不过从 event log 来看, 好像是
systemUI. 所以我们需要先确认 10018 这个 uid 对应的是哪个 app 进程
--------------------------------------------------------------------------------------------------
08-16 14:32:36.689145 998 2060 D PowerManagerService: |----com.android.server.power.PowerManagerService.goToSleepNoUpdateLocked(PowerManagerService.java:1450)
08-16 14:32:36.689231 998 2060 D PowerManagerService: |----com.android.server.power.PowerManagerService.goToSleepInternal(PowerManagerService.java:1439)
08-16 14:32:36.689268 998 2060 D PowerManagerService: |----com.android.server.power.PowerManagerService.-wrap14(PowerManagerService.java)
08-16 14:32:36.689312 998 2060 D PowerManagerService: |----com.android.server.power.PowerManagerService$BinderService.goToSleep(PowerManagerService.java:3687)
08-16 14:32:36.689346 998 2060 D PowerManagerService: |----android.os.IPowerManager$Stub.onTransact(IPowerManager.java:182)
08-16 14:32:36.689387 998 2060 D PowerManagerService: |----android.os.Binder.execTransact(Binder.java:458)
08-16 14:32:36.689444 998 2060 D PowerManagerService: goToSleepNoUpdateLocked: eventTime=166299044, reason=0, flags=0, uid=10018
08-16 14:32:36.689481 998 2060 I PowerManagerService: Going to sleep by application request (uid 10018)...
6. 这里因为 step-4 而点亮屏幕背光
--------------------------------------------------------------------------------------------------
08-16 14:32:37.205158 998 1346 D DisplayPowerState: Updating screen state: state=ON, backlight=55, backlightChanged=true
7. 这里因为 step-5 而关闭屏幕背光
--------------------------------------------------------------------------------------------------
08-16 14:32:37.743317 998 1346 D DisplayPowerState: Updating screen state: state=ON, backlight=0, backlightChanged=true
8. 通话结束
--------------------------------------------------------------------------------------------------
08-16 14:32:51.832485 1210 1252 D AT : AT< +ECPI: 1,133,0,0,1,0,"02110108888",161,""
9. release step-3 acquire 的 full wake lock.
--------------------------------------------------------------------------------------------------
08-16 14:32:51.957822 998 2069 I Telecom : InCallWakeLockController: Releasing full wake lock
main_log中有如下的log显示,从这是否可以确认10018就是SystemUI?
AppOps : startOperation: allowing code 3 uid 10018 package com.android.systemui
基本可以确认. 一般情况下我是看 packages.xml 里面的 uid 信息. 所以如果确认是 systemUI 的话. 那这个问题
就需要贵司 check 一下 system UI 里面调用的 goToSleep 地方的逻辑是什么.
- [通话][MTK]来电黑屏需按电源键才能点亮屏
- 手机开免提黑屏后(还在通话中),无法再次点亮,按电源键可以点亮,却停止了通话
- android 添加按电源键结束通话
- android 添加按电源键结束通话
- Android 添加按电源键结束通话
- MTK点亮新模组
- MTK 开机黑屏很长时间
- 转载MTK通话背景音
- android源代码 锁屏灭屏来电接通后立即息屏、通话过程中息屏对方挂断不亮屏
- android源代码 锁屏灭屏来电接通后立即息屏、通话过程中息屏对方挂断不亮屏
- Android黑屏死机--充电运行土豆视频【.4.4】》播放视频中黑屏死机》手动按电源键开机显示电量为6%
- 来电铃声和通话中的提示音
- 来电铃声和通话中的提示音
- 梅捷SY-A780G+冷启动黑屏,需Reset才能进入系统
- 【android开发】实现Activity息屏状态下点亮屏幕并弹出(类似来电界面)
- MTK启动短信优化闪屏(闪白屏或者黑屏)
- mtk 黑屏重启问题
- mtk 黑屏重启问题
- mac安装绿联USB转以太网驱动
- Android App更新功能
- redis memcache
- ie不支持 date()带参数方法解决办法
- opencv split和merge操作
- [通话][MTK]来电黑屏需按电源键才能点亮屏
- RecyclerView侧滑删除
- android 中的多进程模式
- JUnit initializationError的解决
- 数据结构实验之排序四:寻找大富翁 sdut oj (3401)
- webview Dialog在onPageFinished()中无法dismiss
- php 插入排序算法
- (LeetCode)Happy Number -- 寻找快乐数
- tjut 3443