Vue基于Cordova调用相机

本文详细介绍如何在Vue项目中集成Cordova插件,实现调用相机和从相册选取图片的功能,并展示了具体的代码实现与步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Vue基于Cordova调用相机

记录:Vue如何基于Cordova打包的apk调用相机
感谢优快云作者:michael_ouyang提供【cordova camera插件——摄像头插件的使用及上传图片】的思路
原文:https://blog.youkuaiyun.com/michael_ouyang/article/details/75085648

Vue层面代码

在某个.vue文件添加下面代码:

<template>
  <div id="app">
    <p>测试Vue调用相机功能</p>
    <!-- 使用相机功能按钮 -->
    <button @click="useCameraPlugin('SAVEDPHOTOALBUM')">从文件夹获取</button>
    <button @click="useCameraPlugin('Camera')">使用相机</button>
    <!-- 获取图片的展示 区域 -->
    <img id="myImage" src="{{imgData}}" style="height: 200px;">
  </div>
</template>


<script>
export default {
  name: 'App',
  el: '#app',
  data(){
    return{
      imgData:"http://pic1.cxtuku.com/00/00/24/b916ebb736a7.jpg", //默认图片
      //根据传值选择不一样的图片获取方式
      sourceType:{ "SAVEDPHOTOALBUM":Camera.PictureSourceType.SAVEDPHOTOALBUM, "Camera" :Camera.PictureSourceType.Camera}
    }
  },
  methods: {
    // type:SAVEDPHOTOALBUM/Camera 分别是调用图库文件和调用相机
    useCameraPlugin: function (type) {
      navigator.camera.getPicture(onSuccess, onFail, {
        quality: 50,
        sourceType: this.sourceType[type], // 设置从图片库获取
        destinationType: Camera.DestinationType.DATA_URL
      })
      function onSuccess(imageData) {
        document.getElementById('myImage').src = "data:image/jpeg;base64," + imageData;
      }
      function onFail(message) {
        alert('Failed because: ' + message);
      }
    },
  watch:{
    onSuccess: function  (imageData) {
   		this.imgData = "data:image/jpeg;base64," + imageData
	},
  onFail:function  (message) {
  		alert('Failed because: ' + message)
	}
  }
}
</script>

然后打包生成dist文件 ,指令:

npm run build

然后复制dist里的全部文件替代Cordova项目的www里的全部文件。

Cordova层面代码

只需要在控制台分别执行以下命令生成apk即可

//添加插件
cordova plugin add cordova-plugin-camera
//生成debug版本apk
cordova build android

插件添加成功的标志:
插件添加完成的标志

vue如何通过Cordova上传照片到服务器 (待续。。。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

啟华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值