18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

HarmonyOS折疊屏鏡頭切換應用實踐

HarmonyOS開發(fā)者 ? 來源:HarmonyOS開發(fā)者技術 ? 2025-08-27 16:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在2025華為開發(fā)者大會的圖片和相機分論壇上,美顏相機分享了如何通過折疊屏鏡頭適配,打造多端一致的拍攝體驗。隨著華為折疊屏產品的不斷豐富,相機開發(fā)在折疊屏上也面臨獨特技術難題,鏡頭選錯導致黑屏、角度設置錯誤導致拉伸或者畫面旋轉的問題日益凸顯。本文通過鏡頭選取、鏡頭接續(xù)、角度設置三個維度來探討在HarmonyOS折疊屏設備上更多創(chuàng)新的使用方式和更豐富的布局樣式。

統(tǒng)一、簡易的鏡頭選取

HarmonyOS基于折疊狀態(tài)和鏡頭位置,精準描述每一顆鏡頭,并僅上報當前折疊狀態(tài)下的前后置鏡頭集合。這種機制確保了應用能夠按照直板機鏡頭的使用習慣,直接通過位置信息打開鏡頭,而HarmonyOS會自動映射為當前折疊狀態(tài)下的鏡頭。這種設計保障了直板機和折疊機在鏡頭使用上的統(tǒng)一性和兼容性,極大簡化了開發(fā)者的適配工作。

ae1aa492-7f2f-11f0-a18e-92fbcf53809c.png

import{ camera }from'@kit.CameraKit';
import{BusinessError}from'@kit.BasicServicesKit';
import{ common }from'@kit.AbilityKit';
functiongetCameraManager(context: common.BaseContext): camera.CameraManager{
letcameraManager: camera.CameraManager= camera.getCameraManager(context);
returncameraManager;
}
functiongetCameraDevices(cameraManager: camera.CameraManager):Array {
letcameraArray:Array = cameraManager.getSupportedCameras();
if(cameraArray !=undefined&& cameraArray.length>0) {
 for(letindex =0; index < cameraArray.length; index++) {
? ? ??console.info('cameraId : '?+ cameraArray[index].cameraId);?// 相機ID
? ? ??console.info('cameraPosition : '?+ cameraArray[index].cameraPosition);?// 相機位置
? ? ??console.info('cameraType : '?+ cameraArray[index].cameraType);?// 相機類型
? ? ??console.info('connectionType : '?+ cameraArray[index].connectionType);?// 相機連接類型
? ? }
? ??return?cameraArray;
? }?else?{
? ??console.error("cameraManager.getSupportedCameras error");
? ??return?[];
? }
}

快捷的鏡頭切換方式

折疊設備形態(tài)各異,在相機應用的開發(fā)過程中需要統(tǒng)一的攝像頭切換方案,以確保用戶在拍照、錄像過程中獲得更好的體驗。為了應對折疊屏設備的動態(tài)變化,HarmonyOS提供了兩種鏡頭切換方式,以滿足不同場景的需求:

方式1:應用自主切換鏡頭

適用場景:適用于需要精致拍照體驗的場景,如美顏相機。

實現(xiàn)方式:應用需監(jiān)聽折疊狀態(tài)的變化,自主完成鏡頭的啟停、切換,重新配置會話(涉及修改分辨率),重新查詢鏡頭能力范圍,并調整UX布局。

優(yōu)勢:提供高度定制化的拍攝體驗,滿足復雜場景的需求。

import{ camera }from'@kit.CameraKit';
import{BusinessError}from'@kit.BasicServicesKit';
functionregisterFoldStatusChanged(err: BusinessError, foldStatusInfo: camera.FoldStatusInfo) {
console.info('foldStatusChanged foldStatus: '+ foldStatusInfo.foldStatus);
 for(leti =0; i < foldStatusInfo.supportedCameras.length; i++) {
? ? ??// 選取當前折疊狀態(tài)的前置鏡頭,進行重新配流和UX布局調整
? ? ??console.info(`foldStatusChanged camera[${i}]:?${foldStatusInfo.supportedCameras[i].cameraId}`);
? ? }
}
function?onFoldStatusChange(cameraManager: camera.CameraManager) {
? cameraManager.on('foldStatusChange', registerFoldStatusChanged);
}
function?offFoldStatusChange(cameraManager: camera.CameraManager) {
? cameraManager.off('foldStatusChange', registerFoldStatusChanged);
}

方式2:系統(tǒng)自動切換鏡頭

適用場景:適用于簡單場景,如人臉識別。

實現(xiàn)方式:HarmonyOS自動完成鏡頭切換、會話配置,應用使能自動切換鏡頭的能力時,在有多個前置鏡頭的折疊設備上,不同的折疊狀態(tài)下可自動切換到當前可使用的前置鏡頭,避免前置鏡頭被折入內部導致黑屏。

優(yōu)勢:簡化開發(fā)流程,提升用戶體驗的一致性和便捷性。

import{ camera }from'@kit.CameraKit';
functionenableAutoDeviceSwitchFn(session: camera.PhotoSession) {
if(session.isAutoDeviceSwitchSupported()) {
  session.enableAutoDeviceSwitch(true);
 }
}

簡單易用的角度查詢設置能力

為了確保在不同折疊狀態(tài)下拍攝的照片和視頻保持正確的方向和角度,HarmonyOS相機采用了以下角度計算公式:

預覽:屏幕跟隨鏡頭一起旋轉,因此預覽角度需考慮屏幕旋轉角度。

公式:旋轉角度 = 鏡頭安裝角度 + 屏幕旋轉角度

拍照/錄像:要保證照片/視頻正向存儲,因此與設備旋轉角度相關。

公式:旋轉角度 = 前置:鏡頭安裝角度 – 設備旋轉角度

后置:鏡頭安裝角度 + 設備旋轉角度

通過這些角度計算,美顏相機確保了在不同折疊狀態(tài)下,用戶能夠獲得一致且高質量的拍攝體驗。

import{ camera }from'@kit.CameraKit';
import{BusinessError}from'@kit.BasicServicesKit';
import{ display }from'@kit.ArkUI';
// 以預覽舉例,previewOutput是創(chuàng)建的預覽輸出
letinitDisplayRotation = display.getDefaultDisplaySync().rotation;
letinitPreviewRotation = previewOutput.getPreviewRotation(initDisplayRotation * camera.ImageRotation.ROTATION_90);
previewOutput.setPreviewRotation(initPreviewRotation,false);
display.off('change');
display.on('change',() =>{
// 在折疊狀態(tài)變化時,重新查詢旋轉角度并下發(fā)
 initDisplayRotation = display.getDefaultDisplaySync().rotation;
letimageRotation = initDisplayRotation * camera.ImageRotation.ROTATION_90;
letpreviewRotation = previewOutput.getPreviewRotation(imageRotation);
 previewOutput.setPreviewRotation(previewRotation,false);
});

開發(fā)者可通過HarmonyOS開發(fā)者官網(wǎng)查詢相關資料進行開發(fā)實踐,通過以下官網(wǎng)鏈路進行體驗參考(指南→媒體→相機服務→開發(fā)相機應用),助力開發(fā)更高效便捷。

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

    關注

    217

    文章

    35618

    瀏覽量

    259787
  • 相機
    +關注

    關注

    5

    文章

    1519

    瀏覽量

    55275
  • 折疊屏
    +關注

    關注

    3

    文章

    539

    瀏覽量

    16674
  • HarmonyOS
    +關注

    關注

    80

    文章

    2144

    瀏覽量

    35225

原文標題:【HarmonyOS相機開發(fā)系列】折疊屏鏡頭切換優(yōu)秀實踐

文章出處:【微信號:HarmonyOS_Dev,微信公眾號:HarmonyOS開發(fā)者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Pura X****闊折疊適配:解鎖超視覺與高效交互的全新體驗

    3月20日,華為發(fā)布業(yè)界首款闊折疊手機Pura X,其獨特的16:10闊型設計,為用戶帶來煥然一新的體驗。為了幫助開發(fā)者更好的適配闊折疊設備,華為在HarmonyOS開發(fā)者官網(wǎng)上線了
    發(fā)表于 04-14 15:30

    鴻蒙5開發(fā)寶藏案例分享---折疊懸停態(tài)開發(fā)實踐

    HarmonyOS早就準備好了超多實用案例,今天必須帶大家解鎖\"懸停態(tài)\"開發(fā)的正確姿勢,手慢無哦~ ?** 先來點干貨:什么是懸停態(tài)?** 就是把折疊像筆記本電腦那樣半折立在桌上
    發(fā)表于 06-03 12:04

    鴻蒙5開發(fā)寶藏案例分享---折疊開發(fā)實踐

    ?** 最佳實踐案例大揭秘!開發(fā)者的隱藏寶藏手冊** 大家好呀! 今天在翻鴻蒙文檔時突然發(fā)現(xiàn)了一個驚天大寶藏——官方其實早就默默放出了 幾十個超實用開發(fā)案例 ,覆蓋折疊適配、性能優(yōu)化、UI框架、跨
    發(fā)表于 06-12 11:44

    和寬浪費了?HarmonyOS折疊設計規(guī)范教你用起來

    這幾年折疊手機很火,我們針對使用HarmonyOS折疊手機提供了應用設計指導——HarmonyOS
    發(fā)表于 02-22 14:52

    一文帶你詳細了解HarmonyOS折疊設計規(guī)范!

    隨著新一代折疊手機HUAWEI Mate Xs 2發(fā)布,HarmonyOS折疊設計規(guī)范(后文簡稱:設計規(guī)范)也馬不停蹄地更新啦!這次更新
    發(fā)表于 05-20 10:22

    harmonyos程序開發(fā)如何暫時屏蔽折疊?

    harmonyos程序開發(fā)如何暫時屏蔽折疊,沒有折疊設備,沒法進行正常的適配,所以想暫時關閉屏蔽折疊
    發(fā)表于 06-16 10:48

    HarmonyOS原子化服務案例分享-馬仕健專輯

    代碼,兼容了手機、平板、折疊。本服務已經上架,在HarmonyOS系統(tǒng)手機中,可以直接體驗。二、搜索 鴻蒙碼 服務中心效果三、手機折疊
    發(fā)表于 07-18 16:05

    不止于大,如何打造優(yōu)秀的折疊應用體驗

    ,HarmonyOS 折疊設計規(guī)范中提供了六種動態(tài)布局規(guī)則,通過這些布局規(guī)則的使用或組合,就可以做到在展開態(tài)下顯示更多的內容。 動態(tài)布局規(guī)則 (左圖為自適應動態(tài)布局、右圖為響應式動態(tài)布局) 通常一個頁面上有多種
    發(fā)表于 12-23 11:16

    折疊原理

    我們今天介紹的主角就是折疊,折疊是使用可以很好的擴展屏幕的尺寸,讓我們的手機屏幕不在受限手機自身的體積?;蛟S你已經看了華為折疊
    的頭像 發(fā)表于 03-10 09:31 ?2.2w次閱讀

    HarmonyOS 測試技術與實踐-HarmonyOS 軟件測試技術棧

    2021華為開發(fā)者大會HarmonyOS 測試技術與實踐-HarmonyOS 軟件測試技術棧
    的頭像 發(fā)表于 10-23 14:19 ?1998次閱讀
    <b class='flag-5'>HarmonyOS</b> 測試技術與<b class='flag-5'>實踐</b>-<b class='flag-5'>HarmonyOS</b> 軟件測試技術棧

    HarmonyOS折疊設計規(guī)范的新增亮點內容

    這幾年折疊手機很火,我們針對使用HarmonyOS折疊手機提供了應用設計指導——HarmonyOS
    的頭像 發(fā)表于 02-25 12:08 ?2465次閱讀

    華為發(fā)布新版HarmonyOS折疊設計規(guī)范 持續(xù)引領折疊UI設計創(chuàng)新

    近日,華為發(fā)布了最新的HarmonyOS折疊設計規(guī)范。本次更新的設計規(guī)范圍繞折疊適配和雙
    的頭像 發(fā)表于 11-07 13:26 ?1765次閱讀

    華為發(fā)布新版HarmonyOS折疊設計規(guī)范 持續(xù)引領折疊UI設計創(chuàng)新

    近日,華為發(fā)布了最新的HarmonyOS折疊設計規(guī)范。本次更新的設計規(guī)范圍繞折疊適配和雙
    的頭像 發(fā)表于 11-09 09:31 ?1226次閱讀

    華為發(fā)布新版HarmonyOS折疊設計規(guī)范 持續(xù)引領折疊UI設計創(chuàng)新

    近日,華為發(fā)布了最新的HarmonyOS折疊設計規(guī)范。本次更新的設計規(guī)范圍繞折疊適配和雙
    發(fā)表于 11-09 11:38 ?680次閱讀
    華為發(fā)布新版<b class='flag-5'>HarmonyOS</b><b class='flag-5'>折疊</b><b class='flag-5'>屏</b>設計規(guī)范 持續(xù)引領<b class='flag-5'>折疊</b><b class='flag-5'>屏</b>UI設計創(chuàng)新

    HarmonyOS聯(lián)合綠盟發(fā)布折疊軟件規(guī)范,攜HUAWEI Mate X3帶來創(chuàng)新折疊體驗

    、HarmonyOS 3.1 全新升級的智慧多窗以及懸停狀態(tài)下的創(chuàng)意功能玩法,軟硬一體為折疊手機帶來更加優(yōu)秀的閱讀、觀影、辦公及游戲體驗。 此外,早在2019年,華為便與軟件綠色聯(lián)盟首發(fā)了《
    的頭像 發(fā)表于 03-24 12:32 ?1171次閱讀
    <b class='flag-5'>HarmonyOS</b>聯(lián)合綠盟發(fā)布<b class='flag-5'>折疊</b><b class='flag-5'>屏</b>軟件規(guī)范,攜HUAWEI Mate X3帶來創(chuàng)新<b class='flag-5'>折疊</b>體驗