uni-app 自定义相机插件需求 只需要安卓跟ios

发布于 1周前 作者 bupafengyu 来自 Uni-App

uni-app 自定义相机插件需求 只需要安卓跟ios

https://ext.dcloud.net.cn/plugin?id=1315

需求是写一个类似这个图片采集相机,自动拍照,我采集到图片后上传到服务器解析结果成功之后返回,有兴趣的详谈,有偿

6 回复

可以做,有过类似的实时识别身份证或车牌号的插件开发,价格实惠,联系QQ:1804945430


承接H5、小程序、APP等外包:

经验丰富,做过多种类型项目,有案例可看;
整个项目外包可以找我(小团队接单,面向客户、产品);
只需要前端部分也可以找我(个人接单,面向服务端合作伙伴);
wechat(13070273424);

专业双端插件开发, Q 1196097915

自定义相机拍照录像,可设置分辨率、支持横竖屏(ios、android)|:https://ext.dcloud.net.cn/plugin?id=3404

我们做过人脸识别登录的,分析视频中是否有人脸,有人脸就拍照,上传服务端进行人脸识别 有需要的话 联系微信zhimitec

针对您提出的uni-app自定义相机插件需求,以下是一个基本的实现框架,涵盖安卓和iOS平台。由于uni-app本身不直接支持原生插件的编写,但您可以通过条件编译和原生模块扩展来实现这一功能。以下是一个简化的示例,展示如何在uni-app项目中集成自定义相机插件。

1. 创建uni-app项目

首先,确保您已经安装了HBuilderX,并创建了一个新的uni-app项目。

2. 创建原生插件

iOS

在项目的native-plugins目录下创建一个新的iOS插件目录,如MyCameraPlugin。在该目录下创建以下文件:

  • MyCameraPlugin.h
  • MyCameraPlugin.m

MyCameraPlugin.h

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

@interface MyCameraPlugin : NSObject

+ (void)openCamera:(UIViewController *)vc callback:(void (^)(NSString *result))callback;

@end

MyCameraPlugin.m(实现相机打开逻辑)

// 省略具体实现,需使用UIImagePickerController等类实现相机功能

Android

在项目的native-plugins目录下创建一个新的Android插件目录,如MyCameraPlugin。在该目录下创建以下文件:

  • MyCameraPlugin.java

MyCameraPlugin.java

import android.app.Activity;
import android.content.Intent;
import android.provider.MediaStore;
import io.dcloud.feature.uniapp.bridge.UniJSCallback;

public class MyCameraPlugin {
    public static void openCamera(Activity activity, UniJSCallback callback) {
        Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        // 启动相机并处理回调
    }
}

3. 集成插件到uni-app

manifest.json中配置原生插件路径:

"nativePlugins": [
    {
        "android": {
            "package": "com.yourpackage.MyCameraPlugin",
            "class": "MyCameraPlugin"
        },
        "ios": {
            "class": "MyCameraPlugin"
        }
    }
]

4. 在uni-app中调用插件

在您的uni-app页面或组件中,通过条件编译调用插件:

#ifdef APP-PLUS
plus.bridge.exec('MyCameraPlugin', 'openCamera', [], (res) => {
    console.log('Camera result:', res);
});
#endif

注意

  • 上述代码仅为示例,未包含完整的相机功能实现。
  • 相机功能的实现需要考虑权限申请、拍照后的图片处理等多个方面。
  • 对于iOS,您需要在Info.plist中添加相机使用权限描述。
  • 对于Android,您需要在AndroidManifest.xml中声明相机权限。

这个框架为您提供了一个起点,您可以根据具体需求进一步扩展和完善相机插件的功能。

回到顶部