android刻录软件开发,基于i.MX8开发板进行安卓Android9.0编译和开发

本文主要是介绍android刻录软件开发,基于i.MX8开发板进行安卓Android9.0编译和开发,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安卓 Android 凭借其丰富的生态环境,以及快捷的应用开发和分发,获得了广泛的市场关注。米尔最新基于 NXP iMX8 处理器的MYD-JX8MX核心板及开发板也提供了Android 9.0支持。下面我们将介绍如从源码开始编译安卓Android 9.0。

部署开发环境

开发前需要在PC安装好Linux操作系统,推荐使⽤Ubuntu 16.04 64bit发行版,8G内存, 500G以上空闲硬盘。连接网线并配 置好网络,后续操作需要连接互联网安装或下载相关软件包。可以参考NXP官方文档 《Android_User's_Guide.pdf》。

替换Ubuntu软件源  操作步骤如下:

1.备份源 cp /etc/apt/sources.list /etc/apt/sources.list-bak

2.复制16.04清华源内容到此/etc/apt/sources.list 文件。

3.更新源

apt-get update

PS: 如遇到appstream3报错可以先删除软件包,再更新。

安装必备软件包

新装Ubuntu系统还需要安装一些常用软件,执行如下命令进行安装。

sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsd l1.2-dev u-boot-tools

sudo apt-get install libsdl1.2-dev xterm sed cvs subversion coreutils texi2html docbook-utils python-pysqlite2 help2man make gcc g++ desktop-file-utils libgl1-mesa-dev libglu1-mesa-dev mercurial autoconf automake groff cu rl lzop asciidoc

设置repo文件

repo是用来下载资源文件,存放在03-Tools/Repo 目录,如下操作将此文件添加到用户环境中。

mkdir ~/bin

cp ~/03-Tools/Repo/repo ~/bin

chmod a+x ~/bin/repo

export PATH=~/bin:$PATH

配置git

资源下载时需要用到git,如下操作进行基本配置,用户名和邮箱改成户名对于名称。

git config --global user.name "abc123"

git config --global user.email "def456@gmail.com"

git config --list

3. Android系统烧录和编译

Android 镜像编译需要很多时间,可以用编译好的镜像烧录到开发板来看效果,烧录采用UUU 烧录。 这里本章节会先介绍如何 将镜像烧录到EMMC 和 SD 卡中,然后介绍编译镜像方法。

3.1 Android镜像烧录EMMC方法

编译好的镜像位于02-Image 目录,将android_p9.0.0_2.0.0-ga_image_8mq-myd-MT53D512M32D2DS-053.zip 放到 WINDOWS系统下解压。

UUU烧录会建立软链接,所以请用管理员权限打开cmd,如下图所示:

48e2ba0072681d0a06b41e74785cf619.png

跳转到解压目录中,执行

uuu_imx_android_flash.bat -f imx8mq -a -e -c 7

d6fb1bdf21ec84026490faa9ba601301.png

接下来请确保开发板TF卡槽没有插如TF卡, typec口一端 接电脑,另一端接底板的tyepC口(J8),拨码开关设置成 (sw1)LLHL (sw2)HL,然后上电。

bb652318626850f38f5622c2e137b94d.png

烧录过程如下:

e4f3412083eca58cfff5b3e3609935ac.png

烧录完后,将拨码开关设置为 (sw1)LLHL (sw2) LH 即可启动。

3.2 Android镜像烧录SD方法

编译好的镜像位于02-Image 目录,将android_p9.0.0_2.0.0-ga_image_8mq-myd-MT53D512M32D2DS-053.zip放到 WINDOWS系统下解压。 UUU烧录会建立软链接,所以请用管理员权限打开cmd,如下图所示:

8dc7b1e7d58f1628927f018c4d90184f.png

跳转到解压目录中,执行

uuu_imx_android_flash.bat -f imx8mq -a -e -c 7 -t sd

47e1b9fe796275364cd443cf56703c80.png

接下来请确保开发板TF卡槽没有插如TF卡, typec一端 接电脑,另一端接底板的tyepC口(J8),拨码开关设置成 (sw1)HHLL (sw2)HL,然后上电。

ed03cd49a6c281ea1bffdba72b834fc9.png

烧录过程如下:

6db5ec8285966eaa9a9bc9971b3ad28e.png

达到3/3后 插入TF卡,请注意这个时间。

f824eb4637cc4fd00d0a4fab2a67b908.png

烧录完后,将拨码开关设置为 (sw1)HHLL (sw2) LH 即可启动。

3.3 Android镜像编译方法

请先解压源码 myir_android9.0.0_2.0.0.tar.gz,然后执行 source myir_build.sh 即可开始编译

mkdir android_dir

tar -zxf myir_android9.0.0_2.0.0.tar.gz -C android_dir

cd android_dir

source myir_build.sh

myir_build.sh中

snip

#build_bootloader

#build_kernel

#build_dtbo

make -j4 2>&1 | tee build-log.txt

build_bootloader 编译

uboot build_kernel 编译

kernel build_dtbo 编译dtbo文件

make -j4 2>&1 | tee build-log.txt 完整编译

这篇关于android刻录软件开发,基于i.MX8开发板进行安卓Android9.0编译和开发的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/225476

相关文章

如何使用celery进行异步处理和定时任务(django)

《如何使用celery进行异步处理和定时任务(django)》文章介绍了Celery的基本概念、安装方法、如何使用Celery进行异步任务处理以及如何设置定时任务,通过Celery,可以在Web应用中... 目录一、celery的作用二、安装celery三、使用celery 异步执行任务四、使用celery

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

SpringBoot使用minio进行文件管理的流程步骤

《SpringBoot使用minio进行文件管理的流程步骤》MinIO是一个高性能的对象存储系统,兼容AmazonS3API,该软件设计用于处理非结构化数据,如图片、视频、日志文件以及备份数据等,本文... 目录一、拉取minio镜像二、创建配置文件和上传文件的目录三、启动容器四、浏览器登录 minio五、

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

python-nmap实现python利用nmap进行扫描分析

《python-nmap实现python利用nmap进行扫描分析》Nmap是一个非常用的网络/端口扫描工具,如果想将nmap集成进你的工具里,可以使用python-nmap这个python库,它提供了... 目录前言python-nmap的基本使用PortScanner扫描PortScannerAsync异

C#图表开发之Chart详解

《C#图表开发之Chart详解》C#中的Chart控件用于开发图表功能,具有Series和ChartArea两个重要属性,Series属性是SeriesCollection类型,包含多个Series对... 目录OverviChina编程ewSeries类总结OverviewC#中,开发图表功能的控件是Char

Android WebView的加载超时处理方案

《AndroidWebView的加载超时处理方案》在Android开发中,WebView是一个常用的组件,用于在应用中嵌入网页,然而,当网络状况不佳或页面加载过慢时,用户可能会遇到加载超时的问题,本... 目录引言一、WebView加载超时的原因二、加载超时处理方案1. 使用Handler和Timer进行超

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类