安卓扫码器
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

185 lines
5.7 KiB

<template>
2 years ago
<div class="content">
<tn-button shape="round" backgroundColor="#01BEFF" fontColor="#080808" @click="jumpToPage('/pages/scan/Barcode')">跳转Barcode页面</tn-button>
<tn-button shape="round" @click="jumpToPage('/pages/scan/Book')">跳转Book页面</tn-button>
<tn-button shape="round" @click="jumpToPage('/pages/scan/Calendar')">跳转Calendar页面</tn-button>
<tn-button shape="round" @clicksss="jumpToPage('/pages/scan/Contacts')">跳转Contacts页面</tn-button>
<tn-button shape="round" @click="jumpToPage('/pages/scan/Email')">跳转Email页面</tn-button>
<tn-button shape="round" @click="jumpToPage('/pages/scan/Location')">跳转Location页面</tn-button>
<tn-button shape="round" @click="jumpToPage('/pages/scan/Paypal')">跳转Paypal页面</tn-button>
<tn-button shape="round" @click="jumpToPage('/pages/scan/Product')">跳转Product页面</tn-button>
<tn-button shape="round" @click="jumpToPage('/pages/scan/Sms')">跳转Sms页面</tn-button>
3 years ago
<tn-button shape="round" @click="jumpToPage('/pages/scan/Tel')">跳转Tel页面</tn-button>
<tn-button shape="round" @click="jumpToPage('/pages/scan/Text')">跳转Text页面</tn-button>
<tn-button shape="round" @click="jumpToPage('/pages/scan/Url')">跳转Url页面</tn-button>
<tn-button shape="round" @click="jumpToPage('/pages/scan/Wifi')">跳转Wifi页面</tn-button>
2 years ago
<button @click="scanCode()">扫码</button>
<!-- <button @click="writeToDb()">添加数据</button> -->
<!-- <tn-button type="primary" @click="writeToDb()">添加数据</tn-button> -->
<!-- <tn-toast ref="toast"></tn-toast> -->
</div>
</template>
<script>
2 years ago
//import { openSqlite,executeSql,closedb,isTable,addSql} from "@/utils/database";
export default {
data() {
return {
title: 'Scan',
2 years ago
tableName:"scancode"
}
},
created() {
// this.scanCode();
},
methods: {
//写入扫描记录
2 years ago
// async writeToDb(){
// try{
// let b = await addSql(this.tableName,{title:"你好,世界!",content:"世界:你好呀!",desc:"嘻嘻"})
// uni.showToast({
// title:"添加成功",
// icon:"none"
// });
// }catch(e){
// console.error("insert data error!",e)
// }
// },
// 创建表
2 years ago
// async createTable(){
// let sql = this.createTableSql_outbound()
// try{
// let exist = await isTable(this.tableName)
// console.log("表是否存在",exist)
// if(!exist){
// let res = await executeSql(sql)
// uni.showToast({
// title:"insert table ok",
// icon:"none"
// })
// console.log("新增表scancode",res)
// }else{
// uni.showToast({
// title:"table exist",
// icon:"none"
// })
// }
// }catch(e){
// uni.showToast({
// title:"insert table error",
// icon:"none"
// })
// console.error("新增表报错scancode",e)
// }
// },
// 打开数据库
2 years ago
// async openSqlite(){
// try{
// let b = await openSqlite()
// uni.showToast({
// title:"open db success",
// icon:"none"
// })
// }catch(e){
// console.error("open db error",e)
// }
// },
// 关闭数据库
2 years ago
// closedb(){
// try{
// closedb()
// }catch(e){
// console.error("close db error",e)
// }
2 years ago
// },
//根据扫码返回结果判断跳转到哪个指定页面
2 years ago
jumpToPage(url,data){
uni.navigateTo({
2 years ago
url: url + '?data='+ data
});
},
2 years ago
//mlkit扫码
scanCode(){
2 years ago
let that = this;
var mlscan = uni.requireNativePlugin("JY-MLScanSDK");
2 years ago
//console.log(mlscan)
mlscan.startScan(res=> {
2 years ago
that.analyserCode(res);
// uni.showToast({
// icon:'none',
// title:JSON.stringify(res)
// })
2 years ago
})
2 years ago
},
analyserCode(res){
let that = this;
let result = JSON.parse(JSON.stringify(res))
console.log('result',result)
let data = JSON.parse(result.data)
console.log('data',data)
let type = data[0].type
console.log('type',type)
let data2 = data[0].data
console.log('data2',data2)
// let data3 = JSON.stringify(data[0].data)
// console.log('data3',data3)
if(result.errorCode != "0"){
uni.showToast({
icon:'none',
title: 'scan error!'
})
}else{
if(type === 1){
that.jumpToPage('/pages/scan/Contacts',JSON.stringify(data2))
}else if(type === 2){
that.jumpToPage('/pages/scan/Email',JSON.stringify(data2))
}else if(type === 3){
that.jumpToPage('/pages/scan/Book',JSON.stringify(data2))
}else if(type === 4){
that.jumpToPage('/pages/scan/Tel',JSON.stringify(data2))
}else if(type === 5){
that.jumpToPage('/pages/scan/Product',JSON.stringify(data2))
}else if(type === 6){
that.jumpToPage('/pages/scan/Sms',JSON.stringify(data2))
}else if(type === 7){
that.jumpToPage('/pages/scan/Text',JSON.stringify(data2))
}else if(type === 8){
that.jumpToPage('/pages/scan/Url',JSON.stringify(data2))
}else if(type === 9){
that.jumpToPage('/pages/scan/Wifi',JSON.stringify(data2))
}else if(type === 10){
that.jumpToPage('/pages/scan/Location',JSON.stringify(data2))
}else if(type === 11){
that.jumpToPage('/pages/scan/Calendar',JSON.stringify(data2))
}
}
}
}
}
</script>
<style lang="scss">
2 years ago
.content {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
</style>