目录

  • 1、东大集成PDA的扫码说明
  • 2、Xamarin通过广播实现扫码
    • 2.1 PDA的扫码工具设置
    • 2.2 代码实现
      • 2.2.1 主界面
      • 2.2.1 定义广播接收器
      • 2.2.2 在活动页面实现读取
    • 2.3 实现效果
  • 3、demo下载

1、东大集成PDA的扫码说明

东大集成的PDA有两种方式实现设备自带的扫码功能。一种为调用硬件接口方式,另外一种为接收扫描工具广播开发模式。
其中两种方式只能选择一种,不可以在同一个APP中混用。
因此本次使用广播的方式实现东大集成PDA的扫码功能

2、Xamarin通过广播实现扫码

2.1 PDA的扫码工具设置

1、找到PDA上的扫码工具

2、进行应用的设置

3、选择广播的方式

4、点击“开发者项”,输入密码:888888

5、广播的相关内容,记下来,一会儿再代码中会用到

2.2 代码实现

2.2.1 主界面

layout/activity_main.xml中添加了一个文本的控件(plain text)

2.2.1 定义广播接收器

[BroadcastReceiver(Enabled = true)]
[IntentFilter(new[] { "com.android.server.scannerservice.broadcast" })]
public class MySampleBroadcastReceiver : BroadcastReceiver
{public string ScannerContent { get; set; } //用于存储扫码结果,并对外提供的public override void OnReceive(Context context, Intent intent){if(intent.Action.Equals("com.android.server.scannerservice.broadcast")){ScannerContent = intent.GetStringExtra("scannerdata"); //读取数据。这个scannerdata,就是开发者项中的键值名称}           }
}

2.2.2 在活动页面实现读取

MainActivity中实现数据的接收

[Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)]
public class MainActivity : AppCompatActivity
{MySampleBroadcastReceiver receiver;TextView sacnInputText;protected override void OnCreate(Bundle savedInstanceState){base.OnCreate(savedInstanceState);Xamarin.Essentials.Platform.Init(this, savedInstanceState);// Set our view from the "main" layout resourceSetContentView(Resource.Layout.activity_main);receiver = new MySampleBroadcastReceiver(); //初始化接收器receiver.ScannerContent = "默认的初始值";sacnInputText = FindViewById<TextView>(Resource.Id.editText1); //初始化控件}protected override void OnResume(){base.OnResume();//设置自动获取焦点sacnInputText.Focusable = true;sacnInputText.RequestFocus();sacnInputText.FocusableInTouchMode = true;sacnInputText.RequestFocusFromTouch();try{RegisterReceiver(receiver, new IntentFilter("com.android.server.scannerservice.broadcast")); //注册接收sacnInputText.Text = receiver.ScannerContent;}catch (Exception e){sacnInputText.Text = e.Message;}}protected override void OnPause(){//释放资源UnregisterReceiver(receiver); // Code omitted for claritybase.OnPause();}public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults){Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);base.OnRequestPermissionsResult(requestCode, permissions, grantResults);}
}

2.3 实现效果

东大集成PDA的扫码功能

3、demo下载

demo下载:提取码:NHZL

通过Xamarin实现东大集成PDA的扫码相关推荐

  1. laravel5集成支付宝alipay扫码支付流程(Laravel 支付解决方案)

    laravel5集成支付宝alipay扫码支付流程(Laravel 支付解决方案) 参考文章: (1)laravel5集成支付宝alipay扫码支付流程(Laravel 支付解决方案) (2)http ...

  2. 在系统中集成淘宝扫码登录

    在系统中集成淘宝扫码登录 在系统中集成淘宝扫码登录 申请二维码并存入数据库 在手淘首页搜索框中输入口令,并搜索 点击确认登录后,系统中即可获取到cookie相关信息 在系统中集成淘宝扫码登录 为了在公 ...

  3. uniapp PDA广播扫码

    uniapp 监听PDA扫描工具数据 1.需求是:App监听东大PDA内置的扫描工具,通过扫描工具扫描条码,把数据自动赋值在input输入框,无需手动设置或者调用uniapp的uni.scanCode ...

  4. [Firemonkey]开发Android系统的PDA手机扫码功能

    现在市面上出现了很多Android系统的PDA,其实就是一个手机,只不过他的USB插口与大家用的不一样,最大的不同是,他自己带了一个红外线扫码枪, 持机者可以快速扫码获取信息,有的 PDA更搭上了打印 ...

  5. Android集成微信SDK扫码登录功能

    最近做一个android项目,需求是登录页面加入微信二维码扫码登录入口(类似于PC端扫一扫登录),用户打开微信APP,扫描二维码,点击登录即可.当时也看了官网的相关介绍,确实踩了不少坑,写这个博客记录 ...

  6. 监听pda扫描_东大集成PDA扫描开发

    void scanner(UIDatadata) { int notifyId=data.getNotifyId(); ScanData scanData= (ScanData) data.getDa ...

  7. 仓库物品领用吉度PDA出入库盘点扫码方案

    仓库出入库PDA管理说明 领用出入库PDA系统分为两部分,电脑端软件和PDA扫码端,pda和电脑通过网络实时同步,实现pda端扫码出入库实时传输到后台汇总并统计报表. 下面介绍一下具体的使用方法和流程 ...

  8. delphi XE模拟Android手机PDA设备的虚拟键盘按键及扫码过程输入焦点及信号接收

    delphi XE模拟Android手机PDA设备的虚拟键盘按键及扫码过程输入焦点及信号接收 今天,群里有几位同学讨论这个问题,汇总了一下,分享出来,供同学们学习研究. 一.直接上代码示例 1.屏蔽应 ...

  9. Android 连接蓝牙扫码器 无输入框

    Android 的APP 需要集成一个蓝牙扫码器, 特别的是,需要扫码的地方是没有输入框的(EditText),不能通过直觉上理解的通过对EditText输入事件进行监听处理,取得扫码结果.并且设备也 ...

最新文章

  1. linux——(8)数据流重定向、管道命令
  2. Oracle数据库命令行下数据的导入导出
  3. android 消息循环机制--looper handler
  4. 服务器ghost到虚拟机,无需U盘用Ghost还原vmware内虚拟机系统的方法
  5. sonar的安装以及使用
  6. POJ 1185 炮兵阵地
  7. Codeforces Round #766 (Div. 2) D. Not Adding 数学gcd
  8. 前端学习(1165):扩展运算符01
  9. SmartNews:基于 Flink 加速 Hive 日表生产的实践
  10. 大型网站的Google排名策略
  11. typecho 隐藏index.php,Typecho开启伪静态并隐藏index.php
  12. java版hive的UDF(临时函数与永久函数)
  13. c fun函数求n个整数的平均值_OOP 面向对象编程:由 C 到 C++
  14. MPB:林科院袁志林组-树木共生真菌菌株纯化及快速鉴定方法
  15. 【运筹学】线性规划数学模型 ( 求解基矩阵示例 | 矩阵的可逆性 | 线性规划表示为 基矩阵 基向量 非基矩阵 非基向量 形式 )
  16. OSPF路由器类型 ABR与ASBR路由聚合区别
  17. Roman to Integer/Integer to Roman
  18. LPC23XX CAN波特率的计算
  19. python截屏_Python: 截屏
  20. Android Volley核心源码解析

热门文章

  1. 龙世界java游戏_我的世界:当Notch在6年后重回mc,会发生什么?萌新的像个弟弟...
  2. lcd驱动分析(读书笔记)
  3. 我的ArchLinux使用反馈--(更新暂停-入Mac)
  4. ibis的pkg文件是什么_相机上的体内防抖(IBIS)是什么?
  5. 机器人 c语言编程题,机器人机器人小高试题模拟题
  6. 英语六级考600分以上是一种怎样的体验?
  7. ChatGPT不止是对话机器人
  8. c语言中 间接成员选择运算符,c语言中-(间接成员运算符)的含义
  9. HTML+CSS+JavaScript简单实现时钟
  10. Markdown格式下符号及数学公式的输入