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开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

Java编译生成多个.class文件的原理和作用

《Java编译生成多个.class文件的原理和作用》作为一名经验丰富的开发者,在Java项目中执行编译后,可能会发现一个.java源文件有时会产生多个.class文件,从技术实现层面详细剖析这一现象... 目录一、内部类机制与.class文件生成成员内部类(常规内部类)局部内部类(方法内部类)匿名内部类二、

使用Jackson进行JSON生成与解析的新手指南

《使用Jackson进行JSON生成与解析的新手指南》这篇文章主要为大家详细介绍了如何使用Jackson进行JSON生成与解析处理,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 核心依赖2. 基础用法2.1 对象转 jsON(序列化)2.2 JSON 转对象(反序列化)3.

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Android中Dialog的使用详解

《Android中Dialog的使用详解》Dialog(对话框)是Android中常用的UI组件,用于临时显示重要信息或获取用户输入,本文给大家介绍Android中Dialog的使用,感兴趣的朋友一起... 目录android中Dialog的使用详解1. 基本Dialog类型1.1 AlertDialog(

Python使用自带的base64库进行base64编码和解码

《Python使用自带的base64库进行base64编码和解码》在Python中,处理数据的编码和解码是数据传输和存储中非常普遍的需求,其中,Base64是一种常用的编码方案,本文我将详细介绍如何使... 目录引言使用python的base64库进行编码和解码编码函数解码函数Base64编码的应用场景注意

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

Python基于wxPython和FFmpeg开发一个视频标签工具

《Python基于wxPython和FFmpeg开发一个视频标签工具》在当今数字媒体时代,视频内容的管理和标记变得越来越重要,无论是研究人员需要对实验视频进行时间点标记,还是个人用户希望对家庭视频进行... 目录引言1. 应用概述2. 技术栈分析2.1 核心库和模块2.2 wxpython作为GUI选择的优

Java进行文件格式校验的方案详解

《Java进行文件格式校验的方案详解》这篇文章主要为大家详细介绍了Java中进行文件格式校验的相关方案,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、背景异常现象原因排查用户的无心之过二、解决方案Magandroidic Number判断主流检测库对比Tika的使用区分zip

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3