Android-Studio-教程:入门开发第一个程序,2024最新Android面试笔试

说明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML5a24778.PNG

这个区域是运行和调试相关的操作。

1、编译2中显示的模块

2、当前项目的模块列表

3、运行2中显示的模块

4、调试2中显示的模块

5、测试2中显示的模块代码覆盖率

6、调试安卓运行的进程

7、重新运行2中显示的模块

8、停止运行2中显示的模块

区域2介绍

说明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML5a94cd5.PNG

这个区域主要是和Android设备和虚拟机相关的操作。

1、虚拟设备管理。

2、同步工程的Gradle文件,一般在Gradle配置被修改的时候需要同步一下。

3 、项目结构,一些项目相关的属性配置。

4、Android SDK管理

5、Genymontion模拟器(需要装Genymontion插件,安装篇[模拟器安装]部分)

区域3介绍

说明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML5bde3b7.PNG

这个区域主要是工程文件资源等相关的操作。

1、展示项目中文件的组织方式,默认是以Android方式展示的,可选择“Project、Packages、Scratches、ProjectFiles、Problems…”等展示方式。平时用的最多的就Android和Project两种。

2、定位当前打开文件在工程目录中的位置。

3、关闭工程目录中所有的展开项。

4、额外的一些系统配置,点开后是一个弹出菜单:
image

Autoscroll to Source 和 Autoscroll from Source两个勾选起来后,Android Studio会自动定位当前编辑文件在工程中的位置,用起来会很爽。其他功能大家可以自己摸索摸索。

区域4介绍

说明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML5cee482.PNG

这个区域主要是用来编写代码和设计布局。

1、已打开的文件的Tab页。(在Tab页上按下Ctrl键 + 点击鼠标会出现一个弹出菜单会有惊喜哦!)

2、UI布局预览区域。

3、布局编辑模式切换,对于一些老鸟来说更喜欢通过Text来编辑布局,新手可以试试Design编辑布局,编辑后再切换到Text模式,对于学习Android布局设计很有帮助。

区域5介绍

这个区域大部分是用来查看一些输出信息的。

1、终端 - 喜欢命令行操作的伙伴不用额外启动终端了。

2、监控 - 可以查看应用的一些输出信息。

3、信息 - 工程编译的一些输出信息。

4、运行 - 应用运行后的一些相关信息。

5、TODO - 标有TOTO注释的列表。

6、事件 - 一些事件日志。

7、Gradle控制台,通过这个可以了解Gradle构建应用的时候一些输出信息。

Android Studio目录结构

说明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML6038007.PNG

1、Gradle编译系统,版本由wrapper指定

2、Android Studio IDE所需要的文件

3、应用相关文件的存放目录

4、编译后产生的相关文件

5、存放相关依赖库

6、代码存放目录

7、资源文件存放目录(包括:布局、图像、样式等等)

8、应用程序的基本信息清单,描述哪些个组件是存在的

9、git版本管理忽略文件,标记出哪些文件不用进入git库中

10、Android Studio的工程文件

11、模块的gradle相关配置

12、代码混淆规则配置

13、工程的gradle相关配置

14、gradle相关的全局属性设置

15、本地属性设置(key设置,android sdk位置等属性)

应用开发调试

说明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML60a7a4d.PNG

如上图1所示在需要调试的行号处点击设置断点,然后点击2所示的Debug按钮(或直接按下Shift+F9快捷键)开始调试。

如上图所示Android Studio下方出现了调试视图。

1、当前程序停留的代码行

2、调试相关的一些按钮

3、程序调用栈区,该区域显示了程序执行到断点处所调用过的所有方法,越下面的越早被调用。

4、局部变量观察区

5、用户自定义变量观察区

1、Step Over(F8) - 程序向下执行一行,如果当前行有方法调用,这个方法执行完毕返回,然后到下一行。

2、Step Into(F7) - 程序向下执行一行,如果当前行有用户自定义方法(非官方类库方法)调用,则进入该方法。

3、Force Step Into(Alt+Shift+F7) - 程序向下执行一行,如果当前行有方法调用,则进入该方法。

4、Step Out(Shift+F8) - 如果在调试的时候你进入了一个方法,并觉得该方法没有问题,你就可以使用Step Out跳出该方法,返回到该方法被调用处的下一行语句。值得注意的是,该方法已执行完毕。

5、Drop Frame - 点击该按钮后,你将返回到当前方法的调用处重新执行,并且所有上下文变量的值也回到那个时候。只要调用链中还有上级方法,可以跳到其中的任何一个方法。

6、Run to Cursor(Alt+F9) - 一直运行到光标所在的位置。

7、Resume Program(F9) - 一直运行程序直到碰到下一个断点。

8、View Backpoints(Ctrl + Shift +F8) - 查看你设置过的所有断点并可以设置断点的一些属性

9、Mute Backpoints - 选中后所有的断点别设置成无效状态。再次点击可以重新设置所有断点有效。

在点击了View Backpoints按钮后,会出现一个断点属性窗口,可以对断点进行一些更高级的设置。

说明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML6dbfefa.PNG

1、列出了所有程序中设置的断点

2、可以输入条件,在条件成立后断点才起作用(例如:在输入框中输入 i == 8),这种带条件断点在实际开发过程中非常有用。也可以通过右键点击断点来设置条件断点,如下图:

好了,到这里调试相关的功能都介绍完了。

应用打包签名

基础

一个 Android Studio 项目中,会存在多个 .gradle 文件。其中, project 目录下存在一个 build.gradle 文件和每一个 module 会存在一个 build.gradle 文件。

工程中的build.gradle

buildscript {
repositories {  
jcenter()   // 声明使用 maven 仓库
}
dependencies {  
// 依赖android提供的2.1.0-alpha5的gradle build
classpath ‘com.android.tools.build:gradle:2.1.0-alpha5’
}
}
// 为所有的工程的repositories配置为jcenters
allprojects {
repositories {
jcenter()
}
}

// 清楚工程的任务
task clean(type: Delete) {

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

深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

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

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
img

《设计思想解读开源框架》

第一章、 热修复设计

  • 第一节、 AOT/JIT & dexopt 与 dex2oat

  • 第二节、 热修复设计之 CLASS_ISPREVERIFIED 问题

  • 第三节、热修复设计之热修复原理

  • 第四节、Tinker 的集成与使用(自动补丁包生成)

    第二章、 插件化框架设计

  • 第一节、 Class 文件与 Dex 文件的结构解读

  • 第二节、 Android 资源加载机制详解

  • 第三节、 四大组件调用原理

  • 第四节、 so 文件加载机制

  • 第五节、 Android 系统服务实现原理

    第三章、 组件化框架设计

  • 第一节、阿里巴巴开源路由框——ARouter 原理分析

  • 第二节、APT 编译时期自动生成代码&动态类加载

  • 第三节、 Java SPI 机制

  • 第四节、 AOP&IOC

  • 第五节、 手写组件化架构

    第四章、图片加载框架

  • 第一节、图片加载框架选型

  • 第二节、Glide 原理分析

  • 第三节、手写图片加载框架实战

    第五章、网络访问框架设计

  • 第一节、网络通信必备基础

  • 第二节、OkHttp 源码解读

  • 第三节、Retrofit 源码解析

    第六章、 RXJava 响应式编程框架设计

  • 第一节、链式调用

  • 第二节、 扩展的观察者模式

  • 第三节、事件变换设计

  • 第四节、Scheduler 线程控制

    第七章、 IOC 架构设计

  • 第一节、 依赖注入与控制反转

  • 第二节、ButterKnife 原理上篇、中篇、下篇

  • 第三节、Dagger 架构设计核心解密

    第八章、 Android 架构组件 Jetpack

  • 第一节、 LiveData 原理

  • 第二节、 Navigation 如何解决 tabLayout 问题

  • 第三节、 ViewModel 如何感知 View 生命周期及内核原理

  • 第四节、 Room 架构方式方法

  • 第五节、 dataBinding 为什么能够支持 MVVM

  • 第六节、 WorkManager 内核揭秘

  • 第七节、 Lifecycles 生命周期


    本文包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

tabLayout 问题**

  • 第三节、 ViewModel 如何感知 View 生命周期及内核原理

  • 第四节、 Room 架构方式方法

  • 第五节、 dataBinding 为什么能够支持 MVVM

  • 第六节、 WorkManager 内核揭秘

  • 第七节、 Lifecycles 生命周期

    [外链图片转存中…(img-fOYd13v0-1711912564572)]
    本文包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…
    [外链图片转存中…(img-uTuWMCDD-1711912564572)]

本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值