安卓SDK使用说明

针对NFC-Powered e-Paper安卓开发,我们提供了SDK,将发送函数部分封装好,用户在开发的时候,只需要准备好图像数据, 通过调用函数即可实现图像传输到NFC-Powered e-Paper上进行刷新。

导入.jar文件

  • 下载SDK
    • 下载SDK,并解压出.jar文件
    • NFC SDK
  • 将Jar文件添加到工程的libs目录下

  • 在工程中找到.jar文件,然后右键加载



  
  • 加载成功后,会在build.gradle中自动添加如下的语句:

使用说明

整个SDK中提供了两个函数,分别是发送函数和进度函数

发送函数

  • int a(NfcA var1, int var2, Bitmap var3) ;
    • var1: NFC标签实例
    • var2:墨水屏型号 (请参考下面的墨水屏型号对应表格)
    • var3: 需要显示的BMP图片数据 (请参考下面的图片要求表格)
  • 返回值说明
    • 1:发送成功
    • 0:发送失败
墨水屏型号对应
编号对应型号
12.13inch
22.9inch
34.2inch
47.5inch
57.5inch HD
62.7inch
墨水屏型号对应图片规格
编号尺寸
12.13inch250122
22.9inch296128
34.2inch400300
47.5inch800480
57.5inch HD880528
62.7inch264176

进度函数

  • int b()
  • 返回值:
    • 0-100:当前进度
    • -1:失败

参考示例

  1. protected void onNewIntent(Intent intent) {//识别到NFC
  2. if (mWriteMode && NfcAdapter.ACTION_TAG_DISCOVERED.equals(intent.getAction())) {
  3. detectedTag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
  4. String[] tech = detectedTag.getTechList();//得到描述符
  5. if(tech[0].equals("android.nfc.tech.NfcA")) {//如果描述符正确
  6. Thread t = new Thread() {//创建进程 保证主程序不阻塞
  7. @Override
  8. public void run() {
  9. Boolean success = false;
  10. NfcA tntag;//NFC接口
  11.  
  12. final a a = new a();//创建发送的实例。
  13. a.a();//初始化发送函数
  14.  
  15. Thread thread = new Thread(new Runnable() {//创建线程
  16. @Override
  17. public void run() {
  18. EPD_total_progress = 0;
  19. while(EPD_total_progress != -1){
  20. EPD_total_progress = a.b();//读取进度
  21. if(EPD_total_progress == -1){
  22. break;
  23. }
  24. setStatusBody(getString(R.string.txing) + EPD_total_progress +"%");
  25. if(EPD_total_progress == 100 ){
  26. break;
  27. }
  28. SystemClock.sleep(10);//防止过度占用CPU
  29. }
  30. }
  31. });
  32. thread.start();//开启线程
  33. tntag = NfcA.get(detectedTag);//获取给定标签的实例
  34. try {
  35. int whether_succeed = a.a(tntag,Size_Flag, bmp_send);//发送函数
  36. if(whether_succeed == 1){
  37. success = true;
  38.  
  39. runOnUiThread(new Runnable() {
  40. @Override
  41. public void run() {
  42. checkNFCpopwindow.dismiss(); //窗口提示
  43.  
  44. }
  45. });
  46. Success_Sound_Effects();
  47.  
  48. }else{
  49. setStatusBody(getString(R.string.txfail));
  50. }
  51.  
  52. } finally {
  53. try {
  54. if (success == false) {
  55. setStatusBody(getString(R.string.txfail));
  56. runOnUiThread(new Runnable() {
  57. @Override
  58. public void run() {
  59. checkNFCpopwindow.dismiss();
  60. }
  61. });
  62. }
  63. tntag.close();
  64. } catch (IOException e) {//发送异常处理 NFC I/O异常
  65. e.printStackTrace();
  66. }
  67. }
  68. }
  69. };
  70. t.start();//开启线程
  71. }
  72. }
  73. }


TAG: SIMCom SIM7600G-H MiniPCIe GNSS全球定位4G通讯模块LTE Cat-4 工业级隔离型RS485转ETH (C)转RJ45以太网转换器 导轨挂式 ESP32-S3摄像头开发板2寸LCD显示屏240x320 触摸屏 QMI8658传感器 ESP32-S3N8R8 7寸电容触摸屏开发板800×480WiFi蓝牙CAN传感器RS485 ESP32 C3 mini ESP32 S3开发板2.1寸LCD触摸显示屏480 HMI LVGL带QMI8658 6轴加速度陀螺仪 STM32 1.5寸LCD 树莓派红外热像仪 ESP32 C6开发板1.47寸LCD显示屏172x320带RGB灯SD槽兼容Arduino 树莓派5寸LCD显示屏1024x600大盖板全贴合电容触摸屏HDMI电脑 官方 树莓派UPS 机箱副屏 树莓派 播放大功率宽电压 红外摄像头 幸狐Luckfox Pico摄像头 MIS5001 500万 广角 仅支持RV1106系列 Arducam AF Camera ESP32-S3 LCD Milk-V Duo S 512MB SG2000 RISC-V UART串口控制台