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

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

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

OpenHarmony跳轉(zhuǎn)撥號(hào)界面

ArkUI詳解 ? 2022-08-15 17:20 ? 次閱讀

OpenHarmony跳轉(zhuǎn)撥號(hào)界面

當(dāng)應(yīng)用需要跳轉(zhuǎn)到撥號(hào)界面,并顯示撥號(hào)的號(hào)碼時(shí),大家就可以來(lái)看這篇文章,當(dāng)開發(fā)者調(diào)用makeCall接口時(shí),設(shè)備會(huì)自動(dòng)跳轉(zhuǎn)到撥號(hào)界面。和正常撥打電話一樣,用戶可以選擇卡1或卡2撥出。

先來(lái)看一下實(shí)現(xiàn)的效果。

2

直接撥打電話需要系統(tǒng)權(quán)限ohos.permission.PLACE_CALL,建議應(yīng)用使用makeCall(),跳轉(zhuǎn)到撥號(hào)界面,并顯示撥號(hào)的號(hào)碼。下面開始正文。

接口說(shuō)明

call模塊為開發(fā)者提供呼叫管理功能。observer模塊為開發(fā)者提供通話業(yè)務(wù)狀態(tài)訂閱和取消訂閱功能。

call.hasVoiceCapability():能力獲取,表示是否具有語(yǔ)音功能。

call.makeCall()跳轉(zhuǎn)撥號(hào)界面,跳轉(zhuǎn)到撥號(hào)界面,并顯示撥號(hào)的號(hào)碼。

observer.on(‘callStateChange’):訂閱通話業(yè)務(wù)狀態(tài)變化,ohos.permission.READ_CALL_LOG (獲取通話號(hào)碼需要該權(quán)限)

observer.off(‘callStateChange’):取消訂閱通話業(yè)務(wù)狀態(tài)變化.

開發(fā)步驟

1.import需要的模塊。

// import需要的模塊

import

call

from

'@ohos.telephony.call'

;

import

observer

from

'@ohos.telephony.observer'

;

2.調(diào)用hasVoiceCapability()接口獲取當(dāng)前設(shè)備呼叫能力,如果支持繼續(xù)下一步;如果不支持則無(wú)法發(fā)起呼叫。

// 調(diào)用查詢能力接口

let

isSupport

=

call

.

hasVoiceCapability

();

if

(

!

isSupport

) {

console

.

log

(

"not support voice capability, return."

);

return

;

}

3.跳轉(zhuǎn)到撥號(hào)界面,并顯示撥號(hào)的號(hào)碼。

// 如果設(shè)備支持呼叫能力,則繼續(xù)跳轉(zhuǎn)到撥號(hào)界面,并顯示撥號(hào)的號(hào)碼

call

.

makeCall

(

"13xxxx"

, (

err

)

=>

{

if

(

!

err

) {

console

.

log

(

"make call success."

);

}

else

{

console

.

log

(

"make call fail, err is:"

+

JSON

.

stringify

(

err

));

}

});

4.(可選)訂閱通話業(yè)務(wù)狀態(tài)變化。

// 訂閱通話業(yè)務(wù)狀態(tài)變化(可選)

observer

.

on

(

"callStateChange"

, (

data

)

=>

{

console

.

log

(

"call state change, data is:"

+

JSON

.

stringify

(

data

));

});

5.取消訂閱通話業(yè)務(wù)狀態(tài)變。

// 取消訂閱通話業(yè)務(wù)狀態(tài)變

observer

.

off

(

"callStateChange"

, (

data

)

=>

{

console

.

log

(

"call state change, data is:"

+

JSON

.

stringify

(

data

));

});

最后附上完整代碼:

?

/**

*

* @FileName : call

* @Author : 堅(jiān)果

* @Time : 2022/8/15 08:20

* @Description : 文件描述

*/

// import需要的模塊

import

call

from

'@ohos.telephony.call'

;

import

observer

from

'@ohos.telephony.observer'

;

@

Entry

@

Component

struct

CAllTest

{

build

(){

?

Column

(){

?

Button

(

"打電話"

).

width

(

200

).

height

(

80

) .

fontSize

(

30

).

fontColor

(

Color

.

Orange

).

onClick

(()

=>

{

// 調(diào)用查詢能力接口

let

isSupport

=

call

.

hasVoiceCapability

();

if

(

!

isSupport

) {

console

.

info

(

" support voice capability, return"

);

return

;

}

// 如果設(shè)備支持呼叫能力,則繼續(xù)跳轉(zhuǎn)到撥號(hào)界面,并顯示撥號(hào)的號(hào)碼

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

)

?

?

}

}

感謝大家的支持。

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

    關(guān)注

    25

    文章

    3741

    瀏覽量

    16462
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    USB PPP撥號(hào)上網(wǎng),看這篇!

    今天一起來(lái)看看,如何使用PPP撥號(hào)的方式快速實(shí)現(xiàn)USB上網(wǎng)。 一、Windows下PPP撥號(hào) 1.1 配置標(biāo)準(zhǔn)調(diào)制解調(diào)器 1)選擇COM口 具體操作如下: 打開控制面板—>電話和調(diào)制解調(diào)器
    的頭像 發(fā)表于 01-08 18:24 ?107次閱讀
    USB PPP<b class='flag-5'>撥號(hào)</b>上網(wǎng),看這篇!

    鴻蒙原生頁(yè)面高性能解決方案上線OpenHarmony社區(qū) 助力打造高性能原生應(yīng)用

    Nodepool、HMrouter和DataCache 三大解決方案,并上架OpenHarmony開源社區(qū)分,分別針對(duì)應(yīng)用頁(yè)面滑動(dòng)、跳轉(zhuǎn)、首頁(yè)冷啟動(dòng)等關(guān)鍵性能場(chǎng)景提供高效易用的工具,助力伙伴和開發(fā)者打造
    發(fā)表于 01-02 18:00

    基于ArkTS語(yǔ)言的OpenHarmony APP應(yīng)用開發(fā):HelloOpenharmony

    1、程序簡(jiǎn)介該程序是基于OpenHarmony標(biāo)準(zhǔn)系統(tǒng)編寫的UI應(yīng)用類:HelloOpenHarmony。本案例是基于API9接口開發(fā)。本案例已在OpenHarmony凌蒙派-RK3568開發(fā)
    的頭像 發(fā)表于 09-15 08:09 ?454次閱讀
    基于ArkTS語(yǔ)言的<b class='flag-5'>OpenHarmony</b> APP應(yīng)用開發(fā):Hello<b class='flag-5'>Openharmony</b>

    基于ArkTS語(yǔ)言的OpenHarmony APP應(yīng)用開發(fā):HelloOpenharmony

    3.0.0.993\\\\bin),如下所示: 4.2、創(chuàng)建工程 點(diǎn)擊“Create Project”按鈕,如下所示: 彈出“Create Project”界面,選擇“OpenHarmony”,再選
    發(fā)表于 09-14 12:47

    4G卡插上無(wú)法正常撥號(hào)的解決辦法

    ://192.168.2.1”,“用戶名/密碼”默認(rèn)為:adm/123456。進(jìn)入如下界面: 第三步:選擇網(wǎng)絡(luò)-撥號(hào)接口(Cellular),進(jìn)入撥號(hào)參數(shù)配置界面 第三步:根據(jù)手機(jī)
    發(fā)表于 07-24 06:56

    鴻蒙開發(fā)電話服務(wù):【@ohos.telephony.call (撥打電話)】

    call模塊提供呼叫管理功能,包括撥打電話、跳轉(zhuǎn)撥號(hào)界面、獲取通話狀態(tài)、格式化電話號(hào)碼等。
    的頭像 發(fā)表于 06-15 09:13 ?884次閱讀
    鴻蒙開發(fā)電話服務(wù):【@ohos.telephony.call (撥打電話)】

    鴻蒙Ability Kit(程序框架服務(wù))【Ability內(nèi)頁(yè)面間的跳轉(zhuǎn)

    基于Stage模型下的Ability開發(fā),實(shí)現(xiàn)Ability內(nèi)頁(yè)面間的跳轉(zhuǎn)和數(shù)據(jù)傳遞。
    的頭像 發(fā)表于 06-03 20:43 ?324次閱讀
    鴻蒙Ability Kit(程序框架服務(wù))【Ability內(nèi)頁(yè)面間的<b class='flag-5'>跳轉(zhuǎn)</b>】

    鴻蒙原生應(yīng)用元服務(wù)開發(fā)-WEB跨應(yīng)用跳轉(zhuǎn)

    ; // 判斷鏈接是否為撥號(hào)鏈接 if (url.indexOf(\'tel://\') === 0) { // 跳轉(zhuǎn)撥號(hào)界面 call.makeCall(url.substring(6
    發(fā)表于 05-27 15:06

    HarmonyOS開發(fā)案例:【UIAbility內(nèi)和UIAbility間頁(yè)面的跳轉(zhuǎn)

    基于Stage模型下的UIAbility開發(fā),實(shí)現(xiàn)UIAbility內(nèi)和UIAbility間頁(yè)面的跳轉(zhuǎn)
    的頭像 發(fā)表于 05-09 15:06 ?1657次閱讀
    HarmonyOS開發(fā)案例:【UIAbility內(nèi)和UIAbility間頁(yè)面的<b class='flag-5'>跳轉(zhuǎn)</b>】

    HarmonyOS開發(fā)案例:【Ability內(nèi)頁(yè)面間的跳轉(zhuǎn)

    基于Stage模型下的Ability開發(fā),實(shí)現(xiàn)Ability內(nèi)頁(yè)面間的跳轉(zhuǎn)和數(shù)據(jù)傳遞。
    的頭像 發(fā)表于 05-09 10:39 ?610次閱讀
    HarmonyOS開發(fā)案例:【Ability內(nèi)頁(yè)面間的<b class='flag-5'>跳轉(zhuǎn)</b>】

    YouTube Premium新功能“精彩部分跳轉(zhuǎn)”上線,用戶喜好預(yù)測(cè)跳轉(zhuǎn)功能亮相

    這項(xiàng)服務(wù)基于AI技術(shù)和用戶數(shù)據(jù)分析,能夠準(zhǔn)確預(yù)測(cè)用戶可能感興趣的視頻片段,并直接跳轉(zhuǎn)至最精彩的部分。自今年3月起,YouTube已開始進(jìn)行此功能的測(cè)試,最初僅向美國(guó)的部分高級(jí)用戶開放,而如今所有YouTube高級(jí)會(huì)員均可在youtube.com/new上試用此功能。
    的頭像 發(fā)表于 05-06 16:25 ?983次閱讀

    基于STM32G4的BOOT至APP跳轉(zhuǎn)問(wèn)題排查與實(shí)戰(zhàn)指南

    這里實(shí)際上有3個(gè)工程,每個(gè)工程做跳轉(zhuǎn)時(shí)跳轉(zhuǎn)地址不一樣。這里不妨以從BOOT區(qū)跳往AAP1區(qū)為例,看看跳轉(zhuǎn)前做的哪些準(zhǔn)備工作。
    發(fā)表于 03-11 11:25 ?5305次閱讀
    基于STM32G4的BOOT至APP<b class='flag-5'>跳轉(zhuǎn)</b>問(wèn)題排查與實(shí)戰(zhàn)指南

    淺談兼容 OpenHarmony 的 Flutter

    OpenHarmony SIG 組織在 Gitee 開源了兼容 OpenHarmony 的 Flutter。該組織主要用于孵化 OpenHarmony 相關(guān)的開源生態(tài)項(xiàng)目。 ? ? ▲ 倉(cāng)庫(kù)地址
    的頭像 發(fā)表于 02-02 15:22 ?650次閱讀
    淺談兼容 <b class='flag-5'>OpenHarmony</b> 的 Flutter

    Qt For OpenHarmony圖形化的進(jìn)展突破

    Qt 適配 OpenHarmony 意義 Qt 是一個(gè) C++ 跨平臺(tái)開發(fā)框架,主要用于開發(fā)圖形用戶界面(Graphical User Interface,GUI)程序,具有跨平臺(tái)類庫(kù)(支持目前
    的頭像 發(fā)表于 02-02 14:29 ?1626次閱讀
    Qt For <b class='flag-5'>OpenHarmony</b>圖形化的進(jìn)展突破

    PSoC5.4在卸載程序所在cypress文件后,重新安裝時(shí)會(huì)跳轉(zhuǎn)到卸載界面,最后安裝失敗的原因?

    在卸載程序所在cypress文件后,重新安裝時(shí)會(huì)跳轉(zhuǎn)到卸載界面,最后安裝失敗。請(qǐng)問(wèn)是什么原因?需要怎么解決嗎?
    發(fā)表于 01-26 07:16