nativeScript-advanced-camera
NativeScript 相机插件
npm i --save nativescript-advanced-camera

NativeScript Advanced Camera

一个高度可定制的 NativeScript 相机插件,可以轻松嵌入到视图中。

注意:

  • 此插件仍在开发中,所以现在暂时忘记“高度可定制”。😉
  • 对于功能请求和错误,请随意打开一个新的问题。

目录

先决条件

安装

$ tns plugin add nativescript-advanced-camera

使用

Angular 11+

HTML 模板: home.component.html

<AdvancedCamera height="300dp" width="300dp" backgroundColor="black" (loaded)="onLoaded($event)"></AdvancedCamera>

组件: home.component.ts

import {EventData, isIOS} from "@nativescript/core";
import {AdvancedCamera} from "nativescript-advanced-camera";

registerElement('AdvancedCamera', () => AdvancedCamera);

@Component({
selector: "Home",
templateUrl: "./home.component.html"
})
export class HomeComponent {
private cam: AdvancedCamera;

public onLoaded(event: EventData) {
console.log('Cam Loaded');
this.cam = <AdvancedCamera> event.object;
}

public record(): void {
console.log('Start Recording');
this.cam.record();
}

public stop(): void {
console.log('Stop Recording');
this.cam.stop().then((file) => {
const path = isIOS ? file.path : file.getPath();
console.log(path);
});
}
}

功能

注意:要添加到此列表的功能,请随意打开一个新的问题。

功能 Android iOS
开始 & 停止视频录制 :heavy_check_mark :heavy_check_mark
拍照 :x :x
将视频/照片写入库 :heavy_check_mark :heavy_check_mark
切换前后摄像头 :x :x

属性

常用属性

属性 类型 描述
writeFilesToPhoneLibrary 布尔值 启用/禁用将文件保存到手机库。

特定于 iOS 的属性

属性 类型 描述
shouldKeepViewAtOrientationChanges 布尔值 启用/禁用在方向改变时保持视图的相同边界。
shouldRespondToOrientationChanges 布尔值 启用/禁用视频跟随设备方向。
writeFilesToPhoneLibrary 布尔值 启用/禁用将文件保存到手机库。

方法

常用方法

方法 描述
record() 开始录制视频。
stop() 停止视频录制,并返回一个 Promise,该 Promise 提供视频文件。

特定于 iOS 的方法

方法 描述
resetOrientation() 重置并重新绘制预览层方向。