首页 技术 正文
技术 2022年11月20日
0 收藏 666 点赞 4,781 浏览 2325 个字

调试了包括驱动,jni层,当然也熟悉了下应用层。

   1. 驱动层包括修改:
       device/eastaeon/aeon6735_65c_l/init.project.rc    //去掉原来修改权限的语句         device/mediatek/mt6735/init.mt6735.rc    //修改权限,不然可以open不了                 chmod 0777  /dev/ttyMT2
                 chown system system /dev/ttyMT2                  chmod 0777 /dev/uart_rfid         kernel-3.10/arch/arm64/configs/aeon6735_65c_l_debug_defconfig  ////加入编                 CONFIG_RUNBO_RFID=y                 CONFIG_HKT_RFID=y         kernel-3.10/drivers/misc/mediatek/Kconfig.drivers //增加Kconfig, 在mtk平台,不加可能导致不会编译                    #Start [chenxw,2015-04-25]Add rfid driver.

menuconfig RUNBO_RFID

        tristate “Runbo rfid driver”

       default y

       —help—

          Say Y here for supporting Runbo rfid.

if RUNBO_RFID

config HKT_RFID

           tristate “HKT rfid Driver”

           default y

           help

           This is the pr9200 rfid driver.

endif #End 

         kernel-3.10/drivers/misc/mediatek/Makefile.mt6735 //增加目录下的Makefile                    #Start [chenxw,2015-04-25]Add rfid driver.

obj-$(CONFIG_RUNBO_RFID) += rfid/

#End  

        kernel-3.10/drivers/misc/mediatek/rfid/Makefile  //添加在附件 :rfid_driver.rar      kernel-3.10/drivers/misc/mediatek/rfid/rfid.c        //添加在附件,只做上下电,读取数据在uart驱动中做  2.JNI修改,有两种方法:            1.一种是在系统的加载的时候加入系统,这种是编入系统的            2.一种是生成SO文件,在APK调用的时候加载进系统。
          注意:
                jni的声明的函数要和java声明的函数一一对应。
     1.编入系统:            (1). 主要代码:android_hardware_Rfid.cpp              (2). frameworks/base/api/current.txt  
                        修改framework/base下面的api要注意更新api/current.txt文件, 如果修改了Android原有API的 ,需要update frameworks/base/api/current.txt。                   否则编译被中断并出现编译错误提示,  可以通过运行 make update-api后,自动更新此文件,检查确认正确后,跟代码一起提交即可。                        public class Rfid{

    ctor public Rfid()

    method public java.lang.String getMessage();

    method public int sendMessage(java.lang.String);

    method public void intercomPowerOff();

    method public void intercomPowerOn();

                         }              (3) . frameworks/base/core/jni/Android.mk 
                      LOCAL_SRC_FILES += android_hardware_Intercom.cpp   //加入编译
              (4).frameworks/base/core/jni/AndroidRuntime.cpp
                      extern int register_android_hardware_Intercom(JNIEnv* env);
                      /register_android_hardware_Intercom  类中加入:
                              REG_JNI(register_android_hardware_Intercom), //使系统在启动的时候就加载JNI库
                      
                                 
            
    2.生成SO文件,与APK一起也可以:RfidJNI.rar              apk里面带有SO文件,只要有节点就可以打开,进行运行,直接在目录下mm就可以生成动态库。   3.rfid的linux c程序,external目录下       附件rfid.rar
   

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,104
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,580
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,428
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,200
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,835
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,918