注册名:

密码:

个人注册

企业注册

商务申请

商务管理平台

企业管理平台

个人管理平台

我的工控博客

中国工控网www.chinakong.com

首页 | 新闻中心 | 工控论坛 | 经验视点 | 工控商务 | 电气手册 | 工控博客 | 招聘求职 | 网上调查 | 企业中心 | 供求信息 | 资料中心 | 工控书店

所在位置:工控博客苑-- 杭州立宇泰电子-- Android HAL 开发 (2)

中国工控网搜索:

杭州立宇泰电子工控博客

郭女士

     学历:大学本科
     职称:其他
     年龄:36岁
       新闻信息(21/66)
       工作图片(0)
       技术论文(0/0)
       交流论坛(0/0)
       留言信箱(2)
       浏览人次:5698

Android HAL 开发 (2)

发表评论(4)    发布时间:2012年8月24日  

    在上一篇文章中,我们看到了如何撰写HAL层的用户硬件驱动程序,我们每也知道,最终该代码会被编译成动态链接库提供给service(jni)使用,那么我们下面来看看service(jni)是如何与HAL通信的。
    一般service的jni代码位于framework/base/service/jni/中,我们看看mokoid的ledservice是如何实现的:
   
   
   
    framework/base/service/jni/com_mokoid_server_LedService.cpp
   
    static const JNINativeMethod gMethods[] = {
    { "_init", "()Z", (void *)mokoid_init },
    { "_set_on", "(I)Z", (void *)mokoid_setOn },
    { "_set_off", "(I)Z", (void *)mokoid_setOff },
    };
    int register_mokoid_server_LedService(JNIEnv* env){
    static const char* const kClassName =
    "com/mokoid/server/LedService";
    jclass clazz;
    /* look up the class */
    clazz = env->FindClass(kClassName);
    if (clazz == NULL) {
    LOGE("Can't find class %s\n", kClassName);
    return -1;
    }
    /* register all the methods */
    if (env->RegisterNatives(clazz, gMethods,
    sizeof(gMethods) / sizeof(gMethods[0])) != JNI_OK)
    {
    LOGE("Failed registering methods for %s\n", kClassName);
    return -1;
    }
    /* fill out the rest of the ID cache */
    return 0;
    }
    上面的函数register_mokoid_server_LedService会把以C/C++实现的接口注册为java可调用的接口,比如mokoid_init为C/C++代码,
   
    而_init则位java可以使用的接口。这个函数会在JNI_OnLoad里面被调用。
   
    阅读更多下文请点击:http://www.hzlitai.com.cn/article/ARM11/SYSTEM/Android_HAL_kaifa2.html
 

 评论仅代表评论人个人看法,不表明博客主人及中国工控网同意其观点或其描述  共4条评论  共1页  第1页  

 评论人署名:daisukeyu 评论时间:2012/11/27 9:01:00

我要发表评论 

    一起分享
 评论人署名:daisukeyu 评论时间:2013/2/26 16:19:00

我要发表评论 

    大家一起学习!
 评论人署名:daisukeyu 评论时间:2013/5/14 14:37:00

我要发表评论 

    祝贺立宇泰视频指纹车载驾培终端产品,一次性通过“国家电子计算机外部设备质量监督检验中心”权威部门的检测,测试项目包括:性能检验、环境适应性检验、可靠性检验、电磁兼容性检验、安全检验。
    http://www.hzlitai.com.cn/news/1855.html
   
 评论人署名:daisukeyu 评论时间:2013/6/4 9:40:00

我要发表评论 

    祝贺立宇泰视频指纹车载驾培终端产品,一次性通过“国家电子计算机外部设备质量监督检验中心”权威部门的检测,测试项目包括:性能检验、环境适应性检验、可靠性检验、电磁兼容性检验、安全检验。
    http://www.hzlitai.com.cn/news/1855.html
   

共4条评论   共1页  第1页   

    发表评论

登陆网站发表评论

用户名:

密码:

注册 | 忘了密码

关于我们     免责声明     服务项目     广告联系     友情链接     联系方式     意见反馈     设为首页     加入收藏

 ©2023-2025 中国工控网(www.chinakong.com) 版权所有 豫ICP备17046657号

管理员信箱:chinakong98@163.com  服务热线:13525974529

洛阳博德工控自动化技术有限公司

中国    洛阳