0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開發(fā)實戰(zhàn)【通話管理】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-03-14 20:10 ? 次閱讀

簡介

通話管理模塊主要管理CS(Circuit Switch,電路交換)、IMS(IP Multimedia Subsystem,IP多媒體子系統(tǒng))和OTT(over the top,OTT解決方案)三種類型的通話,負(fù)責(zé)申請通話所需要的音視頻資源,并處理多路通話時產(chǎn)生的各種沖突。通話管理主要分為UI交互、服務(wù)管理、系統(tǒng)通話管理、通話音頻管理、通話視頻管理和藍(lán)牙通話管理六大模塊,各模塊簡介如下:

  1. UI交互模塊:負(fù)責(zé)和通話UI交互,如UI調(diào)用接口撥號,上報來電等狀態(tài)給UI。
  2. 服務(wù)管理模塊:負(fù)責(zé)啟動和初始化系統(tǒng)通話管理服務(wù)。
  3. 系統(tǒng)通話管理模塊:負(fù)責(zé)處理通話下行操作(如撥號、接聽、掛斷等)和上行狀態(tài)(來電狀態(tài)、呼叫等待狀態(tài)等)的處理,并解決通話過程中產(chǎn)生的沖突。
  4. 通話音頻管理模塊:負(fù)責(zé)通話時需要的音頻資源的申請和釋放,依賴多媒體子系統(tǒng),需要調(diào)用多媒體子系統(tǒng)接口進(jìn)行音頻相關(guān)的操作。
  5. 通話視頻管理模塊:負(fù)責(zé)通話時需要的視頻資源的申請和釋放,依賴多媒體子系統(tǒng),需要調(diào)用多媒體子系統(tǒng)接口進(jìn)行視頻相關(guān)的操作。
  6. 藍(lán)牙通話管理模塊:負(fù)責(zé)通話時需要的藍(lán)牙資源的申請和釋放,并處理藍(lán)牙設(shè)備發(fā)起的通話操作,如接聽和掛斷等。

其主要的結(jié)構(gòu)及流程如下圖所示:

圖 1 通話管理模塊架構(gòu)圖

約束

  • 開發(fā)語言:JavaScript。
  • 軟件上,需要與以下子系統(tǒng)和服務(wù)配合使用:安全子系統(tǒng),多媒體子系統(tǒng),軟總線基礎(chǔ)通信子系統(tǒng)(藍(lán)牙模塊),Telephony核心服務(wù)(core_service),蜂窩通話服務(wù)(cellular_call)。
  • 硬件上,需要搭載的設(shè)備支持以下硬件:揚(yáng)聲器或聽筒、麥克風(fēng)。

接口說明

表 1 通話管理對外提供的接口

[]()[]()接口內(nèi)容[]()[]()接口描述[]()[]()所需權(quán)限
[]()[]()function dial(phoneNumber: string, options: DialOptions, callback: AsyncCallback): void;[]()[]()撥號接口,調(diào)用此接口可以進(jìn)行撥號操作[]()[]()ohos.permission.PLACE_CALL

表 2 撥號接口參數(shù)說明

[]()[]()參數(shù)[]()[]()描述
[]()[]()phoneNumber: string[]()[]()電話號碼
[]()[]()options: DialOptions[]()[]()擴(kuò)展參數(shù)(詳見下表)
[]()[]()callback: AsyncCallback[]()[]()異步執(zhí)行結(jié)果,true表示執(zhí)行成功,false表示執(zhí)行失敗

表 3 options: DialOptions參數(shù)說明

[]()[]()參數(shù)[]()[]()類型[]()[]()描述[]()[]()是否必填[]()[]()默認(rèn)值
[]()[]()extras[]()[]()boolean[]()[]()false:音頻 true:視頻[]()[]()否[]()[]()false

使用說明

撥打電話接口調(diào)用流程及示例代碼

  1. 構(gòu)造phoneNumber和options參數(shù);

  2. 可以通過callback或者Promise的方式調(diào)用dial接口。

  3. 該接口為異步接口,相關(guān)執(zhí)行結(jié)果會從callback中返回。

    import call from "@ohos.telephony.call";
    
    let phoneNumber = "12312312312";
    
    // 調(diào)用接口【callback方式】
    call.dial(phoneNumber, {extras: false}, (err, value) = > {
      if (err) {
        // 接口調(diào)用失敗,err非空
        console.error(`failed to dial because ${err.message}`);
        return;
      }
      // 接口調(diào)用成功,err為空
      console.log(`success to dial: ${value}`);
    });
    
    // 調(diào)用接口【Promise方式】
    let promise = call.dial(phoneNumber, {extras: false});
    promise.then((value) = > {
      // 接口調(diào)用成功,此處可以實現(xiàn)成功場景分支代碼。
      console.log(`success to dial: ${value}`);
    }).catch((err) = > {
      // 接口調(diào)用失敗,此處可以實現(xiàn)失敗場景分支代碼。
      console.error(`failed to dial because ${err.message}`);
    });
    

    審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 鴻蒙
    +關(guān)注

    關(guān)注

    56

    文章

    2267

    瀏覽量

    42484
收藏 人收藏

    評論

    相關(guān)推薦

    鴻蒙開發(fā)就業(yè)前景到底怎么樣?

    有幫助,我想邀請大家?guī)臀胰齻€小忙: 點(diǎn)贊,轉(zhuǎn)發(fā),有你們的 『點(diǎn)贊和評論』,才是我創(chuàng)造的動力。 關(guān)注小編,同時可以期待后續(xù)文章ing?,不定期分享原創(chuàng)知識。 更多鴻蒙最新技術(shù)知識點(diǎn),請關(guān)注作者博客:鴻蒙實戰(zhàn)經(jīng)驗分享:
    發(fā)表于 05-09 17:37

    36歲了還有必要轉(zhuǎn)行鴻蒙開發(fā)嗎?

    。 關(guān)注小編,同時可以期待后續(xù)文章ing?,不定期分享原創(chuàng)知識。 更多鴻蒙最新技術(shù)知識點(diǎn),請關(guān)注作者博客:鴻蒙實戰(zhàn)經(jīng)驗分享:鴻蒙基礎(chǔ)入門開發(fā)
    發(fā)表于 05-09 17:01

    鴻蒙實戰(zhàn)開發(fā)-本地部署、SmartPerf 編譯部署指導(dǎo)文檔

    你們的 『點(diǎn)贊和評論』,才是我創(chuàng)造的動力。 關(guān)注小編,同時可以期待后續(xù)文章ing?,不定期分享原創(chuàng)知識。 更多鴻蒙最新技術(shù)知識點(diǎn),請關(guān)注作者博客:鴻蒙實戰(zhàn)經(jīng)驗分享:鴻蒙基礎(chǔ)入門
    發(fā)表于 05-09 14:23

    鴻蒙開發(fā)實戰(zhàn):【Hdf Framework】

    該倉主要存放OpenHarmony驅(qū)動子系統(tǒng)核心源碼信息(包括驅(qū)動框架、配置管理、配置解析、驅(qū)動通用框架模型、硬件通用平臺能力接口等),旨在為開發(fā)者提供更精準(zhǔn)、更高效的開發(fā)環(huán)境,力求做到一次
    的頭像 發(fā)表于 03-21 20:29 ?316次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>實戰(zhàn)</b>:【Hdf Framework】

    鴻蒙開發(fā)實戰(zhàn):【文件管理

    文件管理相關(guān)的功能,使用[@ohos.multimedia.medialibrary]、[@ohos.filemanagement.userFileManager]?、[@ohos.fileio
    的頭像 發(fā)表于 03-20 21:57 ?507次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>實戰(zhàn)</b>:【文件<b class='flag-5'>管理</b>】

    鴻蒙開發(fā)實戰(zhàn):【包管理子系統(tǒng)】

    管理子系統(tǒng)負(fù)責(zé)應(yīng)用安裝包的管理,提供安裝包的信息查詢、安裝、更新、卸載和包信息存儲等能力
    的頭像 發(fā)表于 03-14 15:23 ?439次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>實戰(zhàn)</b>:【包<b class='flag-5'>管理</b>子系統(tǒng)】

    鴻蒙實戰(zhàn)開發(fā)學(xué)習(xí):【HiView插件開發(fā)

    Hiview是一個跨平臺的終端設(shè)備維測服務(wù)集,其中是由插件管理平臺和插件實現(xiàn)的各自功能構(gòu)成整套系統(tǒng)。 本文描述了hiview插件開發(fā)的全部流程。
    的頭像 發(fā)表于 03-12 11:52 ?1113次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>實戰(zhàn)</b><b class='flag-5'>開發(fā)</b>學(xué)習(xí):【HiView插件<b class='flag-5'>開發(fā)</b>】

    鴻蒙實戰(zhàn)應(yīng)用開發(fā):【撥打電話】功能

    電話相關(guān)信息的功能 效果預(yù)覽 使用說明 1.輸入電話號碼后,點(diǎn)擊電話按鈕,進(jìn)行撥打電話。 2.撥打電話后文本框會顯示撥打是否成功,是否存在通話,通話狀態(tài),是否緊急號碼,格式化后的電話號碼。 工程目錄
    發(fā)表于 03-04 20:22

    鴻蒙實戰(zhàn)項目開發(fā):【短信服務(wù)】

    數(shù)據(jù)管理 電話服務(wù) 分布式應(yīng)用開發(fā) 通知與窗口管理 多媒體技術(shù) 安全技能 任務(wù)管理 WebGL 國際化開發(fā) 應(yīng)用測試 DFX面向未來設(shè)計
    發(fā)表于 03-03 21:29

    鴻蒙這么大聲勢,為何遲遲看不見崗位?最新數(shù)據(jù)來了

    管理 多媒體技術(shù) 安全技能 任務(wù)管理 WebGL 國際化開發(fā) 應(yīng)用測試 DFX面向未來設(shè)計 鴻蒙系統(tǒng)移植和裁剪定制 …… 《鴻蒙
    發(fā)表于 02-29 20:53

    使用 Taro 開發(fā)鴻蒙原生應(yīng)用 —— 快速上手,鴻蒙應(yīng)用開發(fā)指南

    隨著鴻蒙系統(tǒng)的不斷完善,許多應(yīng)用廠商都希望將自己的應(yīng)用移植到鴻蒙平臺上。最近,Taro 發(fā)布了 v4.0.0-beta.x 版本,支持使用 Taro 快速開發(fā)鴻蒙原生應(yīng)用,也可將現(xiàn)有的
    的頭像 發(fā)表于 02-02 16:09 ?693次閱讀
    使用 Taro <b class='flag-5'>開發(fā)</b><b class='flag-5'>鴻蒙</b>原生應(yīng)用 —— 快速上手,<b class='flag-5'>鴻蒙</b>應(yīng)用<b class='flag-5'>開發(fā)</b>指南

    1月18號“純鴻蒙”千帆啟航,程序員預(yù)備!

    8.安全技能 9.任務(wù)管理 10.WebGL 11.國際化開發(fā) 12.應(yīng)用測試 13.DFX面向未來設(shè)計 14.鴻蒙系統(tǒng)移植和裁剪定制 15…… 《鴻蒙進(jìn)階
    發(fā)表于 01-16 22:13

    免費(fèi)學(xué)習(xí)鴻蒙(HarmonyOS)開發(fā),一些地址分享

    。 分別有ArkTS語言、ArkUI聲明式UI開發(fā)、Stage模型、北向和南向的開發(fā)等等鴻蒙入門到實戰(zhàn)的內(nèi)容。
    發(fā)表于 01-12 20:48

    鴻蒙 OS 應(yīng)用開發(fā)初體驗

    kotlin 語言了,編程語言變成了類 JavaScript 的前端語言,這意味著我們需要適應(yīng)用前端的思想去開發(fā)鴻蒙應(yīng)用,比如狀態(tài)管理。 總結(jié) 本文純初體驗遙遙領(lǐng)先背后的鴻蒙操作系統(tǒng)
    發(fā)表于 11-02 19:38

    LabVIEW入門與實戰(zhàn)開發(fā)100例

    LabVIEW入門與實戰(zhàn)開發(fā)100例,實用例子
    發(fā)表于 10-26 15:25 ?39次下載