自学成为android framework工程师需要准备哪些装备-千里马车载车机系统开发学习

news2024/11/20 1:41:26

背景

hi,粉丝朋友们:
大家好!经常有很多学员买课同学都会问到需要准备哪些装备,我也回答了很多学员了,今天就搞一篇文章来统一说明一下,告诉一下大家如果你想从一个framework新手变成一个framework开发的高手需要准备好哪些装备。

基础设备

在开始学习framework阶段,这个时候的你还处于对framework的全新探索期,你对framework也还不是很熟悉,这个时期必备装备有如下:

1、必备硬件电脑(不要用苹果相关电脑)

在这里插入图片描述

这个电脑是最重要的,因为你如果没有一个不错的电脑那么其实,做framework来还是很麻烦,因为framework开发需要你频繁编译系统,频繁修改,但是编译系统可不是编译应用那么简单,相对来说非常耗费资源。具体需要什么配置呢?这里给出一个最基本的配置:

cpu:最少4核以上
建议intel cpu(amd cpu也可以),一般都可以满足,越多核越好,这个是影响你编译速度关键,差异也巨大,比如学员里面编译8.1的老代码为例,有的编译源码10小时,有的16分钟

内存:最少16G以上
目前高版本的aosp版本编译都是耗费内存巨大的,所以这里的建议内存最少要有16G,内存不足,那么导致的结果那就是,经常编译源码时候无故退出,停止,oom等,这个时候最简单方式加内存条,不加那就只能减少make的线程,比如make -j 1,单线程编译让编译过那块的耗内存任务

SSD/硬盘500G以上
这个部分容量最少500G,不过这个只能保证你开发一套代码够了,你要是想搞多套aosp版本的开发,那么肯定是不够的,所以硬盘容量给的越多越好。不然你就只能保留一套代码。
这里的建议大家用ssd,不要用机械硬盘,因为机械硬盘比较慢,硬盘速度也是影响编译时间的关键因素

如果不满足以上配置建议可以考虑换电脑了,省钱的话可以考虑买个二手服务器cpu至强系列的,性价比最佳满足aosp系统开发

2、必备的ubuntu操作系统

要求:
Ubuntu 操作系统 64位桌面版本,如下面带了desktop和amd64标识的镜像
在这里插入图片描述
版本要求:
最少要求16.04版本及以上版本,我这边自己使用的20.04版本

安装方式选择

1 直接电脑只有Ubuntu系统 最佳选择
2 电脑采用双系统方式,windows系统和Ubuntu系统分别安装不同硬盘分区方式 (和直接安装没啥区别,不过就是启动时候选择不一样)
3 windows电脑 + VMware安Ubuntu方式 (速度会慢一些,适合想和windows同时用的情况)

这个framework学习初中期,可以不需要开发板或者其他手机设备,这个期间自己编译系统可以直接模拟器emulator运行,看到自己运行的模拟器,这个就是为啥要Ubuntu的桌面版本

进价设备

经过上面的framework学习阶段后,到了中后期你就可以准备相关的硬件终端设备来运行你编译的系统了,这个具体终端选择的话我这边也给出一些建议:

在这里插入图片描述

为啥要有实体设备呢?

1、为了让自己修改系统自己使用,增加成就感,提高兴趣,比如你可以为你的妹纸做个系统表白啥的,比如一开机就是她的的开机动画。。。。

2、最重要是因为一些模块不方便用模拟器了,比如触摸,SurfaceFlinger,啥的和硬件有些耦合的东西

真实的硬件设备有以下几个特点对比

1、开发板,比如市场经典的RK系列,全志啥的(预算价钱1000左右)
优点:就是不担心变砖,还可以学嵌入式
缺点:就是aosp版本更新是个麻烦事,不一定是最新aosp

2、国内二手手机,比如小米等,具体是否支持得自己去官网看(预算:100-300)
(搭建编译刷机参考网页:https://blog.csdn.net/learnframework/article/details/128438325)

优点:特别适合framework开发,价格便宜,而且经常体验最新的aosp系统,因为lineageos会经常更新最新aosp
缺点:可能涉及解锁等步骤每个手机厂商不一样,要多试试

3、二手pixel 咸鱼一般可以买到,越新的价格越贵(预算:200-1000)

搭建编译刷机参考网页:https://blog.csdn.net/learnframework/article/details/125269456
优点:可以直接aosp代码就支持的,官方原生的aosp系统
缺点:google不会更新老版本的pixel的aosp版本,即买的pixel如果太老会没有新版本aosp,得买新的pixel才可以
新的pixel价格过贵

马哥装备如下:
在这里插入图片描述

更多framework干货获取相关可以 点击这里 https://mp.weixin.qq.com/s/Qv8zjgQ0CkalKmvi8tMGaw
视频:https://www.bilibili.com/video/BV1ah411d7Y3
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1263723.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微服务--04--SpringCloudGateway 网关

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1.网关路由1.1 认识网关在SpringCloud当中,提供了两种网关实现方案: 1.2.快速入门1.3.路由过滤 2.网关登录校验2.1.鉴权思路分析2.2.网关过滤…

vue+echarts实现依赖关系无向网络拓扑结图节点折叠展开策略

目录 引言 一、设计 1. 树状图(不方便呈现节点之间的关系,次要考虑) 2. 力引导依赖关系图 二、力引导关系图 三、如何实现节点的Open Or Fold 1. 设计逻辑 节点展开细节 节点收缩细节 代码实现 四、结果呈现 五、完整代码 引言 我…

使用Kafka、Flink、Druid构建实时数据系统架构

1. 背景 对于很多数据团队来说,要满足实时需求并不容易。为什么?因为作流程(数据采集、预处理、分析、结果保存)涉及大量等待。等待数据发送到 ETL 工具,等待数据批量处理,等待数据加载到数据仓库中&#…

数据库的增删查改(CRUD)基础版

CRUD: create增加、retrieve查询、update更新、delete删除 注意一点:MySQL对大小写是不敏感的 目录 新增(create) 全列插入 指定列插入 多行插入 查询(Retrieve) 列查询 全列查询 指定列查询 表达式查询 …

【蓝桥杯 LCA 差分】 砍树

题目分析: 这道题还是比较裸的一道书上差分的题目了 对于每一对标记点(x,y) 他们之间的路径就是 x − > L C A ( x , y ) − > y x->LCA(x,y)->y x−>LCA(x,y)−>y 这条路径上的每一条边都要经过。 那么对于一条边,什么时候砍掉这条…

网工内推 | 外企网工,五险一金,弹性工作,最高30k*14薪

01 金蝶软件(中国)有限公司 招聘岗位:网络工程师 职责描述: 1、合理规划公司网络,保障网络架构的合理性、可靠性及前瞻性; 2、负责公司网络运维,处理日常运维事件,保障网络的稳定可…

Leetcode算法系列| 3. 无重复字符的最长子串

目录 1.题目2.题解C# 解法一:滑动窗口算法C# 解法二:索引寻找Java 解法一:滑动窗口算法Java 解法二:遍历字符串 1.题目 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例1: 输入: s "ab…

springboot中4级配置文件优先级

springboot中4级配置文件优先级

C++STL库常用详解与原理

CSTL库 学习方法&#xff1a;使用STL的三个境界&#xff1a;能用&#xff0c;明理&#xff0c;能扩展。 常用库 库名称所需头文件数据结构string#include<string>串vector#include<vector>动态数组list#include<list>带头双向循环链表queue#include<queu…

双馈风机频率二次跌落,永磁风机一次调频火电水电光伏储能直流一次调频,虚拟惯性下垂控制,虚拟同步机VSG控制,二次调频也可继续深入研究

双馈风机(永磁同步风机)虚拟惯性控制下垂控制参与系统一次调频的Matlab/Simulink模型&#xff0c;调频结束后转速回复&#xff0c;造成频率二次跌落SFD。 系统为三机九节点模型&#xff08;可更换为四机两区域&#xff0c;十机39节点&#xff0c;IEEE39节点&#xff0c;IEEE11…

WIN10 x86环境部署ARM虚拟机(银河麒麟)

我们经常使用的是x86架构的cpu&#xff0c;而对于不同cpu架构的arm架构的操作系统&#xff0c;我们可以通过QEMU模拟器来进行模拟一个arm环境 1、部署前的准备 arm的镜像&#xff1a; 以此镜像为例&#xff1a;Kylin-Server-10-SP2-aarch64-Release-Build09-20210524.iso QE…

Codeforces Round #911 (Div. 2)

A.Cover in Water 题意&#xff1a; 有一个 1 n 1 \times n 1n的水池&#xff0c;里面有些格子可以加水&#xff0c;有些格子是被堵上的&#xff0c;你可以进行以下两种操作&#xff1a; 1.往一个空的格子里加水 2.移除一个有水的格子中的水&#xff0c;并将这些水添加到另…

智能优化算法应用:基于混合蛙跳算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于混合蛙跳算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于混合蛙跳算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.混合蛙跳算法4.实验参数设定5.算法结果6.参考…

Selenium+Python做web端自动化测试框架与实例详解教程

最近受到万点暴击&#xff0c;由于公司业务出现问题&#xff0c;工作任务没那么繁重&#xff0c;有时间摸索seleniumpython自动化测试&#xff0c;结合网上查到的资料自己编写出适合web自动化测试的框架&#xff0c;由于本人也是刚刚开始学习python&#xff0c;这套自动化框架目…

Roll-A-Ball 游戏

Roll-A-Ball 游戏 1&#xff09;学习资料 b站视频教程&#xff1a;https://www.bilibili.com/video/BV18W411671S/文档&#xff1a; * Roll-A-Ball 教程&#xff08;一)&#xff0c; * Roll-A-Ball 教程&#xff08;二)线上体验roll-a-ball成品 * http://www-personal.umich.e…

从裸机启动开始运行一个C++程序(十五)

前序文章请看&#xff1a; 从裸机启动开始运行一个C程序&#xff08;十四&#xff09; 从裸机启动开始运行一个C程序&#xff08;十三&#xff09; 从裸机启动开始运行一个C程序&#xff08;十二&#xff09; 从裸机启动开始运行一个C程序&#xff08;十一&#xff09; 从裸机启…

金字塔原理 读书笔记

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言第1篇 表达的逻辑第1章 为什么要用金字塔结构归类分组&#xff0c;将思想组织成金字塔自上而下表达&#xff0c;结论先行自下而上思考&#xff0c;总结概括 第2…

物理机虚拟化关键技术介绍

☞ ░ 前往老猿Python博客 ░ https://blog.csdn.net/LaoYuanPython 一、虚拟化原理 将多个“同质或异构”资源&#xff08;包括但不限于芯片、硬件、软件、应用&#xff09;形成一个资源池&#xff0c;对资源池进行抽象、解耦形成独立的“虚拟资源”&#xff0c;并实现虚拟资…

【链接MySQL】教你用VBA链接MySQL数据库

hi&#xff0c;大家好呀&#xff01; 之前呢&#xff0c;给大家分享过一个自制链接表管理器的文章&#xff0c;文章中有链接SQL Server数据库的代码&#xff0c;大家对这一段代码比较有兴趣&#xff0c;既然大家有兴趣&#xff0c;那我们今天就来讲一下链接数据库的代码。 这…