通过adb shell获取当前窗口,目的是判断是否有电话接入
获取当前窗口信息: adb shell dumpsys window windows | grep mCurrent
在锁屏状态:mCurrentFocus=Window{d4d7e33 u0 com.ss.android.article.news/com.ss.android.lockscreen_wrapper.NoViewLockScreenActivity}
在拨出电话时:mCurrentFocus=Window{d82f181 u0 com.android.incallui/com.android.incallui.InCallActivity}
在有电话接入时,也是以上这个信息返回
在拨号界面上:mCurrentFocus=Window{e802394 u0 com.android.contacts/com.android.contacts.activities.DialtactsActivity
解锁后在主界面上:mCurrentFocus=Window{b48a42b u0 com.huawei.android.launcher/com.huawei.android.launcher.Launcher}
根据以上信息,语音信箱的实现思路为:
1. 循环,判断当前窗口为InCallActivity时,播放语音
2. 启动录音