升级到 2.1 - update1 固件版本后,我在 Motorola Milestone 上的服务存在 ACTION_CALL 意图问题。我有一个非常简单(以前工作过)的代码。
Intent dialIntent = new Intent(Intent.ACTION_CALL, Uri.parse("tel://"
+ dialOutNumber));
dialIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(dialIntent);
现在看起来 InCallScreen 在设置音频模式或 ActivityManager “阻止” InCallScreen 活动后“挂断”电话确实通话,但屏幕为黑色并锁定。如果我从一个活动中调用 ACTION_CALL 意图,它就可以正常工作。这是日志:
<p>07-01 00:42:39.617: INFO/ActivityManager(1282): Starting activity:
Intent { act=android.intent.action.CALL dat=tel:5247519 flg=0x10000000
cmp=com.android.phone/.OutgoingCallBroadcaster }
07-01 00:42:39.664: DEBUG/PhoneUtils(6381):
checkAndCopyPhoneProviderExtras: some or all extras are missing.
...
07-01 00:42:40.679: DEBUG/InCallScreen(6381): placeCall()... intent =
Intent { act=android.intent.action.CALL dat=tel:5247519 flg=0x10800000
cmp=com.android.phone/.InCallScreen (has extras) }
07-01 00:42:40.679: DEBUG/InCallScreen(6381):
checkIfOkToInitiateOutgoingCall: ServiceState = 0
07-01 00:42:40.679: DEBUG/PhoneUtils(6381): placeCall: '5247519'...
...
07-01 00:42:40.710: DEBUG/PhoneUtils(6381): ===> phone.dial()
returned: incoming: false state: DIALING post dial state: NOT_STARTED
07-01 00:42:40.710: DEBUG/PhoneUtils(6381):
setAudioMode(MODE_IN_CALL)...
07-01 00:42:40.710: DEBUG/AudioHardwareMot(1055):
AudioMgr:setMode(IN_CALL)
07-01 00:42:40.710: DEBUG/AudioHardwareMot(1055): AudioMgr:setMode
MODE_IN_CALL
07-01 00:42:40.710: INFO/MYPhoneService(6437): Telephony OFFHOOK
...
Here the screen is black and locked ~ 3 min. Only status panel
available. Call ends. After some timeout see InCallScreen... If start
from the Activity - the InCallScreen apears right after call start.
...
07-01 00:45:14.031: DEBUG/InCallScreen(6381): placeCall:
PhoneUtils.placeCall() succeeded for regular call '5247519'.
07-01 00:45:14.031: DEBUG/DTMFTwelveKeyDialer(6381): closeDialer()...
07-01 00:45:14.031: DEBUG/DTMFTwelveKeyDialer(6381): clearDigits()...
07-01 00:45:14.031: DEBUG/PhoneApp(6381): updateProximitySensorMode:
state = OFFHOOK
07-01 00:45:14.031: DEBUG/PhoneApp(6381): updateProximitySensorMode:
lock already released.
07-01 00:45:14.031: DEBUG/PhoneApp(6381): isInDockMode bInDockMode
is : false
07-01 00:45:14.039: DEBUG/StatusBar(1282): DISABLE_EXPAND: yes </p>
我可以发送完整的日志,但它真的很大。提前致谢。