最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

OpenHarmony如何調(diào)用電話服務(wù)API撥打電話

 更新時(shí)間:2022年11月23日 09:32:02   作者:堅(jiān)果的博客  
OpenHarmony3.1版本標(biāo)準(zhǔn)系統(tǒng)增加了通話相關(guān)的聯(lián)系人應(yīng)用,來電應(yīng)用等,在系統(tǒng)服務(wù)層面電話相關(guān)功能也比較完善,這篇文章主要介紹了OpenHarmony如何調(diào)用電話服務(wù)API撥打電話

OpenHarmony電話服務(wù)開發(fā)

電話服務(wù)系統(tǒng)提供了一系列的API用于撥打電話、獲取無線蜂窩網(wǎng)絡(luò)和SIM卡相關(guān)信息。

應(yīng)用可以通過調(diào)用API來獲取當(dāng)前注冊(cè)網(wǎng)絡(luò)名稱、網(wǎng)絡(luò)服務(wù)狀態(tài)、信號(hào)強(qiáng)度以及SIM卡的相關(guān)信息,具體可參考獲取當(dāng)前蜂窩網(wǎng)絡(luò)信號(hào)信息開發(fā)指導(dǎo)。

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

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

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

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

接口說明

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

  • call.hasVoiceCapability():能力獲取,表示是否具有語音功能。
  • 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ù)下一步;如果不支持則無法發(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));
});

完畢

最后附上完整代碼:

/*
 * Copyright (c) 2022 JianGuo Device Co., Ltd.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**     
  * @ProjectName : nutsStudy
  * @FileName :  call
  * @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)
}
}

到此這篇關(guān)于OpenHarmony如何調(diào)用電話服務(wù)API撥打電話的文章就介紹到這了,更多相關(guān)OpenHarmony撥打電話內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Android 自定義精美界面包含選項(xiàng)菜單 上下文菜單及監(jiān)聽詳解流程

    Android 自定義精美界面包含選項(xiàng)菜單 上下文菜單及監(jiān)聽詳解流程

    這篇文章主要介紹了一個(gè)Android實(shí)例小項(xiàng)目,它包含了選項(xiàng)菜單、上下文菜單及其對(duì)應(yīng)的監(jiān)聽事件,它很小,但這部分功能在Android開發(fā)中很常見,需要的朋友來看看吧
    2021-11-11
  • android 分辨率適配的方法

    android 分辨率適配的方法

    先和大家分享下,這個(gè)方法不能說萬能的,但是最起碼它解決了分辨率跟密集度的關(guān)系,但是也引來一個(gè)問題,就是布局會(huì)因?yàn)閳D片資源小而失真,本文將詳細(xì)介紹android 分辨率適配的方法,需要的朋友可以參考下
    2012-11-11
  • Kotlin文件讀寫與SharedPreferences存儲(chǔ)功能實(shí)現(xiàn)方法

    Kotlin文件讀寫與SharedPreferences存儲(chǔ)功能實(shí)現(xiàn)方法

    SharedPreferences是安卓平臺(tái)上一個(gè)輕量級(jí)的存儲(chǔ)類,用來保存應(yīng)用的一些常用配置,比如Activity狀態(tài),Activity暫停時(shí),將此activity的狀態(tài)保存到SharedPereferences中;當(dāng)Activity重載,系統(tǒng)回調(diào)方法onSaveInstanceState時(shí),再從SharedPreferences中將值取出
    2022-12-12
  • Android實(shí)現(xiàn)手機(jī)游戲隱藏虛擬按鍵

    Android實(shí)現(xiàn)手機(jī)游戲隱藏虛擬按鍵

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)手機(jī)游戲隱藏虛擬按鍵,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • 詳解Android項(xiàng)目多服務(wù)端接口適配(超簡單)

    詳解Android項(xiàng)目多服務(wù)端接口適配(超簡單)

    這篇文章主要介紹了Android項(xiàng)目多服務(wù)端接口適配(超簡單),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Flutter 使用cached_image_network優(yōu)化圖片加載體驗(yàn)

    Flutter 使用cached_image_network優(yōu)化圖片加載體驗(yàn)

    在 Flutter 中,cached_image_network 即提供了緩存網(wǎng)絡(luò)圖片功能,同時(shí)還提供了豐富的加載過程指示。本文就來看下cached_image_network的具體使用
    2021-05-05
  • 基于Alarmmanager實(shí)現(xiàn)簡單鬧鐘功能

    基于Alarmmanager實(shí)現(xiàn)簡單鬧鐘功能

    這篇文章主要為大家詳細(xì)介紹了基于Alarmmanager實(shí)現(xiàn)簡單鬧鐘功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Android自定義View中attrs.xml的實(shí)例詳解

    Android自定義View中attrs.xml的實(shí)例詳解

    這篇文章主要介紹了Android自定義View中attrs.xml的實(shí)例詳解的相關(guān)資料,在自定義View首先對(duì)attrs.xml進(jìn)行布局的實(shí)現(xiàn)及屬性的應(yīng)用,需要的朋友可以參考下
    2017-07-07
  • Jetpack Compose實(shí)現(xiàn)對(duì)話框和進(jìn)度條實(shí)例解析

    Jetpack Compose實(shí)現(xiàn)對(duì)話框和進(jìn)度條實(shí)例解析

    對(duì)話框和進(jìn)度條其實(shí)并無多大聯(lián)系,放在一起寫是因?yàn)閮烧叩膬?nèi)容都不多,所以湊到一起,對(duì)話框是我們平時(shí)開發(fā)使用得比較多的組件,進(jìn)度條的使用頻率也很高,比如下載文件,上傳文件,處理任務(wù)時(shí)都可以使用進(jìn)度條
    2023-04-04
  • Android中自定義對(duì)話框(Dialog)的實(shí)例代碼

    Android中自定義對(duì)話框(Dialog)的實(shí)例代碼

    這篇文章介紹了Android中自定義對(duì)話框(Dialog)的實(shí)例代碼,有需要的朋友可以參考一下
    2013-08-08

最新評(píng)論

巴南区| 嵊泗县| 进贤县| 万宁市| 岳西县| 天门市| 资中县| 西乌| 沂南县| 金沙县| 西乡县| 东辽县| 宁海县| 南平市| 新蔡县| 新安县| 定陶县| 鹰潭市| 临清市| 阳信县| 合作市| 陇川县| 江油市| 益阳市| 铜鼓县| 金阳县| 梅州市| 漯河市| 黄浦区| 邢台市| 石屏县| 社旗县| 冕宁县| 墨江| 江川县| 南平市| 常德市| 鸡东县| 工布江达县| 清丰县| 呼图壁县|