HarmonyOS 鸿蒙Next使用相机picker拍照显示黑屏

发布于 1周前 作者 songsunli 最后一次编辑是 5天前 来自 鸿蒙OS

使用系统的相机picker(Camera Picker),换取的相机是黑屏状态;

代码为:

import { common } from '@kit.AbilityKit';

import { camera, cameraPicker } from '@kit.CameraKit';

import { BusinessError } from '@kit.BasicServicesKit';

let context = getContext(this) as common.Context;

async function startCameraPicker() {

  try {

    let pickerProfile: cameraPicker.PickerProfile = {

      cameraPosition: camera.CameraPosition.CAMERA_POSITION_BACK

    };

    let pickerResult: cameraPicker.PickerResult = await cameraPicker.pick(context,

      [cameraPicker.PickerMediaType.PHOTO, cameraPicker.PickerMediaType.VIDEO], pickerProfile);

    console.log("the pick pickerResult is:" + JSON.stringify(pickerResult));

  } catch (error) {

    let err = error as BusinessError;

    console.error(`the pick call failed. error code: ${err.code}`);

  }

}

@Entry

@Component

struct StartCameraPickerView {

  build() {

    Column() {

      Button("点击拉起相机")

        .onClick(() => startCameraPicker())

    }

    .width("100%")

    .height("100%")

    .justifyContent(FlexAlign.Center)

    .alignItems(HorizontalAlign.Center)

  }

}

更多关于HarmonyOS 鸿蒙Next使用相机picker拍照显示黑屏的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复
debug当前可能不行

目前规格就是相机只有在运行模式下才能使用

更多关于HarmonyOS 鸿蒙Next使用相机picker拍照显示黑屏的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next使用相机picker拍照显示黑屏的问题可能由以下几个因素导致:

  1. 权限未正确申请:确保应用中已正确申请并获取到相机和存储权限。在config.json中配置相关权限,并在代码中动态检查及请求权限。

  2. 相机服务未正确初始化:检查相机服务的初始化代码,确保相机实例被正确创建并启动。同时,验证相机预览和拍照功能的逻辑实现是否正确。

  3. 资源冲突:如果应用中有其他组件或服务正在使用相机,可能会导致资源冲突。检查是否有其他相机实例或进程未正确释放相机资源。

  4. 系统或硬件问题:某些情况下,设备本身的系统问题或硬件故障也可能导致相机黑屏。尝试在其他设备上运行应用,以排除设备特定问题。

  5. UI层问题:检查相机预览的UI布局是否正确,确保预览视图没有被其他UI元素遮挡或覆盖。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部