本文整理汇总了TypeScript中nativescript-barcodescanner.BarcodeScanner类的典型用法代码示例。如果您正苦于以下问题:TypeScript BarcodeScanner类的具体用法?TypeScript BarcodeScanner怎么用?TypeScript BarcodeScanner使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了BarcodeScanner类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: doRequestCameraPermission
public doRequestCameraPermission() {
this.barcodeScanner.requestCameraPermission().then(
function () {
console.log("Camera permission requested");
}
);
}
示例2: scan
private scan(front: boolean, flip: boolean, torch?: boolean, orientation?: string) {
this.barcodeScanner.scan({
cancelLabel: "EXIT. Also, try the volume buttons!", // iOS only, default 'Close'
cancelLabelBackgroundColor: "#333333", // iOS only, default '#000000' (black)
message: "Use the volume buttons for extra light", // Android only, default is 'Place a barcode inside the viewfinder rectangle to scan it.'
preferFrontCamera: front, // Android only, default false
showFlipCameraButton: flip, // default false
showTorchButton: torch, // iOS only, default false
torchOn: false, // launch with the flashlight on (default false)
resultDisplayDuration: 500, // Android only, default 1500 (ms), set to 0 to disable echoing the scanned text
orientation: orientation, // Android only, default undefined (sensor-driven orientation), other options: portrait|landscape
beepOnScan: true, // Play or Suppress beep on scan (default true)
openSettingsIfPermissionWasPreviouslyDenied: true, // On iOS you can send the user to the settings app if access was previously denied
closeCallback: () => {
console.log("Scanner closed @ " + new Date().getTime());
}
}).then(
function (result) {
console.log("--- scanned: " + result.text);
// Note that this Promise is never invoked when a 'continuousScanCallback' function is provided
setTimeout(function () {
// if this alert doesn't show up please upgrade to {N} 2.4.0+
alert({
title: "Scan result",
message: "Format: " + result.format + ",\nValue: " + result.text,
okButtonText: "OK"
});
}, 500);
},
function (errorMessage) {
console.log("No scan. " + errorMessage);
}
);
}
示例3: doContinuousScan
public doContinuousScan() {
this.barcodeScanner.scan({
reportDuplicates: true,
continuousScanCallback: function (result) {
console.log(`${result.format}: ${result.text} @ ${new Date().getTime()}`);
},
closeCallback: () => {
console.log("Scanner closed @ " + new Date().getTime());
}
});
}
示例4: doCheckHasCameraPermission
public doCheckHasCameraPermission() {
this.barcodeScanner.hasCameraPermission().then(permitted => {
alert({
title: "Has Camera permission?",
message: permitted ? "YES" : "NO",
okButtonText: "OK"
});
}, (err) => {
alert(err);
});
}
示例5: doCheckAvailable
public doCheckAvailable() {
this.barcodeScanner.available().then(avail => {
alert({
title: "Scanning available?",
message: avail ? "YES" : "NO",
okButtonText: "OK"
});
}, (err) => {
alert(err);
});
}
示例6:
let scan = () => {
this.barcodeScanner.scan({
formats: "QR_CODE, EAN_13",
beepOnScan: true,
reportDuplicates: true,
preferFrontCamera: false
// continuousScanCallback: scanResult => {
// console.log("result: " + JSON.stringify(scanResult));
// this.barcodeScanner.stop();
// }
})
.then(result => console.log(JSON.stringify(result)))
.catch(error => console.log(error));
};
示例7: scanTapped
public scanTapped(): void {
let scan = () => {
this.barcodeScanner.scan({
formats: "QR_CODE, EAN_13",
beepOnScan: true,
reportDuplicates: true,
preferFrontCamera: false
// continuousScanCallback: scanResult => {
// console.log("result: " + JSON.stringify(scanResult));
// this.barcodeScanner.stop();
// }
})
.then(result => console.log(JSON.stringify(result)))
.catch(error => console.log(error));
};
this.barcodeScanner.hasCameraPermission()
.then(granted => granted ? scan() : console.log("Permission denied"))
.catch(() => {
this.barcodeScanner.requestCameraPermission()
.then(() => scan());
});
}
示例8: doContinuousScanMax3
public doContinuousScanMax3() {
let count = 0;
let self = this;
this.barcodeScanner.scan({
reportDuplicates: false,
closeCallback: () => {
console.log("Scanner closed @ " + new Date().getTime());
},
continuousScanCallback: function (result) {
count++;
console.log(result.format + ": " + result.text + " (count: " + count + ")");
if (count === 3) {
self.barcodeScanner.stop();
setTimeout(function () {
alert({
title: "Scanned 3 codes",
message: "Check the log for the results",
okButtonText: "Sweet!"
});
}, 1000);
}
}
});
}
示例9: scan
.catch(() => {
this.barcodeScanner.requestCameraPermission()
.then(() => scan());
});