Android底层驱动开发记录:01_JNI

最近项目中需要用到了Android底层的开发,正好疫情居家所以又把韦老师的老教程第四期Android教程翻出来学习学习,手边也没有合适的板子,找了一块AIO-3288C的板子接了一块HDMI的屏来用。本来之前一直做单片机的,因此学起来还比较吃力,所以这里做一些记录,以备以后查看。

1. java学习,基本上跟着走了一遍,无波澜。C++因为会一点点就暂时跳过了,不行回来再补吧。

2. AIO-3288C环境搭建,最好是有一台真机 4G以上内存,硬盘至少100G,我这虚拟机空间有限编译不能通过,最后拿出很久之前买的腾讯云,Ubuntu18+2G内存+设置虚拟16G内存+100G硬盘,这个配置是偏低的但勉强用能编译SDK能通过。环境搭建上主要是open-7-jdk比较麻烦,可以参考我另一篇文章。最后达成结果就是,固件能完成RK3288C刷机,能Android studio联调app;mobaxterm ssh sftp获取云服务器资源调试源码(试图在腾讯云上装samba来着,很麻烦,放弃了);串口可以打印RK3288C启动日志;使用Android studio自带的adb设置一下环境变量用来adb调试RK3288C。

3. 开始敲代码吧。

(1)做一个APP,3288真机仿真一下,没难度,跟着做就好了。

package com.example.app_0001_leddemo;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.Toast;
import com.example.hardlibrary.*;

public class MainActivity extends AppCompatActivity {

    private boolean ioonoff=false;
    private Button button=null;
    private CheckBox checkBox_io1=null;
    private CheckBox checkBox_io2=null;
    private CheckBox checkBox_io3=null;
    private CheckBox checkBox_io4=null;

    public void onCheckboxClicked(View view) {
        boolean checked= ((CheckBox)view).isChecked();

        switch (view.getId()){
            case R.id.checkbox_io1:
                if(checked){
                    Toast.makeText(getApplicationContext(), "checkbox1 on ",Toast.LENGTH_SHORT).show();
                    HardCtrl.ioCtrl(0,1);
                }else {
                    Toast.makeText(getApplicationContext(), "checkbox1 off",Toast.LENGTH_SHORT).show();
                    HardCtrl.ioCtrl(0,0)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值