Android呼出电话MO流程.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android呼出电话MO流程

Android呼出电话MO流程 目录(?)[-] ? 一应用层的流程 拨号盘初步处理 号码初级处理阶段 互联网通话处理阶段SipCallOptionHandlerjava Phone模块其他的处理 ? 二framework中的流程 Phone的来历 我们是如何通过pickPhoneBasedOnNumber的方式得到的Phone对象的 继续拨号之旅 ? 三总体流程图 我们从按下拨号开始分析呼出电话的流程。此流程从拨号盘分析到RIL层。 一、应用层的流程 1.1、拨号盘初步处理 [java]view plaincopy ? @DialpadFragment.java ? public void dialButtonPressed() { ? //得到号码 ? final String number = mDigits.getText().toString(); ? //得到拨号的Intent ? final Intent intent = ContactsUtils.getCallIntent(number, ? (getActivity() instanceof DialtactsActivity ? ? ((DialtactsActivity)getActivity()).getCallOrigin() : null)); ? startActivity(intent); ? mClearDigitsOnStop = true; ? getActivity().finish(); ? } 来看上面得到Intent的过程: [java]view plaincopy ? @ContactsUtils.java ? public static Intent getCallIntent(String number, String callOrigin) { ? 用号码构建一个类似tel:10086的Uri ? return getCallIntent(getCallUri(number), callOrigin); ? } ? public static Intent getCallIntent(Uri uri, String callOrigin) { ? final Intent intent = new Intent(Intent.ACTION_CALL_PRIVILEGED, uri); ? intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); ? if (callOrigin != null) { ? intent.putExtra(DialtactsActivity.EXTRA_CALL_ORIGIN, callOrigin); ? } ? return intent; ? } 这个过程可以看出,发出的Intent由一下几个结构组成: 1、Action为:ACTION_CALL_PRIVILEGED,(android.intent.action.CALL_PRIVILEGED); 2、Flag为:FLAG_ACTIVITY_NEW_TASK; 3、号码Uri为:tel:10086 然后经过startActivity发送出去。那么是那个Activity接受的呢? 1.2、号码初级处理阶段 这个过程主要针对紧急呼叫处理(OutgoingCallBroadcaster.java)。 在Phone模块的AndroidManifest.xml文件中有如下描述: [java]view plaincopy ? activity-alias android:name=PrivilegedOutgoingCallBroadcaster ? android:targetActivity=OutgoingCallBroadcaster ? android:screenOrientation=nosensor ? android:permission=android.permission.CALL_PRIVILEGED ? intent-filter ? action

文档评论(0)

l215322 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档