1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- <template>
- <view class="content"></view>
- </template>
- <script>
- var main, receiver, filter;
- var _codeQueryTag = false;
- export default {
- name: 'seiminScan',
- data() {
- return {
- scanCode: ''
- }
- },
- created: function(option) {
- this.initScan()
- this.startScan();
- },
- onHide: function() {
- this.stopScan();
- },
- destroyed: function() {
-
- this.stopScan();
- },
- methods: {
- initScan() {
- main = plus.android.runtimeMainActivity();
- let IntentFilter = plus.android.importClass('android.content.IntentFilter');
- filter = new IntentFilter();
- filter.addAction("com.honeywell.scan.broadcast");
- receiver = plus.android.implements('io.dcloud.feature.internal.reflect.BroadcastReceiver', {
- onReceive: (context, intent) => {
- plus.android.importClass(intent);
- let code = intent.getStringExtra("data");
- this.queryCode(code);
- }
- });
- },
- startScan() {
- main.registerReceiver(receiver, filter);
- },
- stopScan() {
- main.unregisterReceiver(receiver);
- },
- queryCode: function(code) {
-
- if (_codeQueryTag) return false;
- _codeQueryTag = true;
- setTimeout(function() {
- _codeQueryTag = false;
- }, 150);
- let id = code
- uni.$emit('scancodedate', {
- code: id
- })
- }
- }
- }
- </script>
- <style lang="scss" scoped>
- page {
- background-color: #efeff4;
- }
- .content {
- text-align: center;
- }
- </style>
|