《第一行代码第三版》,350道Android面试真题分享

Android的思维导图如下:

Kotlin的思维导图如下:

内容学习笔记

我的第一行Android代码(一)

1.1.Android简介

  • 1.1.1.Android系统架构

自下而上:Linux内核层(为硬件提供底层驱动。eg:显示驱动、音频驱动等)、系统运行时层(C/C++库和android运行时库,前者有Sqlite和OpenGL等,后者有ART虚拟机和核心库等)、应用框架层(系统API,譬如ActivityManager、WindowManager、ContentProvider)、应用层(应用程序,譬如联系人、短信、自己开发的app等)。

2020.3月逐渐推出Android 11版本。5.0使用ART虚拟机代替DVM虚拟机,提出Material Design来优化界面设计,5.0以上占比超过85%。

  • 1.1.2.Android应用开发特色

(1)四大组件 :Activity、Service、BroadcastReceiver、ContentProvider。Activity是应用程序显示的界面;Service后台默默运行,即使用户退出app;BroadcastReceiver使得app接受各处广播消息,也可以向外发出消息;ContentProvider可以使得app之间的数据共享。譬如:读取联系人;
(2)丰富系统控件: Android界面系统控件和自定义控件。
(3)SQLite数据库: 轻量级、运算速度极快的嵌入式关系型数据库。支持SQL语法和系统API。
(4)强大多媒体: 音乐、视频、录音、拍照等。

1.2.搭建开发环境

JDK(java运行环境、工具集合、基础类库)+SDK(android开发工具包)+Android studio

1.3.创建Android项目

  • 1.3.1.文件结构解析

image

1.build:编译自动生成的文件
2.gradle:gradle wrapper配置文件
3…gitignore:哪些文件排除在版本控制之外
4.Build.gradle:项目全局gradle脚本
5.Grale.properties:全局gradle配置文件,配置相关属性
6.gradlew和gradlew.bat:命令行界面执行gradle命令
7.Local.properties:本机SDK路径
8.Setting.gradle:制定项目所有引入的模块,目前只有app模块
9.app目录:项目代码、资源
9.1.build:系统自动生成文件
9.2.libs:第三方jar包
9.3.androiTest:Android test自动化测试用例
9.4.Java:所有java代码放置地方,MainActivity.java
9.5.res:图片、布局、字符串等
9.6.AndroidManifest.xml:项目配置文件,譬如四大组件的定义
9.7.Test:unit test自动化测试用例
9.8.Build.gradle:app模块的gradle构建样本,项目构建相关配置
9.9.Progurad-reles.pro:执行项目混淆规则
10.res目录:图片、布局、字符串等

10.1.drawable:图片
10.2.Mipmap:图标(不同后缀更好兼容设备)
10.3.Vaules:字符串、样式、颜色等。以下为values的内容

通过R.string.app_name或者@string/app_name获得该字符串的引用。

  • 1.3.2.详解build.gradle文件
    最外层目录的build.gradle

//Gradle是基于Groovy领域特定语言(DSL)来进行项目设置的。
buildscript {
ext.kotlin_version = ‘1.3.71’
//闭包声明了两个代码仓库
repositories {
google() //google扩展依赖库
jcenter()//第三方开源库

}
//使用classpath声明了两个插件
dependencies {
//Gradle插件的目的是构建android项目,与AS版本一致
classpath ‘com.android.tools.build:gradle:3.6.3’
//Kotlin插件
classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version”
}
}

allprojects {
repositories {

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级安卓工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
img

学习福利

【Android 详细知识点思维脑图(技能树)】

其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。

虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。

这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。

由于篇幅有限,这里以图片的形式给大家展示一小部分。

详细整理在GitHub可以见;

Android架构视频+BAT面试专题PDF+学习笔记

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

bs.csdn.net/topics/618156601)**

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

  • 15
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值