搭建 Android Automotive 开发环境
Posted bug樱樱
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建 Android Automotive 开发环境相关的知识,希望对你有一定的参考价值。
前言
android Automotive 开发环境的搭建也蛮麻烦的,其实好的开发环境第一次的搭建都不是那么简单,可能你看起来是挺简单的 但是确实容易出错。
一、搭建流程
安装OpenJDK8
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk
切换方法
sudo update-alternatives --config java
sudo update-alternatives --config javac
如果是下载的安装包,不是apt-get install,可以这样配置(Google因为license的问题放弃对oracle编译环境的使用,统一用OpenJDK,以下仅供过程演示)
1. 配置环境变量,在文件etc/profile中添加:
set java environmentexport JAVA\\_HOME=/usr/local/jdk1.8.0\\_91
export JRE\\_HOME\\=$JAVA\\_HOME/jre
export CLASSPATH\\=.:$JAVA\\_HOME/lib:$JRE\\_HOME/lib
export PATH\\=$JAVA\\_HOME/bin:$PATH
2. 安装
sudo update\\-alternatives --install /usr/bin/java java /usr/local/jdk1.8.0\\_91/bin/java 300
sudo update\\-alternatives --install /usr/bin/javac javac /usr/local/jdk1.8.0\\_91/bin/javac 300
也可以remove
sudo update-alternatives --remove java /usr/local/jdk1.8.0\\_91/bin/java
sudo update\\-alternatives --remove javac /usr/local/jdk1.8.0\\_91/bin/javac
后文
关于Android Automotive 的文本资料我都有整理需要的小伙伴可以扫描二维码领取!
Android Framework学习指南,全家桶学习资料(含 Framework 开发揭秘、内核解析及高频面试真题)
Framework 即应用框架层,是 Android 架构 的关键组成部分,为我们开发应用程序提供了非常多的API,使得开发者通过简单调用API即可开始APP的开发,而不用详细了解 Android 系统纷繁复杂的底层知识。
为帮助大家了解 Framework 在整个 Android 架构中的功能与构造,系统的学习和掌握Android framework,这里特意联合了阿里P7架构师和谷歌技术团队共同整理了一份 Android framework 全家桶学习资料。
内容概要:《Android Framework 开发揭秘》;Android Framework 高频面试题总结;Android Framework 精编内核解析;Android 11.0 最新 Framework解析。
内容特点:条理清晰,含图像化表示更加易懂。
由于文章内容比较多,篇幅有限,资料已经被整理成了PDF文档,有需要《Android Framework进阶学习指南》完整文档的可扫描下方卡片免费获取~
《Android Framework 开发揭秘》
目录
第一章 系统启动流程分析
● 第一节 Android启动概览
● 第二节 init.rc解析
● 第三节 Zygote
● 面试题
第二章 Binder解析
● 第一节 宏观认识Binder
● 第二节 binder的jni方法注册
● 第三节 binder驱动
● 第四节 数据结构
● 第五节 启动service_manager
● 第六节 获取service_manager
● 第七节 addService流程
● 第八节 Binder面试题全解析
第三章 Handler解析
● 第一节 源码分析
● 第二节 难点问题
● 第三节 Handler常见面试题
第四章 AMS解析
● 第一节 引言
● 第二节 Android架构
● 第三节 通信方式
● 第四节 系统启动系列
● 第五节 AMS
● 第六节 AMS面试题解析
第五章 WMS解析
● 第一节Activity与Window相关概念
● 第二节 Android窗口管理服务WindowManagerService计算Activity窗口大
● 第三节Android窗口管理服务WindowManagerService对窗口的组织方式分析
● 第四节 Android窗口管理服务WindowManagerService对输入法窗口(Input
● 第五节 Android窗口管理服务WindowManagerService对壁纸窗口(Wallpap
● 第六节Android窗口管理服务WindowManagerService计算窗口Z轴位置的过程分析
● 第七节Android窗口管理服务WindowManagerService显示Activity组件的启
● 第八节Android窗口管理服务WindowManagerService切换Activity窗口(A
● 第九节 Android窗口管理服务WindowManagerService显示窗口动画的原理分析
第六章PKMS Android10.0 源码解读
● 第一节 前言 PKMS是什么东西
● 第二节 PKMS概述信息
● 第三节 PKMS角色位置
● 第四节 PKMS启动过程分析
● 第五节 APK的扫描
● 第六节 PMS之权限扫描
● 第七节 PackageManagerService大综合笔记
由于文章内容比较多,篇幅有限,资料已经被整理成了PDF文档,有需要《Android Framework进阶学习指南》完整文档的可扫描下方卡片免费获取~
《Android Framework 精编内核解析》
目录
第一章 深入解析Binder
● 第一节 Binder系列—开篇
● 第二节 Binder Driver初探
● 第三节 Binder Driver再探
● 第四节 Binder启动ServiceManager
● 第五节 获取ServiceManager
● 第六节 注册服务(addService)
● 第七节 获取服务(getService)
● 第八节 Framework层分析
● 第九节 如何使用Binder
● 第十节 如何使用AIDL
● 第十一节 Binder总结
● 第十二节 Binder面试题全解析
第二章 深入解析Handler消息机制
● 第一节 宏观理论分析与Message源码分析
● 第二节 MessageQueue的源码分析
● 第三节 Looper的源码分析
● 第四节 Handler的源码分析
● 第五节 Handler机制实现原理总结
● 第六节 Handler面试题全解析
第三章 Dalvik VM进程系统
● 第一节 Android系统启动-综述
● 第二节 Init篇
● 第三节 zygote篇
● 第四节 SystemServer上篇
● 第五节 SystemServer下篇
第四章 深入解析WMS
● 第一节 WMS概述
● 第二节 WMS的诞生
第五章 PackageMS启动
● 第一节 PackageMS相关框架类
● 第二节 PackageMS启动过程
第六章 AMS 面试专题
● 第一节 AMS
《Android 11.0最新 Framework 解析》
目录
第一章 系统启动
● 第一节 Android系统结构
● 第二节 Android是怎么启动的
● 第三节 Android 11.0系统启动之init进程
● 第四节 Android11.0系统启动之Zygote进程
● 第五节 Android 11.0 系统启动之SystemServer进程
● 第六节 Android 11.0 系统服务之ActivityMnagerService-AMS启动流程
● 第七节 Android11.0系统启动之Launcher(桌面)启动流程
● 第八节 Android11.0应用进程创建过程以及Zygote的fork流程
● 第九节 Android 11.0 PackageManagerService(一)工作原理及启动流程
● 第十节 Android 11.0 PackageManagerService-APK安装流程
第二章 日志系统篇
● 第一节 Android11.0 日志系统分析-logd、logcat 指令说明、分类和属性
第三章 Binder通信原理
● 第一节 Android11.0 Binder通信原理(一)Binder、HwBinder、VndBinder概要
● 第二节 Android11.0 Binder通信原理(二)-Binder入门篇
● 第三节 Android11.0 Binder通信原理(三)-ServiceManager篇
● 第四节 Android11.0 Binder通信原理(四)-Native-C\\C++实例分析
● 第五节 Android11.0 Binder通信原理(五)-Binder驱动分析
● 第六节 Android11.0 Binder通信原理(六)-Binder数据如何完成定向打击
● 第七节 Android11.0 Binder通信原理(七)-Framework binder示例
● 第八节 Android11.0 Binder通信原理(八)-Framework层分析
● 第九节 Android11.0 Binder通信原理(九)-AIDL Binder示例
● 第十节 Android11.0 Binder通信原理(十)-AIDL原理分析-Proxy-Stub设计模式
● 第十一节 Android11.0 Binder通信原理(十一)-Binder总结
第四章 HwBinder通信原理
● 第一节 HwBinder入门篇-Android10.0 HwBinder通信原理(一)
● 第二节 HIDL详解-Android10.0 HwBinder通信原理(二)
● 第三节 HIDL示例-C++服务创建Client验证-Android10.0 HwBinder通信原理(三)
● 第四节 HIDL示例-JAVA服务创建-Client验证-Android10.0 HwBinder通信原理(四)
● 第五节 HwServiceManager篇-Android10.0 HwBinder通信原理(五)
● 第六节 Native层HIDL服务的注册原理-Android10.0 HwBinder通信原理(六)
● 第七节 JAVA层HIDL服务的注册原理-Android10.0 HwBinder通信原理
● 第八节 HwBinder驱动篇-Android10.0 HwBinder通信原理
● 第九节 HwBinder原理总结-Android10.0 HwBinder通信原理
第五章 编译原理
● 第一节 编译系统入门篇-Android10.0编译系统
● 第二节 编译环境初始化-Android11.0编译系统
● 第三节 make编译过程-Android11.0编译系统(三)
● 第四节 Image打包流程-Android11.0编译系统(四)
● 第五节 Kati详解-Android11.0编译系统
● 第六节 Blueprint简介-Android11.0编译系统-
● 第七节 Blueprint代码详细分析-Android11.0编译系统
由于文章内容比较多,篇幅有限,资料已经被整理成了PDF文档,有需要《Android Framework进阶学习指南》完整文档的可扫描下方卡片免费获取~
《Android Framework 高频面试题总结》
目录
第一章 AMS、PMS
● 第一节 AMS概述
● 第二节 AMS的启动流程
● 第三节 AMS与进程启动
● 第四节 AMS家族
● 第五节 PMS前言
第二章 Activity 启动流程,App 启动流程
● 第一节 Activity的启动模式
● 第二节 什么是Zygote进程
● 第三节 Zygote进程的启动流程
● 第四节 SystemServer进程启动流程
● 第五节 启动服务
第三章 Binder 机制(IPC、AIDL 的使用)
● 第一节 什么是AIDL以及如何使用(★★★★)
● 第二节 AIDL的全称是什么?如何工作?能处理哪些类型的数据?(★★★)
● 第三节 Android的IPC通信方式,线程(进程间)通信机制有哪些
第四章 为什么使用 Parcelable,好处是什么?
● 第一节 实现机制
第五章 Android 图像显示相关流程,Vsync 信号等
由于文章内容比较多,篇幅有限,资料已经被整理成了PDF文档,有需要《Android Framework进阶学习指南》完整文档的可扫描下方卡片免费获取~
更多学习资料,加微信免费领取~
以上是关于搭建 Android Automotive 开发环境的主要内容,如果未能解决你的问题,请参考以下文章
Android Automotive开发之一《编译自己的SDK 》
Android Automotive开发之一《环境: JDK7&JDK8切换 》
Android 车机初体验:Auto,Automotive 傻傻分不清楚?
Android车载应用-Automotive和distractionOptimized