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

相关文章

Python开发文字版随机事件游戏的项目实例

《Python开发文字版随机事件游戏的项目实例》随机事件游戏是一种通过生成不可预测的事件来增强游戏体验的类型,在这篇博文中,我们将使用Python开发一款文字版随机事件游戏,通过这个项目,读者不仅能够... 目录项目概述2.1 游戏概念2.2 游戏特色2.3 目标玩家群体技术选择与环境准备3.1 开发环境3

利用python实现对excel文件进行加密

《利用python实现对excel文件进行加密》由于文件内容的私密性,需要对Excel文件进行加密,保护文件以免给第三方看到,本文将以Python语言为例,和大家讲讲如何对Excel文件进行加密,感兴... 目录前言方法一:使用pywin32库(仅限Windows)方法二:使用msoffcrypto-too

Android使用ImageView.ScaleType实现图片的缩放与裁剪功能

《Android使用ImageView.ScaleType实现图片的缩放与裁剪功能》ImageView是最常用的控件之一,它用于展示各种类型的图片,为了能够根据需求调整图片的显示效果,Android提... 目录什么是 ImageView.ScaleType?FIT_XYFIT_STARTFIT_CENTE

Pandas使用AdaBoost进行分类的实现

《Pandas使用AdaBoost进行分类的实现》Pandas和AdaBoost分类算法,可以高效地进行数据预处理和分类任务,本文主要介绍了Pandas使用AdaBoost进行分类的实现,具有一定的参... 目录什么是 AdaBoost?使用 AdaBoost 的步骤安装必要的库步骤一:数据准备步骤二:模型

使用Pandas进行均值填充的实现

《使用Pandas进行均值填充的实现》缺失数据(NaN值)是一个常见的问题,我们可以通过多种方法来处理缺失数据,其中一种常用的方法是均值填充,本文主要介绍了使用Pandas进行均值填充的实现,感兴趣的... 目录什么是均值填充?为什么选择均值填充?均值填充的步骤实际代码示例总结在数据分析和处理过程中,缺失数

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

Android实现在线预览office文档的示例详解

《Android实现在线预览office文档的示例详解》在移动端展示在线Office文档(如Word、Excel、PPT)是一项常见需求,这篇文章为大家重点介绍了两种方案的实现方法,希望对大家有一定的... 目录一、项目概述二、相关技术知识三、实现思路3.1 方案一:WebView + Office Onl

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

Android实现悬浮按钮功能

《Android实现悬浮按钮功能》在很多场景中,我们希望在应用或系统任意界面上都能看到一个小的“悬浮按钮”(FloatingButton),用来快速启动工具、展示未读信息或快捷操作,所以本文给大家介绍... 目录一、项目概述二、相关技术知识三、实现思路四、整合代码4.1 Java 代码(MainActivi

Android Mainline基础简介

《AndroidMainline基础简介》AndroidMainline是通过模块化更新Android核心组件的框架,可能提高安全性,本文给大家介绍AndroidMainline基础简介,感兴趣的朋... 目录关键要点什么是 android Mainline?Android Mainline 的工作原理关键