微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > No SIM or SIM error will always stay in calling screen if double press call...

No SIM or SIM error will always stay in calling screen if double press call...

时间:10-02 整理:3721RD 点击:
No SIM, or SIM error" will always stay in calling screen if double press call key on BT heADSet without SIM card.
[DESCRIPTION]
手机插入卡,拨打10010,查看通话记录有历史记录关机,不插卡,开机后,用蓝牙耳机连接手机
用蓝牙耳机拨号,手机抛出"No SIM, or SIM error",不要点击ok关闭Popup,再次用蓝牙耳机拨号,
点击ok关闭popup后,手机一直处于拨号界面
点击End Call按钮,手机才会再次抛出"No SIM, or SIM error",还需要点击ok关闭Popup
期望行为:再第二次用蓝牙耳机拨号后,点击Ok关闭popup,且Call界面关闭
[SOLUTION]
没插卡时,通过BT 的按键呼叫一通MO Call,(最终和Dialer呼叫一样也是从CallActivity出发..
),会弹NO SIM Dialog界面。
停在Dialog界面不做任何操作, 稍等一会,等这一通Call断掉后, 再次从BT的按键发起一通新的
MO Call.
第一次MO Call,属于PENDING_OUTGOING 并且没有有效的PhoneAccount的call,因此会在起
InCallActivity的时候被InCallUI断掉,并显示No sim提示框;
第二次从BT 拨打MO Call,此时因为InCallActivity已经显示在前台,因此没有去做start
activity的动作,检查这通call是否有PhoneAccount的逻辑也没有走到,因此这通call一直处于
PENDING_OUTGOING,这时点击no sim提示框之后因为还有一通call在所以不会去主动finish ui。只
有点击end button,才会去断第二通 call,断掉之后发现其也是没有PhoneAccount,因此再次显示
了no sim的提示。
可以尝试的修改如下:
InCallPresenter.java中startOrFinishUi(InCallState)
将此处
showCallUi |= InCallState.PENDING_OUTGOING == newState && mainUiNotVisible
&& isCallWithNoValiDACcounts(CallList.getInstance().getPendingOutgoingCall());
修改为
showCallUi |= InCallState.PENDING_OUTGOING == newState
&& isCallWithNoValidAccounts(CallList.getInstance().getPendingOutgoingCall());

签到专用组

xiaoshouyidou

签到专用组

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top