HIDL Hal 开发指南10 —— 开发一个 App 访问硬件服务

简单起见,我们在玩转 AOSP 之系统 App 源码添加中添加的系统 App 的基础上做修改。

接着将 MainActivity.java 源码修改如下:

java 复制代码
package com.yuandaima.firstsystemapp;

import android.app.Activity;
import android.os.Bundle;
import android.os.HelloHal;
import android.content.Context;
import android.util.Log;
import android.os.RemoteException;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        HelloHal helloHal = (HelloHal)getSystemService(Context.HELLO_SERVICE);
        try {
            helloHal.write("nihao");
            Log.d("yuandaima_log",helloHal.read());
        } catch (RemoteException e) {
            e.printStackTrace();
        }
    }
}

最后编译运行模拟器:

bash 复制代码
source build/envsetup.sh
lunch rice14-eng
emulator -kernel ~/Project/kernel/goldfish/arch/x86_64/boot/bzImage

然后运行 App,查看 log:

bash 复制代码
adb shell logcat | grep yuandaima_log

完事儿。

相关推荐
有位神秘人1 天前
Android的Compose系列之文本TextView
android
Engineer-Jsp1 天前
Flutter 开发 Android 原生开发神器 flutter_api_stub
android·flutter
惟恋惜1 天前
Jetpack Compose 多页面架构实战:从 Splash 到底部导航,每个 Tab 拥有独立 ViewModel
android·ui·架构·android jetpack
ab_dg_dp1 天前
Android bugreportz 源码分析
android
木风小助理1 天前
如何破解 MySQL 死锁?核心原则与实操方法
android
小吴学不废Java1 天前
MySQL慢查询日志分析
android·adb
TechMix1 天前
【用法总结】抓取main_log、events_log、kernel_log日志的方法
android
峥嵘life1 天前
Android16 EDLA 认证测试CTS过程介绍
android·学习
唔661 天前
下面给出 **Fuel 2.x** 的 **“开箱即用”** 封装类,**同时支持**:
android