最近在移植ICS的sip call。现把移植经历分享一下。
sip call拨打电话过程跟正常拨打电话过程没什么两样。但是sip call需要有WiFi的支持。并且有sip server可以提供账户。
SipSettings.java是sip call的通话设置。ICS已经做好。只需要开启WiFi,可以添加账户。并可以选择允许接听电话否?
接下来,你就可以拨打电话了。下面说说拨打电话的过程。
1.首先,要打开sip call的权限。可以在.*.mk文件中。添加
PRODUCT_COPY_FILES += \
frameworks/base/data/etc/android.software.sip.xml:$(PRODUCT_OUT)/system/etc/permissions/android.software.sip.xml \
frameworks/base/data/etc/android.software.sip.voip.xml:$(PRODUCT_OUT)/system/etc/permissions/android.software.sip.voip.xml
2.在DialpadFragment.java中。可以设置一个sip的拨号键。
->dialButtonPressed(),设置一个intent = new Intent(Intent.ACTION_CALL_PRIVILEGED,
Uri.fromParts("sip", number, null));
3.其他过程同ICS打电话过程一样,请参考我之前的ICS来电话,打电话过程。此处不再赘述。需要注意的是。在SipCallOptionHandler.java中createSipPhoneIfNeeded()会创建并注册sip phone。如何没有创建,需要检查PhoneApp.java中是否需要创建。
如果没有意外,那么恭喜你,sip call已经可以拨打通话了。
接听电话过程。
首先需要在sip setting中,将允许接听电话的选项勾选上。
1,在SipBroadcastReceiver.java中。onReceive()中当勾选允许接听以后,action.equals(SipManager.ACTION_SIP_ADD_PHONE)会创建并注册一个sip phone.
2.当电话来之后,会收到ACTION_SIP_INCOMING_CALL广播。调用
->takeCall()
3.SipPhone.java
->canTake()
如果没有意外,恭喜你。sip可以接听电话了。
分享到:
相关推荐
Android ICS webkit移植分析
最新版的ics支持d7-xe10.1,还支持OpenSSL-Win32 主要控件请见OverbyteIcsReg.pas uses {$IFDEF FMX} FMX.Types, Ics.Fmx.OverbyteIcsWndControl, Ics.Fmx.OverbyteIcsWSocket, Ics.Fmx.OverbyteIcsDnsQuery, ...
讲xlsx文件的课表,转成ics格式,然后就可以批量的将课表添加到日历中。以实现对生活更有逻辑的管理
中国农历 ics 文件 1941-2050 全。 文件
已经解决所有编译遇到的坑 直接编译引用就可用 ics 2010 OverbyteIcsV7.zip ICS很有名!
ICS lab10 WebProxy 包含 proxy.c
ICS delphi 通信组建,特别是FTP易用稳定。
ics delphi 组件ics delphi 组件ics delphi 组件
该日历资源用github的代码爬自香港天文台,包含了中国农历ics文件2000年-2100年间100年的全部农历日历,带二十四节气(不需要这么长时间的可以再文本编辑器打开删除即可)。 直接生成的数据仅每月初一带月份,其余...
以一个网站的基本功能演示了ics的httpcli使用方法。
xiaomi-corporation-xiaomi-2020-annual-results-investor-conference-call-and-audio-webcast.ics.html
ics component 8 xe4 ics component 8 xe4
delphi ics中的Demo例子,很丰富。
【分享】利用批处理自动开启internet连接共享(ICS)。可以指定网卡,开启或关闭。
ics_ftpclient 创建文件路径
自己改了多处条码编译指令,让其兼容最新的D10.2, non blocking的socket组件 ICS最适合不过了.
ICS控件及demo,ICS控件及demo,ICS控件及demo,Delphi代码
日历2021.ics
d7的ics套件,测试可用~~ ICS是一套非常棒的免费互联网相关控件包,包含全部代码,并自带丰富的例子。
ICS - Internet Component Suite - V8 - Delphi 7 to RAD Studio 10 Seattle ======================================================================= (Aka FPIETTE's Components) Revised: March 3, 2016 ...