Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b26022c94f | ||
|
|
a7ea59d201 | ||
|
|
2fe10cd183 |
@@ -9,6 +9,10 @@
|
|||||||
"customPlaygroundType" : "local",
|
"customPlaygroundType" : "local",
|
||||||
"playground" : "custom",
|
"playground" : "custom",
|
||||||
"type" : "uni-app:app-ios"
|
"type" : "uni-app:app-ios"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"playground" : "custom",
|
||||||
|
"type" : "uni-app:app-android"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
+10
-1
@@ -58,7 +58,16 @@
|
|||||||
"distribute": {
|
"distribute": {
|
||||||
"modules": {},
|
"modules": {},
|
||||||
"icons": {},
|
"icons": {},
|
||||||
"splashScreens": {}
|
"splashScreens": {},
|
||||||
|
"privacyDescription": {
|
||||||
|
"NSPhotoLibraryUsageDescription": "读取相册",
|
||||||
|
"NSPhotoLibraryAddUsageDescription": "写入相册",
|
||||||
|
"NSCameraUsageDescription": "要摄像头",
|
||||||
|
"NSMicrophoneUsageDescription": "要麦克风",
|
||||||
|
"NSLocationWhenInUseUsageDescription": "要访问",
|
||||||
|
"NSLocationAlwaysUsageDescription": "要访问",
|
||||||
|
"NSLocationAlwaysAndWhenInUseUsageDescription": "要访问"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+65
-29
@@ -1,41 +1,77 @@
|
|||||||
<template>
|
<template>
|
||||||
<view>
|
<!-- #ifdef APP -->
|
||||||
<image class="logo" src="/static/logo.png"></image>
|
<scroll-view class="page-scroll-view">
|
||||||
<text class="title">{{title}}</text>
|
<!-- #endif -->
|
||||||
<xf-camera style="height:750rpx; background-color: red;" @error="onError" :flash="flash"
|
<view>
|
||||||
:position="device"></xf-camera>
|
<button @click="_takePhoto">拍照</button>
|
||||||
<image v-if="imagePath" mode="aspectFit" :src="imagePath"></image>
|
<xf-camera style="height:750rpx; background-color: red;" @error="onError" :flash="flash"
|
||||||
</view>
|
:position="device"></xf-camera>
|
||||||
|
<image v-if="imagePath" mode="aspectFit" :src="imagePath"></image>
|
||||||
|
</view>
|
||||||
|
<!-- #ifdef APP -->
|
||||||
|
</scroll-view>
|
||||||
|
<!-- #endif -->
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="uts">
|
<script>
|
||||||
const title = ref('Hello')
|
import {
|
||||||
// 相机闪光灯状态('off' | 'on' | 'auto')
|
takePhoto,
|
||||||
const flash = ref('off')
|
TakePhotoOption,
|
||||||
|
TakePhotoSuccessCallbackResult,
|
||||||
|
GeneralCallbackResult
|
||||||
|
} from '@/uni_modules/XF-cameraUTS'
|
||||||
|
|
||||||
// 相机朝向('front' | 'back')
|
|
||||||
const device = ref('back')
|
|
||||||
|
|
||||||
// 拍摄的图片路径
|
export default {
|
||||||
const imagePath = ref('')
|
data() {
|
||||||
|
return {
|
||||||
|
yanse: "red",
|
||||||
|
widthNum: 750,
|
||||||
|
heightNum: 200,
|
||||||
|
|
||||||
// 相机错误处理
|
flash: "on",
|
||||||
const onError = (e : any) => {
|
device: "front",
|
||||||
console.log('相机错误:', e)
|
imagePath: "",
|
||||||
// 可在此添加用户提示,如 uni.showToast
|
videoPath: "https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/2minute-demo.mp4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onLoad() {
|
||||||
|
// let permissionNeed = ["android.permission.CAMERA", "android.permission.RECORD_AUDIO",
|
||||||
|
// "android.permission.WRITE_EXTERNAL_STORAGE"]
|
||||||
|
// // 请求权限
|
||||||
|
// UTSAndroid.requestSystemPermission(UTSAndroid.getUniActivity()!, permissionNeed, function (allRight : boolean, _ : string[]) {
|
||||||
|
// if (allRight) {
|
||||||
|
// // 权限请求成功
|
||||||
|
// } else {
|
||||||
|
// //用户拒绝了部分权限
|
||||||
|
// }
|
||||||
|
// }, function (_ : boolean, _ : string[]) {
|
||||||
|
// //用户拒绝了部分权限
|
||||||
|
// })
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
onError(res : any) {
|
||||||
|
console.log(res)
|
||||||
|
},
|
||||||
|
_takePhoto() {
|
||||||
|
takePhoto({
|
||||||
|
success: (res : TakePhotoSuccessCallbackResult) => {
|
||||||
|
console.log('takePhoto', res)
|
||||||
|
this.imagePath = res.tempImagePath;
|
||||||
|
// _previewImage();
|
||||||
|
},
|
||||||
|
fail: (res : GeneralCallbackResult) => {
|
||||||
|
console.log('takePhoto', res)
|
||||||
|
}
|
||||||
|
} as TakePhotoOption)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
.logo {
|
.video {
|
||||||
height: 100px;
|
width: 100%;
|
||||||
width: 100px;
|
height: 200px;
|
||||||
margin: 100px auto 25px auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title {
|
|
||||||
font-size: 18px;
|
|
||||||
color: #8f8f94;
|
|
||||||
text-align: center;
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
## 1.0.0
|
|
||||||
初始化发布
|
|
||||||
@@ -1,52 +0,0 @@
|
|||||||
# **概述**
|
|
||||||
|
|
||||||
Skin-cameraUTS封装了Android和iOS自定义相机预览的功能。
|
|
||||||
|
|
||||||
## **模块调用**
|
|
||||||
|
|
||||||
```js
|
|
||||||
<xf-camera style="height:750rpx; background-color: red;" @ready="ready" @error="onError" @stop="stop" :flash="flash" :position="device">
|
|
||||||
</xf-camera>
|
|
||||||
```
|
|
||||||
|
|
||||||
## 参数说明:
|
|
||||||
|
|
||||||
position:
|
|
||||||
|
|
||||||
- 类型:字符串型
|
|
||||||
- 描述:(可选项)前置或者后置相机。(front前置 |back 后置)
|
|
||||||
|
|
||||||
flash:
|
|
||||||
|
|
||||||
- 类型:字符串型
|
|
||||||
- 描述:(可选项)是否开启闪光灯。( auto, on, off, torch)
|
|
||||||
|
|
||||||
|
|
||||||
## **插件接口**
|
|
||||||
|
|
||||||
<div id="a0"></div>
|
|
||||||
|
|
||||||
# **takePhoto**
|
|
||||||
|
|
||||||
拍照
|
|
||||||
|
|
||||||
|
|
||||||
## uni-app x项目(uvue)中调用示例:
|
|
||||||
|
|
||||||
```js
|
|
||||||
import { takePhoto } from "@/uni_modules/Skin-cameraUTS";
|
|
||||||
import { TakePhotoOption, TakePhotoSuccessCallbackResult } from "@/uni_modules/Skin-cameraUTS/utssdk/interface.uts";
|
|
||||||
|
|
||||||
let options = {
|
|
||||||
success: (res : TakePhotoSuccessCallbackResult) => {
|
|
||||||
console.log(res)
|
|
||||||
}
|
|
||||||
} as TakePhotoOption;
|
|
||||||
takePhoto(options);
|
|
||||||
```
|
|
||||||
|
|
||||||
## 可用性
|
|
||||||
|
|
||||||
iOS、Android系统
|
|
||||||
|
|
||||||
可提供的1.0.0及更高版本
|
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
## 1.1.1(2025-10-15)
|
||||||
|
修复监听持续返回事件问题。
|
||||||
|
## 1.1.0(2024-10-13)
|
||||||
|
修改AndroidManifest.xml下的包名。
|
||||||
|
## 1.0.9(2024-10-12)
|
||||||
|
删除takePhoto下的takeMode参数逻辑
|
||||||
|
## 1.0.8(2024-10-10)
|
||||||
|
兼容处理uniapp无法切换相机和拍照的问题。
|
||||||
|
## 1.0.7(2024-10-09)
|
||||||
|
修复uniapp环境下不能正常使用插件问题。
|
||||||
|
## 1.0.6(2024-09-13)
|
||||||
|
去掉插件内部权限申请逻辑。
|
||||||
|
## 1.0.5(2024-08-10)
|
||||||
|
修复Android不能正常录像的问题。
|
||||||
|
## 1.0.4(2024-08-08)
|
||||||
|
修复iOS默认相机设置不生效的问题
|
||||||
|
## 1.0.3(2024-08-06)
|
||||||
|
修改iOS拍照接口默认质量为原图。
|
||||||
|
## 1.0.2(2024-07-22)
|
||||||
|
修复iOS编译问题。
|
||||||
|
## 1.0.1(2024-07-04)
|
||||||
|
修复一些bug。
|
||||||
|
## 1.0.0(2024-07-04)
|
||||||
|
初始化发布
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
"id": "Skin-cameraUTS",
|
"id": "XF-cameraUTS",
|
||||||
"displayName": "UTS实现自定义相机拍照和录像功能",
|
"displayName": "UTS实现自定义相机拍照和录像功能",
|
||||||
"version": "1.0.0",
|
"version": "1.1.1",
|
||||||
"description": "封装了Android和iOS自定义相机预览的功能。",
|
"description": "XF-cameraUTS封装了Android和iOS自定义相机预览的功能。",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"相机",
|
"相机",
|
||||||
"录像",
|
"录像",
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
"type": "component-uts",
|
"type": "component-uts",
|
||||||
"sale": {
|
"sale": {
|
||||||
"regular": {
|
"regular": {
|
||||||
"price": "0.00"
|
"price": "168.00"
|
||||||
},
|
},
|
||||||
"sourcecode": {
|
"sourcecode": {
|
||||||
"price": "0.00"
|
"price": "0.00"
|
||||||
@@ -0,0 +1,183 @@
|
|||||||
|
# **概述**
|
||||||
|
|
||||||
|
XF-cameraUTS封装了Android和iOS自定义相机预览的功能。
|
||||||
|
|
||||||
|
## **模块调用**
|
||||||
|
|
||||||
|
```js
|
||||||
|
<xf-camera style="height:750rpx; background-color: red;" @ready="ready" @error="onError" @stop="stop" :flash="flash" :position="device">
|
||||||
|
</xf-camera>
|
||||||
|
```
|
||||||
|
|
||||||
|
## 参数说明:
|
||||||
|
|
||||||
|
position:
|
||||||
|
|
||||||
|
- 类型:字符串型
|
||||||
|
- 描述:(可选项)前置或者后置相机。(front前置 |back 后置)
|
||||||
|
|
||||||
|
flash:
|
||||||
|
|
||||||
|
- 类型:字符串型
|
||||||
|
- 描述:(可选项)是否开启闪光灯。( auto, on, off, torch)
|
||||||
|
|
||||||
|
|
||||||
|
## **插件接口**
|
||||||
|
|
||||||
|
<div id="a0"></div>
|
||||||
|
|
||||||
|
# **takePhoto**
|
||||||
|
|
||||||
|
拍照
|
||||||
|
|
||||||
|
## uni-app项目中(nvue)调用示例:
|
||||||
|
|
||||||
|
```js
|
||||||
|
import { takePhoto } from "@/uni_modules/XF-cameraUTS"
|
||||||
|
|
||||||
|
takePhoto({
|
||||||
|
success: (res) => {
|
||||||
|
console.log(res)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
## uni-app x项目(uvue)中调用示例:
|
||||||
|
|
||||||
|
```js
|
||||||
|
import { takePhoto } from "@/uni_modules/XF-cameraUTS";
|
||||||
|
import { TakePhotoOption, TakePhotoSuccessCallbackResult } from "@/uni_modules/XF-cameraUTS/utssdk/interface.uts";
|
||||||
|
|
||||||
|
let options = {
|
||||||
|
success: (res : TakePhotoSuccessCallbackResult) => {
|
||||||
|
console.log(res)
|
||||||
|
}
|
||||||
|
} as TakePhotoOption;
|
||||||
|
takePhoto(options);
|
||||||
|
```
|
||||||
|
|
||||||
|
## 可用性
|
||||||
|
|
||||||
|
iOS、Android系统
|
||||||
|
|
||||||
|
可提供的1.0.0及更高版本
|
||||||
|
|
||||||
|
|
||||||
|
<div id="a1"></div>
|
||||||
|
|
||||||
|
# **startRecord**
|
||||||
|
|
||||||
|
开始录像
|
||||||
|
|
||||||
|
## uni-app项目中(nvue)调用示例:
|
||||||
|
|
||||||
|
```js
|
||||||
|
import { startRecord } from "@/uni_modules/XF-cameraUTS"
|
||||||
|
|
||||||
|
startRecord({
|
||||||
|
success: (res) => {
|
||||||
|
console.log(res)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
## uni-app x项目(uvue)中调用示例:
|
||||||
|
|
||||||
|
```js
|
||||||
|
import { startRecord } from "@/uni_modules/XF-cameraUTS";
|
||||||
|
import { CameraContextStartRecordOption, GeneralCallbackResult } from "@/uni_modules/XF-cameraUTS/utssdk/interface.uts";
|
||||||
|
|
||||||
|
let options = {
|
||||||
|
success: (res : GeneralCallbackResult) => {
|
||||||
|
console.log(res)
|
||||||
|
}
|
||||||
|
} as CameraContextStartRecordOption;
|
||||||
|
startRecord(options);
|
||||||
|
```
|
||||||
|
|
||||||
|
## 可用性
|
||||||
|
|
||||||
|
iOS、Android系统
|
||||||
|
|
||||||
|
可提供的1.0.0及更高版本
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div id="a2"></div>
|
||||||
|
|
||||||
|
# **stopRecord**
|
||||||
|
|
||||||
|
停止录像
|
||||||
|
|
||||||
|
## uni-app项目中(nvue)调用示例:
|
||||||
|
|
||||||
|
```js
|
||||||
|
import { stopRecord } from "@/uni_modules/XF-cameraUTS"
|
||||||
|
|
||||||
|
stopRecord({
|
||||||
|
success: (res) => {
|
||||||
|
console.log(res)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
## uni-app x项目(uvue)中调用示例:
|
||||||
|
|
||||||
|
```js
|
||||||
|
import { stopRecord } from "@/uni_modules/XF-cameraUTS";
|
||||||
|
import { CameraContextStopRecordOption, StopRecordSuccessCallbackResult } from "@/uni_modules/XF-cameraUTS/utssdk/interface.uts";
|
||||||
|
|
||||||
|
let options = {
|
||||||
|
success: (res : StopRecordSuccessCallbackResult) => {
|
||||||
|
console.log(res)
|
||||||
|
}
|
||||||
|
} as CameraContextStopRecordOption;
|
||||||
|
stopRecord(options);
|
||||||
|
```
|
||||||
|
|
||||||
|
## 可用性
|
||||||
|
|
||||||
|
iOS、Android系统
|
||||||
|
|
||||||
|
可提供的1.0.0及更高版本
|
||||||
|
|
||||||
|
|
||||||
|
<div id="a3"></div>
|
||||||
|
|
||||||
|
# **switchCamera**
|
||||||
|
|
||||||
|
切换相机
|
||||||
|
|
||||||
|
## uni-app项目中(nvue)调用示例:
|
||||||
|
|
||||||
|
```js
|
||||||
|
import { switchCamera } from "@/uni_modules/XF-cameraUTS"
|
||||||
|
|
||||||
|
switchCamera({
|
||||||
|
position: 'back',
|
||||||
|
success: (res) => {
|
||||||
|
console.log(res)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
## uni-app x项目(uvue)中调用示例:
|
||||||
|
|
||||||
|
```js
|
||||||
|
import { switchCamera } from "@/uni_modules/XF-cameraUTS";
|
||||||
|
import { SwitchOption, GeneralCallbackResult } from "@/uni_modules/XF-cameraUTS/utssdk/interface.uts";
|
||||||
|
|
||||||
|
let options = {
|
||||||
|
position: 'back',
|
||||||
|
success: (res : GeneralCallbackResult) => {
|
||||||
|
console.log(res)
|
||||||
|
}
|
||||||
|
} as SwitchOption;
|
||||||
|
switchCamera(options);
|
||||||
|
```
|
||||||
|
|
||||||
|
## 可用性
|
||||||
|
|
||||||
|
iOS、Android系统
|
||||||
|
|
||||||
|
可提供的1.0.8及更高版本
|
||||||
Reference in New Issue
Block a user