點擊藍字 ╳ 關注我們
開源項目 OpenHarmony是每個人的 OpenHarmony徐建國
潤和軟件生態技術專家
以下內容來自嘉賓分享,不代表開放原子開源基金會觀點一、簡介
日常生活中,打電話是最常見的交流方式之一,那么如何在OpenAtom OpenHarmony(簡稱“OpenHarmony”)中進行電話服務相關的開發呢?今天我們可以一起來了解一下如何通過電話服務系統支持的API實現撥打電話的功能。二、效果展示
? 應用可以通過調用call和observer模塊的API來獲取當前注冊網絡名稱、網絡服務狀態、信號強度以及SIM卡的相關信息,具體可參考獲取當前蜂窩網絡信號信息開發指導。 直接撥打電話需要提供系統權限ohos.permission.PLACE_CALL,在這里建議應用使用makeCall(),跳轉到撥號界面,并顯示撥號的號碼,當開發者調用makeCall接口時,設備會自動跳轉到撥號界面。 ?三、接口說明
call模塊為開發者提供呼叫管理功能。observer模塊為開發者提供通話業務狀態訂閱和取消訂閱功能。 call.hasVoiceCapability():能力獲取,表示是否具有語音功能。 call.makeCall()跳轉撥號界面,跳轉到撥號界面,并顯示撥號的號碼。 observer.on(‘callStateChange’):訂閱通話業務狀態變化,ohos.permission.READ_CALL_LOG (獲取通話號碼需要該權限)。 observer.off(‘callStateChange’):取消訂閱通話業務狀態變化。四、開發步驟
1.import需要的模塊。
// import需要的模塊
import call from '@ohos.telephony.call';
importobserverfrom'@ohos.telephony.observer';
2.調用hasVoiceCapability()接口獲取當前設備呼叫能力,如果支持繼續下一步;如果不支持則無法發起呼叫。
// 調用查詢能力接口
let isSupport = call.hasVoiceCapability();
if (!isSupport) {
console.log("not support voice capability, return.");
return;
}
3.跳轉到撥號界面,并顯示撥號的號碼。
// 如果設備支持呼叫能力,則繼續跳轉到撥號界面,并顯示撥號的號碼
call.makeCall("13xxxx", (err)=> {
if (!err) {
console.log("make call success.");
} else {
console.log("make call fail, err is:" + JSON.stringify(err));
}
});
4.訂閱通話業務狀態變化。(可選)
// 訂閱通話業務狀態變化(可選)
observer.on("callStateChange", (data) => {
console.log("call state change, data is:" + JSON.stringify(data));
});
5.取消訂閱通話業務狀態變話。(可選)
// 取消訂閱通話業務狀態變化
observer.off("callStateChange", (data) => {
console.log("call state change, data is:" + JSON.stringify(data));
});
五、完整代碼
//import需要的模塊
import call from '@ohos.telephony.call';
import observer from '@ohos.telephony.observer';
struct CAllTest{
build(){
Column(){
Button("打電話給堅果").width(300).height(80) .fontSize(30).fontColor(Color.Orange).onClick(()=>{
// 調用查詢能力接口
let isSupport = call.hasVoiceCapability();
if (!isSupport) {
console.info(" support voice capability, return");
return;
}
// 如果設備支持呼叫能力,則繼續跳轉到撥號界面,并顯示撥號的號碼
call.makeCall("17752170152", (err)=> {
if (!err) {
console.info(" make call success.");
} else {
console.info("make call fail, err is:" + JSON.stringify(err));
}
});
})
}.width("100%").height("100%").justifyContent(FlexAlign.Center)
}
}
源碼地址
https://gitee.com/jianguo888/callphone
六、總結
本文通過一個按鈕,實現了跳轉撥號的功能。首先為按鈕添加點擊事件,其次導入需要的模塊,調用hasVoiceCapability()接口獲取當前設備呼叫能力,最終實現一鍵跳轉到撥號界面。大家可以將這個功能擴展到自己的應用里。比如,在一鍵呼叫,售后服務等場景。
原文標題:在DAYU200上實現OpenHarmony跳轉撥號界面
文章出處:【微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
OpenHarmony
+關注
關注
25文章
3744瀏覽量
16473
原文標題:在DAYU200上實現OpenHarmony跳轉撥號界面
文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
dayu200 rk3568 openharmony5.0 sim卡 通話服務
想請問一下有人在dayu200 rk3568上插過sim卡并且成功完成過通話服務嗎?
我現在在dayu200上燒錄了openHarmony
發表于 12-26 16:52
如何實現DAYU200開發板使能Panfrost驅動并且支持OpenHarmony呢
如何實現DAYU200開發板使能Panfrost驅動并且支持OpenHarmony呢?
發表于 03-02 10:26
OpenHarmony 3.1 Release初體驗 潤和DAYU200開發套件
固件下載手里剛好有一塊DAYU200開發板,官方剛好有發布編譯的固件,下載鏈接:https://gitee.com/openharmony/docs/blob/master/zh-cn
發表于 03-31 18:10
潤和DAYU200領跑OpenHarmony富設備產業化!
火熱進行,歡迎廣大開發者踴躍報名。此外,即將于4月25日在深圳召開的以“共建新技術 開拓新領域”為主題的OpenHarmony 330技術日大型活動上,潤和DAYU200將亮相多個展區、提供豐富的富設備
發表于 04-21 20:06
在DAYU200上實現OpenHarmony跳轉撥號界面
為按鈕添加點擊事件,其次導入需要的模塊,調用hasVoiceCapability()接口獲取當前設備呼叫能力,最終實現一鍵跳轉到撥號界面。大家可以將這個功能擴展到自己的應用里。比如,
發表于 10-19 11:39
【潤和軟件DAYU200開發板體驗】移植speexdsp到OpenHarmony標準系統功能演示
該視頻已經同步上傳至硬聲app,賬號名稱離北況歸移植speexdsp到OpenHarmony標準系統系列文章:【潤和軟件DAYU200開發板體驗】移植speexdsp到OpenHarmony標準
發表于 11-06 22:35
潤開鴻DAYU200及DAYU210聯袂通過OpenHarmony 3.2 Release版本兼容性測評
百業的生態使命。
在2023開放原子全球開源峰會OpenHarmony分論壇OpenHarmony 3.2 Release先行示范儀式上,潤開鴻受邀參與儀式的官方展示環節,分享了
發表于 09-22 11:11
OpenHarmony Dev-Board-SIG專場:DAYU200開源計劃—代碼上Master需要的材料
OpenHarmony Dev-Board-SIG專場:DAYU200開源計劃—代碼上Master需要的材料
DAYU200開發版升級openHarmony3.1 release版本
今天收到了來自潤和的DAYU200的開發板,我們在開機之后,查看關于手機,這一欄,發現openharmony的版本是3.1的beta版,于是我們先做個升級,然后進行更多的體驗,
【潤和軟件DAYU200開發板體驗】潤和軟件DAYU200開發板開箱篇
創新為內涵的大禹治水精神,寓意著DAYU秉承OpenHarmony“以開發者為本”的開源治理宗旨和積極擔當國產化歷史使命的責任定位。 ? ?? 潤和軟件DAYU200基
喜大普奔!DAYU200能打電話了—OpenHarmony 3.1新特性!
OpenHarmony3.1Release已于3月31號發布,目前DAYU200是首款支持OpenHarmony3.1Release版本的開發套件。DAYU200現已面向行業和開發者全
潤和軟件DAYU200的OpenHarmony賦能之旅
2021年,潤和軟件推出了OpenHarmony高性能設備平臺大禹系列,其中DAYU200作為首款支持OpenHarmony富設備的開發板,是廣大開發者探索OpenHarmony開發的
評論