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调用Orator ORM进行数据库操作

《Python调用OratorORM进行数据库操作》OratorORM是一个功能丰富且灵活的PythonORM库,旨在简化数据库操作,它支持多种数据库并提供了简洁且直观的API,下面我们就... 目录Orator ORM 主要特点安装使用示例总结Orator ORM 是一个功能丰富且灵活的 python O

Nginx设置连接超时并进行测试的方法步骤

《Nginx设置连接超时并进行测试的方法步骤》在高并发场景下,如果客户端与服务器的连接长时间未响应,会占用大量的系统资源,影响其他正常请求的处理效率,为了解决这个问题,可以通过设置Nginx的连接... 目录设置连接超时目的操作步骤测试连接超时测试方法:总结:设置连接超时目的设置客户端与服务器之间的连接

IDEA编译报错“java: 常量字符串过长”的原因及解决方法

《IDEA编译报错“java:常量字符串过长”的原因及解决方法》今天在开发过程中,由于尝试将一个文件的Base64字符串设置为常量,结果导致IDEA编译的时候出现了如下报错java:常量字符串过长,... 目录一、问题描述二、问题原因2.1 理论角度2.2 源码角度三、解决方案解决方案①:StringBui

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

SpringBoot中使用 ThreadLocal 进行多线程上下文管理及注意事项小结

《SpringBoot中使用ThreadLocal进行多线程上下文管理及注意事项小结》本文详细介绍了ThreadLocal的原理、使用场景和示例代码,并在SpringBoot中使用ThreadLo... 目录前言技术积累1.什么是 ThreadLocal2. ThreadLocal 的原理2.1 线程隔离2

Android里面的Service种类以及启动方式

《Android里面的Service种类以及启动方式》Android中的Service分为前台服务和后台服务,前台服务需要亮身份牌并显示通知,后台服务则有启动方式选择,包括startService和b... 目录一句话总结:一、Service 的两种类型:1. 前台服务(必须亮身份牌)2. 后台服务(偷偷干

Python利用PIL进行图片压缩

《Python利用PIL进行图片压缩》有时在发送一些文件如PPT、Word时,由于文件中的图片太大,导致文件也太大,无法发送,所以本文为大家介绍了Python中图片压缩的方法,需要的可以参考下... 有时在发送一些文件如PPT、Word时,由于文件中的图片太大,导致文件也太大,无法发送,所有可以对文件中的图

如何使用Spring boot的@Transactional进行事务管理

《如何使用Springboot的@Transactional进行事务管理》这篇文章介绍了SpringBoot中使用@Transactional注解进行声明式事务管理的详细信息,包括基本用法、核心配置... 目录一、前置条件二、基本用法1. 在方法上添加注解2. 在类上添加注解三、核心配置参数1. 传播行为(