自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

HarmonyOS手機遙控Dayu開發(fā)板相機(一)

系統(tǒng) OpenHarmony
關(guān)于調(diào)用板子的攝像頭的方式經(jīng)研究,主要有兩種,一種是camera組件,一種是調(diào)用API。先從簡單的camera組件開始。

??想了解更多關(guān)于開源的內(nèi)容,請訪問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

??https://ost.51cto.com??

前幾篇博文解決了HarmonyOS和OpenHarmony的通信問題,現(xiàn)在嘗試用通信來做一些事情。比如用手機遙控開發(fā)板的攝像頭,或者開發(fā)板遙控手機的攝像頭,乃至照片回傳。關(guān)于調(diào)用板子的攝像頭的方式經(jīng)研究,主要有兩種,一種是camera組件,一種是調(diào)用API。先從簡單的camera組件開始。

一、效果

  • 調(diào)用接口成功

#夏日挑戰(zhàn)賽#【FFH】HarmonyOS手機遙控Dayu開發(fā)板相機(一)-開源基礎(chǔ)軟件社區(qū)
#夏日挑戰(zhàn)賽#【FFH】HarmonyOS手機遙控Dayu開發(fā)板相機(一)-開源基礎(chǔ)軟件社區(qū)

  • 存在問題

拍攝的圖片實際沒有保存到圖庫。

二、Camera組件

1、需要權(quán)限

相機權(quán)限,讀寫媒體文件的權(quán)限。

{
"name": "ohos.permission.CAMERA"
},
{
"name": "ohos.permission.WRITE_MEDIA"
},
{
"name": "ohos.permission.READ_MEDIA"
}

2、支持的事件

除了通用事件外,還支持error事件,在用戶不允許使用攝像頭的時候觸發(fā)。

3、支持方法

僅支持,takePhoto(CameraTakePhotoOptions),拍照設(shè)置參數(shù)。

  • CameraTakePhotoOptions

參數(shù)列表:

參數(shù)

類型

描述

quality

string

圖片質(zhì)量:high,normal,low

success

Function

接口調(diào)用成功的回調(diào)函數(shù)

fail

Function

接口調(diào)用失敗的回調(diào)函數(shù)

complete

Function

接口調(diào)用結(jié)束的回調(diào)函數(shù)

三、案例編寫

關(guān)于手機側(cè),開發(fā)板側(cè)的UDP通信請看我的前幾篇博文,這里只分享Camera的組件調(diào)用。

HarmonyOS與OpenHarmony通信

1、index.css

這里全局就用一個攝像頭畫面即可。

<camera flash="on" deviceposition="back" @error="cameraError" style="height: 100%;width: 100%;position: absolute;top: 1%;" onclick="takepic"   id="c">
</camera>
  • flash值控制閃光燈的開啟。
  • @error就是前文提到的,如果用戶不授權(quán)就會觸發(fā)的回調(diào)函數(shù)。
  • deviceposition的值表示前后攝像頭,front表示前置,back表示后置。

2、index.js

這里約定,接受到0的信息表示進行拍照的操作,手機側(cè)沿用之前的功能編寫即可。

  • takePhoto(options)
takepic(){
var options= {
"quality":"normal",
"success":this.onSuccess(),
"fail":this.onFailed(),
"complete":this.onCompleted()
}
this.$element("c").takePhoto(options
);
},
onFailed:async function(){
prompt.showToast({
message: "拍攝失敗"
});
},
onSuccess:async function(e){
console.info(this.TAG+JSON.stringify(e))
prompt.showToast({
message: "拍攝成功"
});
},
onCompleted:async function(){
prompt.showToast({
message: "拍攝完成"
});
},
cameraError(){
prompt.showToast({
message: "授權(quán)失敗!"
});
},

這里將takpic()方法綁定到UDPsocket的監(jiān)聽函數(shù)上即可,當(dāng)判斷信息為0的時候,執(zhí)行拍照操作,可通過toast窗口判斷拍攝情況。

  • 在config.json中添加讀寫媒體,相機的權(quán)限。
  • 獲取用戶授權(quán)。
grantPermission() {
console.info('Calc[IndexPage] grantPermission')
let context = featureAbility.getContext()
context.requestPermissionsFromUser(['ohos.permission.CAMERA', "ohos.permission.WRITE_MEDIA","ohos.permission.READ_MEDIA"], 666, function (result) {

})
},

四、結(jié)語

可見Camera組件能夠獲取相機的預(yù)覽和拍照功能,各項回調(diào)函數(shù)能夠進入,但是實際沒有保存到圖庫,可能是該組件還未完善。下次我們繼續(xù)嘗試調(diào)用其他api來獲取相機預(yù)覽流和拍照功能。

??想了解更多關(guān)于開源的內(nèi)容,請訪問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

??https://ost.51cto.com??。

責(zé)任編輯:jianghua 來源: 鴻蒙社區(qū)
相關(guān)推薦

2021-02-01 13:58:51

鴻蒙HarmonyOS應(yīng)用開發(fā)

2020-12-16 10:05:48

鴻蒙開發(fā)板Onenet平臺

2020-12-17 10:02:16

鴻蒙Hi3861開發(fā)板

2020-12-29 09:59:01

鴻蒙HarmonyOS智能家居

2014-07-16 11:12:09

Project Ara

2021-12-15 15:28:18

鴻蒙HarmonyOS應(yīng)用

2020-11-26 12:02:07

OneNet平臺

2020-11-17 12:15:36

MQTT開發(fā)

2021-01-08 10:00:53

鴻蒙訊飛平臺語音控制

2020-10-20 09:32:43

HiSparkWi-FiIoT

2022-04-01 15:54:01

DHCP網(wǎng)絡(luò)協(xié)議開發(fā)板

2021-12-30 16:12:07

鴻蒙HarmonyOS應(yīng)用

2021-01-07 11:24:51

鴻蒙HarmonyOS音樂

2022-10-14 15:55:24

環(huán)境搭建鴻蒙

2021-05-25 14:47:43

鴻蒙HarmonyOS應(yīng)用

2022-01-07 21:11:27

鴻蒙HarmonyOS應(yīng)用

2022-07-08 14:53:46

掃雷小游戲鴻蒙

2024-02-19 15:59:52

鴻蒙應(yīng)用開發(fā)操作系統(tǒng)

2020-11-27 11:52:40

OneNet
點贊
收藏

51CTO技術(shù)棧公眾號