怎样实现硬件访问服务(下)

简介: 怎样实现硬件访问服务

本文原文链接:https://xuesong.blog.csdn.net/article/details/80933999?spm=1001.2014.3001.5502



注册进去:

1675858293412.jpg

1675858306296.jpg

1675858314109.jpg


4、LedService.java:调用本地方法来操作硬件

package com.android.server;
import android.os.ILedsService;
//类 LedService ,它继承的父类是ILedService.Stub类
public class LedService extends ILedService.Stub{
    private static final String Tag = "LedService";
    //call native c function to access hardware
    public int ledCtrl(int which, int status) 
    {
        return native_ledCtrl(which,status);
    }
    public LedService(){
        native_ledOpen();
    }
    public int native native_ledCtrl(int which, int status);
}

1675858335249.jpg


SystemServer.java中

Slog.i(Tag, “Led Service”);
ServiceManager.addService(“led”, new LedService);//new LedService 创建实例化对象


5、IledService.java(接口文件):给app使用

aidl(Android Interface Definition Language)文件
interface ILedService(){
    int ledCtrl(int which, int status);
}


需要修改:Android.mk

添加一行:

core/java/android/os/ILedService.aidl\


执行mmm . 命令

生成:IledService.java 文件


6、app使用

=====================


JNI复习:

1675858384288.jpg

硬件访问服务:

SystemServer:

1675858393485.jpg

因为操作都不一样:

1675858404676.jpg

相关文章
|
开发框架 前端开发 JavaScript
分享53个ASP.NET源码总有一个是你想要的
分享53个ASP.NET源码总有一个是你想要的
312 0
C# DEV TextEdit 设置文本框只能输入数字(整数)
C# DEV TextEdit 设置文本框只能输入数字(整数)
|
前端开发 C++
10分钟,带你掌握C++多线程同步!
本文介绍了C++11中如何开启新线程,并详细讲解了线程的基础同步原语。如何采用async, packaged_task和promise实现future同步机制?怎样处理spurious wakeup?本文以质数判定服务为例为大家分享C++多线程同步措施!
13295 0
|
前端开发 JavaScript 数据格式
echarts异步数据加载(在下拉框选择事件中异步更新数据)
接触echarts 大半年了,从不会到熟练也做过不少的图表,隔了一段时间没使用这玩意,好多东西真心容易忘了。在接触echarts这期间也没有总结什么东西,今天我就来总结一下如何在echart中异步加载数据,在实际的工作的中对数据的刷选非常常见,比如在下拉框中选择,时间选择等的一些事件中异步加载数据。
3722 0
|
SpringCloudAlibaba Java 持续交付
【构建一套Spring Cloud项目的大概步骤】&【Springcloud Alibaba微服务分布式架构学习资料】
【构建一套Spring Cloud项目的大概步骤】&【Springcloud Alibaba微服务分布式架构学习资料】
1007 0
|
存储 安全 Java
Android 面试题及答案整理,最新面试题
Android 面试题及答案整理,最新面试题
614 2
|
存储 关系型数据库 索引
B+树层数计算(面试官直呼内行)
首先搞清楚一个常识,我们都知道计算机在存储数据的时候,有最小存储单元,这就好比我们今天进行现金的流通最小单位是一毛 在计算机中磁盘存储数据最小单元是扇区,一个扇区的大小是 512 字节,而文件系统(例如XFS/EXT4)他的最小单元是块,一个块的大小是 4k
2472 0
|
存储 安全 搜索推荐
php对接百度网盘开发平台API开发高级实战案例解析:(环境部署、php封装类、Access Token获取、预上传、分片上传)
php对接百度网盘开发平台API开发高级实战案例解析:(环境部署、php封装类、Access Token获取、预上传、分片上传)
1263 0
|
Web App开发 JSON JavaScript
一文搞定 Postman 接口自动化测试
一文搞定 Postman 接口自动化测试
一文搞定 Postman 接口自动化测试
|
SQL 关系型数据库 数据库
Windows server 2016——SQL server 简介与安装
Windows server 2016——SQL server 简介与安装
660 0