Android
文章平均质量分 83
Misdirection_XG
与代码为伴
展开
-
轻轻松松Kotlin快速入门(二)
轻轻松松Kotlin快速入门(二)原创 2023-03-11 09:33:11 · 257 阅读 · 0 评论 -
Jetpack Compose有多好用 阿里大神都推荐
Jetpack Compose有多好用 阿里大神都推荐原创 2023-03-10 09:52:32 · 550 阅读 · 0 评论 -
这么详细的AndroidService生命周期解析你确定不看吗
这么详细的AndroidService生命周期解析你确定不看吗原创 2023-03-06 17:20:20 · 1898 阅读 · 0 评论 -
【Android】Flutter项目该如何选择状态管理?
Flutter从2018年底首次在谷歌开发者大会上亮相至今已3年多,其发展也算如火如荼。中小企业中大受欢迎,大厂也相继投入技术研究。但依然有不少开发者疑惑于为自己的项目要选择哪个状态管理框架,今天笔者将对社区内相对火热🔥的状态管理库()做一个技术分析和对比,帮助大家更好地为项目找到合适的状态管理库。除了上诉的几种方案,还有其他的库,如reduxfish_reduxRiverPod,这些库有的过于复杂,有的刚出不久,笔者调研过程中有留意但并没有用过,活跃度确实也没有上面方案多。原创 2023-02-23 11:53:42 · 652 阅读 · 0 评论 -
【性能优化】Android中比较常见的内存泄露
在上面的代码中,如果在执行 getInstance 方法的时候,传入的是activity的对象,那么该activity对象就没法被及时回收,导致内存泄漏,可以考虑传入ApplicationContext,或者把context放入到方法变量中。在上述代码中, info 是一个静态变量,但是它持有了 activity 的引用,由于静态变量的生命周期要比 activity的生命周期长,导致 activity 无法及时回收,造成内存泄漏。单例所导致的内存泄漏几乎是在android开发中最为常见的内存泄漏问题了。原创 2023-02-21 14:08:22 · 403 阅读 · 0 评论 -
使用Gradle插件上传组件到Maven之源码上传
如果想要成为架构师或想突破20~30K薪资范畴,那就不要局限在编码,业务,要会选型、扩展,提升编程思维。此外,良好的职业规划也很重要,学习的习惯很重要,但是最重要的还是要能持之以恒,任何不能坚持落实的计划都是空谈。如果你没有方向,这里给大家分享一套由阿里高级架构师编写的《Android八大模块进阶笔记》,帮大家将杂乱、零散、碎片化的知识进行体系化的整理,让大家系统而高效地掌握Android开发的各个知识点。原创 2023-02-17 15:41:40 · 584 阅读 · 0 评论 -
刚问世的ChatGPT聊天机器人如何带你把握蔚来Android车载面试
2023年初,一款名为的引起了科技圈的骚动。美国OpenAI公司2022年11月30日正式发布ChatGPT,上线仅5天,ChatGPT的注册用户数突破100万;今年1月末,ChatGPT的月活用户数破亿,就此成为史上用户数增长最快的消费者应用。原创 2023-02-15 15:01:07 · 2775 阅读 · 0 评论 -
【Android】从Flutter中的状态管理到Provider的使用
Flutter作为谷歌的移动UI框架,近今年的热度还是很高的。本人在实际项目中,发现flutter的体验还是不错的。当然体验良好的前提是对flutter的状态管理方式有比较深入的理解。而要理解flutter的状态管理方式,通过对flutter官方推荐的状态管理工具——Provider的学习,是一种相当不错的方法。这也是我写作这篇文章的原因。一来可以总结自己学到的知识,加深印象。二来是希望帮助更多的人用好Provider。由于本人水平有限,文章难免有错漏之处,希望大家多多批评指正。原创 2023-02-13 15:54:53 · 268 阅读 · 0 评论 -
Android 11 提高 App 冷启动速度 5% 以上
那么怎么进行性能优化呢?可以从以下几个方向出发启动优化UI渲染优化崩溃优化内存优化卡顿优化存储优化网络优化耗电优化多线程并发优化安装包优化这里给大家分享一份《Android性能优化-大厂实战全解析》,这份《Android性能优化-大厂实战全解析包括有:腾讯、字节、阿里、百度、网易、美团等一线互联网大厂的优化实战解析,更是附赠360°性能调优学习指南有需要的朋友们也可以下载下来随时查漏补缺。文末扫码100%免费领取!!资料获取文末扫码免费领取~原创 2023-02-10 11:42:25 · 649 阅读 · 0 评论 -
十年安卓开发大佬整理的最全Android面试题就放在这了.
大多数情况下,程序员的个人技能成长速度,远远大于公司规模或业务的成长速度。所以,跳槽成为了这个行业里最常见的一个词汇。实际上,跳槽的目的无非是为了涨薪或是职业发展,我也不例外。普通本科毕业后,进了一家互联网公司,这几年里不断在积累经验,最终选择跳到美团,涨薪了50%。Android程序员,最宝贵的时间是从你开始工作那一刻计算的“黄金五年”,这五年是你学习和成长的最好时期。为自己奠定一个好的基础,才能够在未来的发展道路上少走些弯路,实现自己年薪五十万、一百万的梦想。扫码免费领取!!原创 2023-02-08 11:48:10 · 158 阅读 · 0 评论 -
【Android面试必备】多年安卓开发经验工程师手把手教你拿高薪的秘诀!
在这个人人卷的时代,又在Android不好找工作的环境下,如果自己知识面不够广,又抱有侥幸心理,这样是找不到满意的工作的。面试是一个老生常谈的问题,显而易见面试是有很多技巧的。求职过程中,有很多同学会“高估”自己的价值,盲目追求工资更高/职位更高……的岗位。这样肯定不会有好结果,求职也会陷入两难的境地,面试能通过的公司自己看不上,自己能看上的公司却连面试机会也没有。所以,为了帮助大家顺利面试,早日拿到大厂offer,下面分享一份面试宝典可以扫码免费领取哦~## Android 面试题大全(中高级)原创 2023-02-02 16:28:42 · 63 阅读 · 0 评论 -
Android学而有道,学会这些“学以致用”的方法,让技术更上一层楼
在Android学习体系中,等都是需要认知学习的板块,除了基础Android知识以外,我们还需要去与时俱进的学习一些新的技术,比如近些年来热门的等内容,此外也成了各Android开发工程师深入学习的方向。实践是认识的基础,只有学以致用才能更好地获取和掌握知识,对于深入理解Android,最好的办法就是。原创 2022-11-30 18:59:40 · 98 阅读 · 0 评论 -
Flutter 学习 之 LogUtil 的 封装与实现 (一)
overridejson}) {///如果要开启颜色显示 那么就是1000///如果不开启颜色显示 那么就是1023//匹配中文字符以及这些中文标点符号。?!, 、;///用回车做分割///判断每句的长度 如果长度过长做切割///获取总长度///获取当前长度///获取截断点数据///遍历文字 查看真实长度i++) {//// 一个汉字再打印区占三个长度,其他的占一个长度3 : 1;///寻找当前字符的下一个字符长度??3: 1: 0;原创 2022-11-29 21:14:27 · 536 阅读 · 0 评论 -
实战:去除未加固 Android App强制升级提醒
如果想要成为架构师或想突破20~30K薪资范畴,那就不要局限在编码,业务,要会选型、扩展,提升编程思维。此外,良好的职业规划也很重要,学习的习惯很重要,但是最重要的还是要能持之以恒,任何不能坚持落实的计划都是空谈。如果你没有方向,这里给大家分享一套由阿里高级架构师编写的《Android八大模块进阶笔记》,帮大家将杂乱、零散、碎片化的知识进行体系化的整理,让大家系统而高效地掌握Android开发的各个知识点。原创 2022-11-22 17:31:20 · 5889 阅读 · 1 评论 -
2022最新Android面试题解题思路,带你迎合面试官心中的高标准
一家公司在招聘前,首先就已经有了自己的人才理念,知道自己想要什么样的人才。,今年的行情下,华为的情况也不是很好,就像任正非说的:让寒气传给每一个人。不过相对其他公司,华为开出的条件还是很不错的,这也是成千上万的人在等华为开奖的原因了。作为靠技术而活的程序员,如果没有一个好的技术,拿什么和“千军万马”去竞争呢?秋招进行到这个阶段了,还在招人面试的Android岗位真的很少了,因此。在众多的面试流程里,,不管是笔试还是面试都是如此,机会只留给有准备的人,所以大家一定不能忽视能力这块。原创 2022-11-18 18:08:25 · 89 阅读 · 0 评论 -
Android OkHttp拦截器
OkHttp可以说是Android开发中最常见的网络请求框架,OkHttp使用方便,扩展性强,功能强大,OKHttp源码与原理也是面试中的常客。但是OKHttp的源码内容非常多,源码千头万绪,用只需要一行设计却极其复杂。首先来看一个最简单的Http请求是如何发送的。这段代码看起来比较简单,OkHttp请求过程中最少只需要接触OkHttpClient、Request、Call、 Response,但是框架内部会进行大量的逻辑处理。所有网络请求的逻辑大部分集中在拦截器中,但是在进入拦截器之前还需要依靠分发原创 2022-11-16 18:01:40 · 1023 阅读 · 0 评论 -
2022最新字节、大疆、滴滴Android面试题,告诉你社招如何准备
作为一名有着将近4年Android开发经验的程序员来说,在今年这个环境下还是选择了裸辞。一方面是对自己目前所在部门的发展前景表示担忧,按照以往这家公司的脾性,软件赚不了太多的钱就会被砍掉,还不如另寻去路。另一方面是对自身的技术水平还是比较自信的,因为平时会花时间折腾些新的工具,不至于换家公司就落伍的那种,然后也有去做自己的应用程序,在自己的小圈子里也推广开了,有了大几百的注册用户,对我已经很满足了。在这三次的面试经历里,我发现社招对基础这块也不会忽视,但会要求你对这块有更深一点的认识,如果还是简单按部就班原创 2022-11-14 17:13:32 · 888 阅读 · 0 评论 -
如何在Android中避免创建不必要的对象
在编程开发中,内存的占用是我们经常要面对的现实,通常的内存调优的方向就是尽量减少内存的占用。这其中避免创建不必要的对象是一项重要的方面。Android设备不像PC那样有着足够大的内存,而且单个App占用的内存实际上是比较小的。所以避免创建不必要的对象对于Android开发尤为重要。本文会介绍一些常见的避免创建对象的场景和方法,其中有些属于微优化,有的属于编码技巧,当然也有确实能够起到显著效果的方法。原创 2022-11-09 22:32:57 · 102 阅读 · 0 评论 -
系统剖析Android中的内存泄漏
作为Android开发人员,我们或多或少都听说过内存泄漏。那么何为内存泄漏,Android中的内存泄漏又是什么样子的呢,本文将简单概括的进行一些总结。如果程序发生了内存泄露,则会带来如下的问题:应用可用的内存减少,增加了堆内存的压力;降低了应用的性能,比如会触犯更频繁的GC;严重的时候可能会导致内存溢出错误,即OOM Error。在正式介绍内存泄露之前,我们有必要介绍一些必要的预备知识。原创 2022-11-07 20:54:02 · 274 阅读 · 0 评论 -
2023秋招Android开发面试小能手就是我了吧
临近毕业,我们都在忙着秋招找工作了,同学都转向了java前后端,而我仍坚定的选择Android,原因很简单。我记得大学开了一门Android开发课程,我真的很喜欢那个老师,他让我对Android产生的很大的兴趣,记得我问过老师。他说近年来Android开发有了很多的新语言和新工具,不可能什么都讲到,这些只能靠你们自己去学习了,我这门课只是讲的Android本身,因为有一点要明白,,这样学什么就都轻松了。我觉得老师说的很有道理。不过在找工作时,我也经常听到安卓凉了,学它没有意义这样的话。原创 2022-11-04 22:29:47 · 90 阅读 · 0 评论 -
Android面试真经:Android百题,道道是重点
我已经工作两年了,前段时间部门认识的小学妹找到我,问我Android面试怎么准备,她觉得好难,有Android岗位的本身就不算多,而且Android涵盖的范围还很大,已经面了几个,有一部分都在问源码,自己这方面又很薄弱,明明自己花了两个月去自学Android,为什么还是觉得自己很多都答不上来。我很快就定位到了她的主要原因,对Android的整体思路不清晰,Android知识的运用不够灵活,想要在一个多月的时间去自学Android,效果怎么样只有自己才清楚。我带她把Android各版块可能问到的内容都顺了一遍原创 2022-11-03 22:32:59 · 83 阅读 · 0 评论 -
Android实现倒计时的几种方案
这样的线程并不是我们想要的,我们通常并不会直接new Thread 来进行一些逻辑操作,比如我们可能使用RxJava框架,通过操作符的方式来进行倒计时。以上是Android的倒计时方案,其实Java的Api也是支持倒计时实现的,比如 Timer 配合 TimerTask 就可以实现简单的倒计时。无需onDestory中销毁资源,如果想自由手动的控制倒计时,我们在start的高阶函数中接收父协程的上下文对象即可自动控制。关于倒计时的实现方式,大家可能有不同的做法,这里做一下总结看看你使用的是哪一种呢?原创 2022-11-02 22:13:00 · 8680 阅读 · 3 评论 -
如何使用jetpack compose来简化Android UI开发过程?
我们都知道,体量大一点的Android应用程序背后基本都有一个UI框架,,目前来说,Android框架可以归纳为两种:声明式和命令式。例如Android中提供的XML布局,我们可以设计小部件和组件,然后呈现给用户来进行UI交互,同时Android还可以进行自定义view。近年来,声明式UI成为一种新兴的趋势,它允许开发人员根据接收到的数据来设计用户界面。Jetpack Compose就是一个用于构建原生Android用户界面的工具包。。原创 2022-10-27 21:51:15 · 126 阅读 · 0 评论 -
回收视图如何在内部工作?
回收视图是一个视图组,它填充在视图持有者的帮助下提供的数据集合的列表,并将其绘制到屏幕上的用户。原创 2022-09-28 10:24:27 · 90 阅读 · 0 评论 -
Android Image Loading 库如何解决加载缓慢的问题?
加载缓慢的主要原因之一是,即使视图不在窗口或不再需要该任务,我们也不会取消下载或解码位图之类的任务,因此甚至有许多任务正在完成虽然我们不需要它们,所以加载刚刚出现在窗口中的实际图像需要时间。如果磁盘缓存中不存在,他们从网络下载图像,将其放入磁盘缓存,也将其放入内存缓存,然后将位图加载到视图中。在这篇文章中,我们将学习 Android Image Loading 库如何解决图像加载缓慢的问题。他们让我们的生活更轻松。如果存在于磁盘缓存中,它们从磁盘加载位图,也将其放入内存缓存中,并将位图加载到视图中。原创 2022-09-26 15:58:39 · 341 阅读 · 0 评论 -
如何记住使用 Paging 3 构建的 LazyColumn 的滚动位置
这将是一篇简短的文章,展示如何解决我在使用Jetpack Compose 1.2.1和导航撰写版本2.5.0构建此应用程序时发现的一个令人沮丧的问题。问题是LazyColumn无法“记住”其滚动位置,这意味着要转到列表的开头,导航到详细信息屏幕,然后返回主列表。我们都知道,这不是一个好的用户体验,这就是为什么我努力修复这个bug。这就是我遇到这个问题的原因,它概括了这个问题。如果这让您感到困惑,那么也许您可以为您的扩展功能使用不同的名称,但这将起到作用,直到 Google 发布修复程序。原创 2022-09-23 09:56:14 · 324 阅读 · 0 评论 -
从 Kotlin 中的数组中删除重复项
在这篇文章中,我们将学习如何在 Kotlin 中从数组中删除重复项。由于在 Kotlin 中有很多方法可以从数组中删除重复项,因此我们可以根据用例决定使用哪一种。让我们开始一个一个例子来学习。原创 2022-09-19 11:09:16 · 4574 阅读 · 0 评论 -
Android中的顶级状态测试
状态通常用可以进行单元测试的普通 Java/Kotlin 类来表示。因此,我们需要了解文本编辑器必须持有哪些状态变量才能实现撤消和重做功能。文本状态:显示的文本和光标位置撤消和重做文本状态:用户撤消/重做操作后要呈现的下一个 TextState。为了防止内存问题,撤消和重做状态的最大数量受缓冲区大小的限制。) {)...)CircularBuffer 是一个 LIFO(队列),在溢出的情况下,它会在推送新元素之前踢出第一个元素(即最旧的元素)。用户可以执行以修改它的操作类型。原创 2022-09-14 17:54:28 · 276 阅读 · 0 评论 -
Kotlin 中的 Age In Minutes 应用程序
为了设计应用程序的 UI,我们将使用线性布局线性布局的方向将是垂直的。原创 2022-09-12 09:00:00 · 119 阅读 · 0 评论 -
使用 Hilt ViewModel 中的 Activity
视图模型在活动配置更改中保留,因此活动不可注入,这完全有道理:在视图模型中注入活动会导致配置更改泄漏。不幸的是,Activity该类提供了很多实用程序,因此需要访问它是相当普遍的。大多数在线资源建议将代码移动到 Activity 或有权访问它的协作者,让其监听指示要执行的操作的事件,然后从 ViewModel 发送事件。我不在乎这些“最佳”做法。我想要那个代码在它被使用的地方,我不想要不必要的解耦。无论如何,这里有一点 Hilt 黑客技术可以在不更改任何Activity代码的情况下支持这一点。原创 2022-09-08 09:43:56 · 622 阅读 · 0 评论 -
如何使用 NoxPlayer 加速 Android 应用程序开发?
从C:\Users\USER_NAME\AppData\Local\Android\Sdk\platform-tools复制adb.exe文件中,将其粘贴C:\Program Files\Nox\bin并重命名为nox_adb.exe。之后,关闭 NoxPlayer 并导航到C:\Program Files\Nox\bin该文件并将其移动nox_adb.exe到您的桌面(只是为了备份)。另一个令人惊讶的功能是您可以在谷歌和百度地图之间切换。想象一下您在这种情况下会感到尴尬,将您的工作展示在您的前辈面前。原创 2022-09-06 10:40:46 · 1428 阅读 · 0 评论 -
使用 Gradle 版本目录管理 Android 项目中的库和依赖项
在大型多模块 Android(或任何基于 gradle 的)项目中,版本管理开始变得有点痛苦。人们处理这个问题的最常见方式是使用 buildSrc,但这样做的问题是buildSrc更改会导致整个构建过程中的缓存失效并增加构建时间。显然现在呼吁采取行动从 buildSrc 转移到 includeBuild如果您有其他自定义构建逻辑和构建插件,那么转移到该机制当然是有意义的includeBuild,但是如果您buildSrc只需要对依赖项进行版本管理,那么还有一个更好的方法 - gradle 版本目录。原创 2022-09-02 13:49:07 · 952 阅读 · 1 评论 -
为什么 Coil 变得越来越流行的 Android 图像加载库?
我更好奇,因为我在想它是如何给像 Glide 这样的图书馆带来竞争的。因此,不要浪费任何时间,让我们跳过它的功能。所以现在你可以比较这个库与 Glide 或 Picasso 相比有多么简单,它具有像 Glide.with().load().into() 这样的长语法。Coil,根据他们的官方文档,代表COroutine I mage L oader ,它归 Kotlin Coroutines 所有。所以你还在等什么,赶紧进入你的 android studio 并在你的项目中使用 Coil 😎。...原创 2022-08-31 10:09:17 · 265 阅读 · 0 评论 -
Detox:用于 react-native 应用程序的灰盒端到端测试自动化框架
使用Homebrew命令(注意:安装 Node.js v12.0 或更高版本。如果您需要管理安装在单机上的节点版本,请使用nvm )原创 2022-08-29 14:03:46 · 1201 阅读 · 0 评论 -
在 10 分钟内创建一个基本的 android 自定义视图组件
一个完美的选择是使用 Android 的 Jetpack 功能 View Binding 🥳。让我们继续启用它!😋 转到模块的build.gradle文件并在android标签内添加这段代码}并同步您的项目…完美的!您现在启用了视图绑定。我喜欢这个功能的地方在于,您不必像使用数据绑定时那样在布局中添加任何特殊标签。添加这段代码。= null,) :}我不骗你,如果你错过了这里的任何东西,你的自定义视图组件将不会正确膨胀,从而导致编译错误。...原创 2022-08-26 13:44:48 · 312 阅读 · 0 评论 -
Kotlin 中的支持领域
支持字段是编程语言 Kotlin 中引入的一个概念,一个简单但被遗忘的概念,您应该了解一下。原创 2022-08-24 10:03:58 · 114 阅读 · 0 评论 -
使用 Firebase 使用 SignUp 和 SignIn 创建 Android 应用
Firebase 是 Google 的移动开发平台。它为您提供了一个快速、高质量的应用程序和更好的用户群的平台。您可以根据已知需求使用 Firebase 中的多种互补功能。连接firebase和android studio的主要需求是谷歌仓库版本等于或大于26。原创 2022-08-22 14:05:17 · 525 阅读 · 0 评论 -
通过 Github 工作流的 Android 的 CI/CD 管道
持续集成/持续交付自动化构建操作以弥合开发和运营之间的差距有时需要向客户或其他团队成员(例如 QA 团队)提供 Android APK。创建 APK,然后您上传一些云服务以下载其他云服务。您仅提供 APK 的计划似乎是一项漫长的任务。如果它自动发生不是很好吗?以下是创建管道的方法,当您的代码推送到您的分支时,GitHub 会在该管道中构建 APK。...原创 2022-08-19 09:32:32 · 541 阅读 · 0 评论 -
JavaScript 中的递归
递归是一个调用自身的过程。递归函数是为了执行函数而调用自身的函数。递归函数的语法是:从上图中我们可以看到,该recurse()函数在其内部被调用。【Android 详细知识点思维脑图(技能树)】其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,....原创 2022-08-17 10:29:20 · 150 阅读 · 0 评论 -
如何在 Android 模拟器中禁用自动关闭?
由于我已将 Android Studio 版本更新为 Bumblebee 版本,因此我的 Android 模拟器会在几秒钟后自动关闭。屏幕全黑。我需要不时重新打开它。原创 2022-08-15 09:12:25 · 452 阅读 · 0 评论