android基础知识总结

2024最新Android知识体系总结(全方面覆盖Android知识结构,面试&进阶) Android组件内核篇Activity与调用栈Fragment的管理与内核Service 内核原理组件间通信方案数据持久化篇Android文件系统轻量级Kv持久化嵌入式Sqlite数据库设计思想与代码优化篇数据结构算法设计模式六大原则程序性能优化篇OOM问题原理解析ANR问题解析Crash监控方案启动速度与执行效率优化项目实战布局检测与优化内存优化耗电优化网络传输与数据存储优化APK大小优化屏幕适配开发效率优化篇。 阅读详情

android基础知识总结(一)

1.android体系结构

这里写图片描述

2.android目录结构

这里写图片描述
这里写图片描述

3.android四大组件

3-1.activity

1.定义: 活动,界面应用的基本组成单元
2.生命周期:
onCreate:activity第一次创建时回调的方法(当启动新的activity的时候被调用);
onStart:可见不可交互(当activity对用户即将可见时调用);
onRestart:重新调用Activity(重新启动activity时调用(此方法是重启留在缓存中的activity));
onResume:可见又可交互(当activity界面可与用户交互时调用);
onPause:暂停状态,可见不可交互(当系统要启动一个其他的activity时调用,用于保存当前数据);
onStop:停止状态,不可见也不可交互(该activity已经不可见时调用);
onDestory:销毁(当activity被finish或手机内存不足被销毁的时候调用);
3.所有的activity必须在androidManifest中注册

3-2.Content Provider(内容提供者)

1.定义:是Android系统的四大组件之一,主要用于在不同的应用程序之间实现数据共享;如果想访问其他程序共享的数据,需要借助ContentResolver类来实现;
2.在AndroidManifest注册:
<provider
android:name=".MyContentProvider"
android:authorities="com.lanou.day17content"
android:exported="true"/>

3-3.Service(服务)

Service是Android系统的四大组件之一,只能在后台运行,并且可以和其他组件进行交互;
Service的应用场景非常广泛,比如后台播放,后台下载,后台定位等;
启动一个服务:
Intent intent = new Intent(Context, MyService.class);
startService(intent);

3-4.BroadcastReceiver(广播)

1.广播类型:标准/有序
标准:一种完全异步执行的广播,在广播发出之后,所有的广播接收器几乎会在同一时刻接受到这条广播消息;不能发送数据;不可终止;
有序:一种同步执行的广播,在广播发出之后,同一时刻只会有一个广播接收器能够收到这条广播消息;可终止;可传递数据;有序广播可能被截断;
2.注册方式:
动态广播接收器(在代码中注册广播称为动态注册);
静态广播接收器(在配置文件中注册广播称为静态注册(androidManifest中注册) - 常驻性);
3.消息推送平台:jpush:
https://www.jpush.cn/
(写得不太仔细,勿怪!)

4.android五大布局

4-0.布局中的常用属性

gravity
padding

4-1.LinearLayout(线性布局)

这里写图片描述
其内部控件都是按照线性模式排列的;
属性:
水平方向 android:orientation="horizontal"
垂直方向 android:orientation="vertical"
权重 android:layout_weight (在使用此属性的时候,对应的宽或者高必须是0)

4-2.RelativeLayout(相对布局)

这里写图片描述
其内部控件都是相对于其他控件或者布局排列的;
属性:
这里写图片描述

4-3.TableLayout(表格布局)

这里写图片描述
其内部控件都是按照表格模式排列的;
继承于LinearLayout,所以此布局可以使用LinearLayout中的layout_weight属性;
被TableRow包裹的控件为一行;
属性:
android:stretchColumns 设置可伸展的列。该列可以向行方向伸展,最多可占据一整行。
android:shrinkColumns 设置可收缩的列。当该列子控件的内容太多,
已经挤满所在行,那么该子控件的内容将往列方向显示。android:collapseColumns 设置要隐藏的列。
android:layout_column 指定该单元格在第几列显示。
android:layout_span 指定该单元格占据的列数(未指定时,为1);

4-4.FrameLayout(帧布局)

这里写图片描述
其内控件先放入布局中的显示在下面,后放入的显示在上面;

4-5.AbsoluteLayout(不推荐使用了)
4-6.五大布局之外一些特殊的布局

1.include:布局重用,优化代码;
2.merge:与include嵌套使用,优化代码,减少层级关系;
3.viewStub:在需要加载时加载;
4.ScrollView(屏幕滚动):
(1)默认垂直方向;
(2)水平方向(HorizontalScrollView);
(3)在布局中使用,有且只有一个子类布局;
(4)会与部分控件(带滑动效果的空间)冲突:如listview和gridview,可以设置listView和gridView禁止滑动,但会占内存;
(嗯,先写这么多了~)

已经过了字节试用期,才敢出来分享,Android社招面经分享! 已经过了字节的试用期啦,这才敢发贴出来跟大伙儿做一个分享。因为当时拿到offer的时候是真的担心自己过不了试用期,现在总算是安心了,但倒也不是因为过了试用期觉得万事大吉了,这几个月相处下来发现领导和同事是真的都非常的nice,很期待有兴趣的小伙伴都来字节跟我做同事哦~ 我的情况的话是2019年湖南某双非本科计算机专业毕业的(这个条件应该能给不少小伙伴增添信息吧),毕业后就一直在长沙的一家中型互联网公司做Android开发相关工作,说到这一点“中型公司”,福利薪资比不上大厂,规矩什么的倒是跟大厂学全乎了,99 阅读详情

相关推荐

Android知识总结

Android应用开发是指使用Java或Kotlin等编程语言和Android Studio等开发工具来创建在Android操作系统上运行的应用程序的过程。这些应用程序可以在Android设备上或通过Google Play商店发布供其他用户下载和使用。开发人员可以使用各种API和库来访问设备硬件和系统功能,如摄像头、传感器、存储、网络连接等,以构建各种类型的应用程序,包括游戏、社交媒体、工具、商务应用等。

weixin_63526054的博客 1543

Android之 基础知识总结第一篇

常见问答总结

qq_29848853的博客 3232

安卓测试开发 - 安卓开发基础 - Android UI 基础知识总结1 布局的结构及内外边距

最近做安卓测试总结下安卓开发的相关知识已被后续更好的负能量测试及白盒测试预备

lw的博客 1247

Android基础学习整理知识点

自学Android

weixin_42414964的博客 1万+

NotebookLM平替实测:用Open Notebook+Ollama零成本搭建私有AI知识库

本文提供了一份详细的实战指南,教你如何利用Open Notebook与Ollama,在本地零成本搭建一个功能强大且完全私有的AI知识库。通过Docker容器化部署,实现数据绝对安全、模型自由选择与离线运行,是NotebookLM等云端工具的绝佳平替方案,尤其适合注重数据隐私的教育工作者、研究者及小团队。

weixin_29052717的博客 513

docker 安装oracle

本文介绍了使用Docker部署Oracle数据库的实践指南。主要内容包括:常用Oracle镜像的阿里云和华为云拉取地址,11g/12c/19c等不同版本的启动命令示例,以及连接数据库的基本信息。实战部分详细演示了Oracle 11g的安装过程,包括镜像拉取、容器启动、密码修改和数据库连接步骤,并通过Sql Developer和命令行两种方式创建用户。最后提到数据持久化的重要性,建议将数据库文件挂载到宿主机目录以防止容器删除导致数据丢失。文章提供了完整的操作命令和截图说明,适合需要快速部署Oracle测试环境

weixin_39766667的博客 373

Unity第三方Android SDK接入所需的安卓基础知识

https://www.shuzhiduo.com/A/amd0yvvWzg/ 安卓使用ANT来对应用打包,一般会经过以下几个步骤: 1.用aapt命令生成R.java文件 2.用aidl命令生成相应java文件 3.用javac命令编译java源文件生成class文件 4.用dx.bat将class文件转换成classes.dex文件 5.用aapt命令生成资源包文件resources.ap_ 6.用apkbuilder.bat打包资源和classes.dex文件,生成unsigned.apk 7.用ja

陈云佳的专栏 2328

基于python的超市历年数据可视化分析

包含:Order_Date Sales Quantity Profit year month。所有这些物品都在美国4个地区的49个州销售,来着793位客户的5009个订单。9994行,21列数据。

m0_74872863的博客 535

安卓基础知识总结

安卓基础知识总结1、 Android的四大组件是哪些,它们的作用? Activity:Activity是Android程序与用户交互的窗口,是Android构造块中最基本的一种,它需要为保持各界面的状态,做很多持久化的事情,妥善管理生命周期以及一些跳转逻辑 service:后台服务于Activity,封装有一个完整的功能逻辑实现,接受上层指令,完成相关的事物,定义好需要接受的In

DancingWing 980

Obsidian的Git插件设置配置全流程 -- 简单的电脑端多平台同步方案及常见问题

Git同步obsidian的保姆级教程和常见问题

weixin_44370439的博客 1万+

ColorOS13系统账户锁与密码锁破解全指南:从恢复模式到激活绕过

本文针对ColorOS13系统用户,详细解析了忘记锁屏密码(数字/图案锁)和遭遇OPPO账户锁(激活锁)的合法解决方案。核心是通过官方恢复模式进行格式化操作清除锁屏密码,并强调账户锁需通过密码找回或官方售后等正规途径解除。文章旨在帮助设备合法所有者恢复使用权,并提供了安全操作指南与数据备份建议。

weixin_28304023的博客 965

安卓基础知识总结(超详细)(车载方向)

本文皆在总结安卓基础学习过程中的基础知识、易有困惑。

m0_61945436的博客 2009

YOLOv8魔改网络后训练全零?别慌,关掉AMP混合精度训练试试

本文探讨了YOLOv8魔改网络后训练出现全零指标的问题,指出AMP混合精度训练与自定义网络结构的不兼容性。通过分析梯度消失现象和AMP工作原理,提供了关闭AMP、调整学习率等解决方案,并建议预防性开发实践以避免类似问题。

weixin_28338005的博客 321

Android基础知识(一)初识安卓&Android Studio

中间部分为代码的编辑区域,而右边则是安卓模拟器的区域——大家根据自己PC的配置及布局要求选择合理的类型安装配置即可。4.Android Studio是一款主流的安卓开发工具,基于JIdea修改(JIdea是很多开发工具的前身),必须先复习好Java语言基础。(基于Java语言扩展)——且裁掉了一部分Google的服务。MIUI,EMUI等操作系统,是。2.Kotlin和Java都是。3.安卓的版本更迭速度非常快。1.Linux相当于是地基。

软工科班,擅长Matlab、C++、微信小程序开发 1543

英特尔® NUC迷你电脑实现无人值守自动开机配置指南

本文详细介绍了如何配置英特尔® NUC迷你电脑实现无人值守自动开机功能。从BIOS设置到操作系统级配置,涵盖硬件兼容性确认、电源恢复功能设置及常见问题解决,帮助用户轻松实现设备断电后自动恢复运行,适用于家庭服务器、企业终端等多种场景。

weixin_42638178的博客 472

2024-12月js逆向案例-sensor-data之vmp字段之akamai_2/3.0-(下)

akamai2/3的vmp字段逆向分析

十一姐的博客 3145

Android学习:安卓的基础知识

安卓的四层架构 安卓系统有着四层架构,分别为: 应用层 Applications 应用框架层 Application Framework 类库层 系统内核层 Linux Kernel 应用层 Applications 应用层由运行在Android设备上的所有应用构成,包括预装的系统应用和自己安装的第三方应用。 所有安装在手机上的应用程序都是属于这一层的,比如我们日常安装到手机上面的软件,又或者是我们自己开发的程序都是属于这一层。 应用框架层 Application Framework 主要提供了构建应

小关同学的博客 902

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

android ble蓝牙接收不到数据_安卓蓝牙开发基础知识

蓝牙4.0分为标准蓝牙和低功耗蓝牙(BLE),标准蓝牙就是手机上用的那种,低功耗蓝牙由于其具有最大化的待机时间、快速连接和低峰值的发送和接收特性,被广泛用于智能手表、智能手环等可穿戴设备上。在安卓4.3之前,安卓平台上的BLE开发相当难搞,好在谷歌在4.3之后发布了官方的API。在安卓5.0之后又引入了新的API,原来的API已经被废弃。在新的系统里采用旧API开发的APP仍可使用,但采用新API...

weixin_30873127的博客 1432

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Android快速入门 基础知识,系统架构(快速开发第一个安卓应用程序)

尤其是非计算机专业的同学,面试官一上来肯定是问你基础,要是基础表现不好很容易被扣上基础不扎实的帽子,常见的就那些,只要你平时认真思考过基本上面试是没太大问题的。,尤其是非计算机专业的同学,面试官一上来肯定是问你基础,要是基础表现不好很容易被扣上基础不扎实的帽子,常见的就那些,只要你平时认真思考过基本上面试是没太大问题的。,全部都是精华中的精华,我能面试到现在2-2资深开发人员跟我整理的这本Android核心知识点有密不可分的关系,在这里本着共赢的心态分享给各位朋友。

m0_60388292的博客 1504

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Android基础知识整理一

所以onCreate的参数Bundle savedInstanceState一般情况下是null 如果活动在被系统回收之前有通过onSaveInstanceState()这个方法保存数据,这个参数会带有之前保存的全部数据(键值对形式)设计这个小需求主要是了解安卓的开发流程以及一些布局中的例如flowlayout和button等样式的深入理解。Intent是Android程序中各组件之间进行交互的一种重要方式,它不仅可以指明当前组件想要执行 的动作,还可以在不同组件之间传递数据。用于项目实际依赖项的解析。

weixin_52875110的博客 1140

Android快速入门 基础知识,系统架构(快速开发第一个安卓应用程序),最新Android面试合集

Android学习是一条漫长的道路,我们要学习的东西不仅仅只有表面的 技术,还要深入底层,弄明白下面的 原理,只有这样,我们才能够提高自己的竞争力,在当今这个竞争激烈的世界里立足。人生不可能一帆风顺,有高峰自然有低谷,要相信,那些打不倒我们的,终将使我们更强大,要做自己的摆渡人。资源持续更新中,欢迎大家一起学习和探讨。《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!**

2401_84149496的博客 1285

Android面试知识点总结(2)——安卓基础知识篇

在准备安卓的实习面试,自感自己的安卓基础知识掌握的很不好。偶然在微信上看到一个安卓面试知识点总结的文章,虽然只有问题没有答案,但是还是觉得很受用,于是花点时间把所有的问题都回答出来,然后贴在这里为大家服务。

sysu_strange的博客 1122

安卓(android)开发应该怎么学?需要哪些基础知识?

随着智能手机的流行,现在很多大大小小的开发商都需要在手机上具备客户端,这里是一片强大的吸金磁场,那么很多想学习android的朋友,都会有个疑问,那就是:安卓(android)应该怎么学,需要哪些基础知识?      下面是我根据自己和周围朋友的一些经验,总结出来的几点,希望对想学安卓(Android)开发的朋友有所帮助。     1、安卓(Android)开发的分类:       

ddwendy的专栏 6649

安卓JNI基础知识

JNI 是java原生接口(Java Native Interface),它定义了 Android 从受管理代码(使用 Java 或 Kotlin 编程语言编写)编译的字节码与原生代码(使用 C/C++ 编写)进行交互的方法,也就是安卓通过JNI技术提供Java调用C/C++或者C/C++调用Java的能力。JNI 不依赖于供应商,支持从动态共享库加载代码,虽然有时较为繁琐,但效率较高。

Watom_663的博客 1259

安卓基础知识

基础知识 基础知识主要包括以下几点: Java 基础 并发/异步 安卓基础 设计模式 常见的数据结构算法 网络基础 1. Java 基础 虽然现在 Kotlin 挺火的,但我面了几家大公司都没问 Kotlin,问了很多 Java 。所以一定要保证当前知识掌握熟练了,再学习新知识,不然真成了狗熊掰苞米。 Java 基础主要包括以下知识...

小老鼠的博客 192

安卓 java 基础知识_android基础知识

要绘图,首先得调整画笔,待画笔调整好之后,再将图像绘制到画布上,这样才可以显示在手机屏幕上。Android 中的画笔是 Paint类,Paint 中包含了很多方法对其属性进行设置,主要方法如下:setAntiAlias: 设置画笔的锯齿效果。setColor: 设置画笔颜色setARGB: 设置画笔的a,r,p,g值。setAlpha: 设置Alpha值setTextSize: 设置字体尺寸。...

weixin_29952601的博客 211
下一篇: GreenDao的使用
F_
F_
博客等级 码龄11年 2粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值