自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(175)
  • 资源 (1)
  • 收藏
  • 关注

原创 Android面试题之Kotlin泛型和reified关键字

reified关键字 和inline一起使用,reified关键字能帮你检查泛型的参数类型。kotlin不允许对泛型参数T做类型检查,因为泛型参数类型会被类型擦除,也就是说T的类型信息在运行时是不可知的

2024-05-23 16:55:55 76

原创 Android面试题之Kotlin扩展函数和apply函数详解

扩展可以在不直接修改类定义的情况下增加类功能* 扩展可以用于自定义类,也可以用于标准函数* 和继承相似,扩展也能共享类行为,在无法接触某个类定义,或者某个类没有使用open修饰符,导致无法继承它时,扩展就是增加类功能的最好选择

2024-05-22 12:39:31 152

原创 Android面试题之Kotlin中的object关键字和companion伴生对象

object 单例类对象 修饰对象表达式 companion伴生对象 将某个对象的初始化和一个类实例捆绑在一起 一个类里只能有一个伴生对象 伴生对象只有一个,哪怕类初始化多次

2024-05-21 09:14:03 195

原创 Android面试题 之 Kotlin DataBinding 图片加载和绑定RecyclerView

Android面试题 之 Kotlin DataBinding 图片加载和绑定RecyclerView

2024-05-20 09:22:23 199

原创 Kotlin 之 Jetpack DataBinding

让布局文件承担了部分原本属于页面的工作,使页面与布局耦合度进一步降低

2024-05-17 09:48:55 282

原创 Android面试题之Kotlin的几种常见的类

类的初始化的顺序 主构造函数里声明的属性 类级别的属性赋值 init初始化块里的属性赋值和函数调用 次构造函数里的属性赋值和函数调用 延迟初始化 lateinit关键字用来延迟初始化

2024-05-16 09:35:48 394

原创 Android面试题之Kotlin的apply、let、also、run函数

apply apply函数可以看作是一个配置函数,可以传入一个接收者,然后调用一系列函数来配置以便使用,如果提供lambda给apply函数执行,将返回配置好的接收者 apply能让每个配置函数都作用

2024-05-14 09:58:22 271

原创 Android面试题之Kotlin和Java之间互操作

一文了解Kotlin和Java 混编的注意点

2024-05-13 09:37:59 262

原创 Android面试题之Kotlin多路复用和并发

一文了解kotlin里的多路复用和并发

2024-05-13 09:32:45 279

原创 Android面试题之kotlin热流和channel

channel实际上是一个并发安全的队列,它可以用来连接协程,实现不同协程的通信channel实际上就是一个队列,队列中一定存在缓冲区,那么这个缓冲区一旦满了,并且也一直没有人调用receive并取走函数,send就需要挂起。默认缓冲区大小是0@Testvar i = 0;在读取channel时可以直接获取一个channel的iterator迭代器//也可以这样。

2024-05-12 10:03:31 405

原创 Android面试题之Kotlin异步流、冷流Flow

流采用与协程同样的协作取消。流的收集可以是当流在一个可取消的挂起函数(例如delay)中挂起的时候取消。launchIn需要传入协程作用域,返回的是Job,这样可以方便的取消停止流。使用launchIn替换collect,我们可以在单独的协程中启动流的收集。当流收集完成时(普通情况或异常情况),它可能需要执行一个动作。,collect是最基本的末端操作符。背压:生产者效率大于消费者效率。末端操作符是在流上用于。

2024-05-12 09:59:16 738

原创 Android 面试之Kotlin 协程上下文和异常处理

CoroutineContext是一组用于定义协程行为的元素,包括以下几部分:* Job:控制协程的生命周期* CoroutineDispatcher:向合适的线程分发任务* CoroutineName:协程的名称,调试的时候很有用* CoroutineExceptionHandler:处理未被捕获的异常* 这几个部分可以通过"+"来组合

2024-05-11 13:59:02 503

原创 Android面试题之Kotlin协程一文搞定

协程基于线程,是轻量级的线程。

2024-05-11 10:00:18 698

原创 Python数据处理之导入导出excel数据

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点Python的一大应用就是数据分析了,而数据分析中,经常碰到需要处理Excel数据的情况。这里做一个Python处理Excel数据的总结,基本受用大部分情况。相信以后用Python处理Excel数据不再是难事儿!Python处理Excel数据需要用到2个库:xlwt 和 ...

2019-08-15 09:12:07 4700

原创 一文搞定Python操作文件和目录

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点文件和目录操作是很常见的功能,这里做个简单的总结,包括注意事项和实际的实现代码,基本日常开发都够用了目录操作判断目录或是文件是否存在os.path.exists(path)判断是否是文件或是目录# 如果文件或是目录不存在也会返回Falseos.path.isfi...

2019-08-14 09:33:38 494

原创 Python一行代码过滤标点符号等特殊字符

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点很多时候我们需要过滤掉标点符号等特殊字符,网上虽然有一堆的方法,但是都没有找到一个非常满意的,有些过滤不了中文的标点符号,有些过滤不了英文的标点符号,有些过滤不全。最后通过查看正则表达式文档,发现一个高效的办法,一行代码就能搞定:def replace_all_blank...

2019-08-13 09:20:01 3720

原创 给Android开发的Python入门指南

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点首先是安装和配置环境安装和配置Python有2种方式:一种是通过安装Anaconda, Anaconda类似一个包管理工具,里面集合了关于Python的很多信息,包括三方库、网站博客等。此外还有一个比较大的特点是Anaconda里面有很多的数据科学和深度学习方面的库,安装...

2019-08-09 18:55:51 499

原创 Git常见分支问题各个击破

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点为什么已经推到远程的分支,我本地checkout的时候还是提示找不到分支?首先我们要弄清楚的是,checkout 是本地命令,不跟远程仓库打交道。我们基于远程分支新建一个分支时一般会这样操作:git checkout -b XXX origin/XXX实际上,上面的命...

2019-07-20 10:53:05 258

原创 Git找回回滚后的内容和删除的文件

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点如果我已经执行了git reset --hard XXX,之前的commit的内容还能找回来吗?首先,经过之前的学习,我们起码知道,执行完 reset回滚commit以后,之前的commit其实没有被删除,肯定还在的。要找回之前的 commit 的内容,那我们势必得知道对...

2019-07-20 08:03:25 2420

原创 resource android:attr/dialogCornerRadius attr/fontVariationSettings attr/ttcIndex not found

今天编译的时候突然报这个错误。乍一看是XXX资源找不到,实际上是依赖的Android SDK版本不一致的问题。也就是比如你编译的Android SDK版本是27,但是你的引用的一些库依赖的Android SDK版本是28,这个时候在27的SDK里就会找不到你的库所需要的28的一些资源。所以解决方法就是将Android SDK的版本统一就行了。...

2019-07-15 15:51:46 278

原创 Git回滚和撤销---吃上后悔药、坐上时光机

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点Git系列Git原理之开篇Git仓库目录探秘Git的三个工作区和文件的三种状态Git branch 命令 分支显示不全Git是如何保存和记录数据的——数据对象Git是如何保存文件名和目录关系的—树对象Git是如何保存作者和时间等信息的—提交对象提交分3步...

2019-07-13 10:27:14 553

原创 commit时Git都干了些啥?--- 提交对象

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点Git系列Git原理之开篇Git仓库目录探秘Git的三个工作区和文件的三种状态Git branch 命令 分支显示不全Git是如何保存和记录数据的——数据对象Git是如何保存文件名和目录关系的—树对象提交对象一般我们平时有了需要提交的文件,都是2步走:a...

2019-07-12 09:09:21 737

原创 Git是如何保存文件名和目录关系的---树对象

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点Git系列Git原理之开篇Git仓库目录探秘Git的三个工作区和文件的三种状态Git branch 命令 分支显示不全Git是如何保存和记录数据的——数据对象树对象(tree)—— 保存文件名和目录关系树对象主要解决2个问题,:文件名的保存和文件目录关系的...

2019-07-11 09:20:05 582

原创 Git是如何保存和记录数据的——数据对象

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点Git系列Git原理之开篇Git仓库目录探秘Git的三个工作区和文件的三种状态Git branch 命令 分支显示不全数据对象(blob)——保存文件内容首先我们先来向Git仓库中存储数据//终端输入,其中 -w 参数就表示向Git仓库中写入echo '...

2019-07-10 11:29:49 937

原创 Git仓库目录探秘

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点Git本地仓库每一个Git项目下都会有一个.git目录,里面包含了整个git仓库的信息数据。我们首先来认识一下这个目录。首先我们创建一个新的git仓库,这个用git init或者git init 文件夹名命令就行了。git init test_git上述命令执行完以...

2019-07-09 17:22:45 368 1

原创 Git branch 命令 分支显示不全

这里说的情况是,很多时候我们项目会有很多分支,甚至好几十个分支。如果我们用 git branch 或者 git branch -r命令想查看分支,往往会显示不全,得一直按着方向键或是回车键一个个往下找。实际上,git branch 命令后面还可以带很多的参数,其中就有能一下子显示所有分支的选项。上图中就是 git branch 命令可以带的全部参数。其中一个 - 的参数和前面的两个 --的...

2019-07-05 14:41:19 5804 2

原创 Git的三个工作区和文件的三种状态

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点我们在使用Git的时候一般有3个工作区的概念:Git 仓库、工作目录以及暂存区域。其中工作目录比较好理解,就是我们开发时修改文件的那些目录,Git 仓库就是我们项目目录下面的 .git目录中的内容,而暂存区域是保存已经被Git标记过,将要提交保存到Git数据库中的文件的地方...

2019-07-04 20:44:16 1438

原创 Mac上Sourcetree clone新项目时出错templates not found /usr/local/git/share/git-core/templates

今天用Sourcetree克隆新项目时突然不成功,只有一个警告:templates not found /usr/local/git/share/git-core/templates看着像是找不到文件,于是打开目录看看:open /usr/local/发现里面根本就没有 git 这个目录啊!没有目录的原因是因为没有安装 git,可以去官网下载安装一下:官网地址:http://git...

2019-07-02 16:55:11 1801

原创 Git原理之开篇

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点Git是我们日常开发的必备工具,是团队协作的利器。Git使用广泛,而之所以如此流行,主要和它的一些突出的优点分不开。真正的分布式我们在使用Git时,无论是从远程仓库clone代码,还是把本地的代码推到远程的新仓库,都是完成的克隆一份代码。相当于是复制了一份代码到别的地方,...

2019-06-29 22:40:40 293

原创 andorid 修改字体一文搞定

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点替换字体也是一个比较常见的需求,一般分几种情况。实现起来也不麻烦,这里简单记录下全局替换字体步骤1assets目录下拷贝字体文件步骤2application中替换默认字体在Application的onCreate方法中增加替换方法/** * 设置自定义字体 ...

2019-06-24 20:02:34 167

原创 Android字符串反转、左移和右移

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点反转反转最简单的就是用StringBuilder和StringBuffer的reverse方法private String reverseString(String original) { StringBuilder builder = new Strin...

2019-06-22 10:16:53 671

原创 Attempt to invoke virtual method 'int android.view.View.getImportantForAccessibility()' on a null ob

今天碰到个奇怪的错误Attempt to invoke virtual method ‘int android.view.View.getImportantForAccessibility()’ on a null object reference百思不得其解,就简单一个页面,一个列表。找来找去,原因真是让人泪奔。。。各位碰到这个问题的看官,请检查一下你的Adapter的getView方法是...

2019-06-21 11:32:05 1862 6

原创 git惨案—提交文件过大导致RPC failed,413 Request Entity Too Large错误

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点今天git push的时候碰到个奇怪的问题,push的进度卡在25%,最后提交失败,报上述图片中的错误。看提交的过程日志发现竟然有1个多G的内容要提交!而正常的情况下一般几秒钟就OK了,而且我也没有改动几个文件呀?!上图是正常的情况,可以看到实际上只有几KB,嗖的一下就...

2019-06-17 20:39:17 2567

原创 Android接入支付宝和微信支付

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点前言很多APP都需要支付功能,国内一般就是支付宝和微信了。目前这2种接入方式对于APP端来说都已经比较方便了,因为大部分的安全校验之类的逻辑都在服务端。APP端总结起来就是三步走:接入支付的库接受服务端的订单信息,发起调用支付宝和微信接收支付宝和微信的回调支付...

2019-06-06 20:01:58 2869 1

原创 git拉取分支报错:fatal:‘XXX' is not a commit and a branch ‘XXX' cannot be created from it

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点问题出现的步骤首先通过SourceTree新建一个新的分支,新建分支的时候是基于远程分支的某次提交然后将新建的分支推送到远程最后在本地git目录文件夹中,通过git的checkout命令检出远程分支git checkout -b 本地分支名 远程分支名...

2019-02-19 13:09:24 15006 1

原创 手把手教你用Android Studio进行网络抓包

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点日常开发中难免需要抓包,抓包可以有很多种方式,比如之前介绍的抓包神器Charles。这次我们来看看怎么利用Android Studio来抓包。主要的工具Android Studio提供的Android Profile工具我们借助Android Studio提供的Andr...

2019-02-14 19:29:56 9827 2

原创 华为手机Log日志不输出

今天碰到一个问题,App测试时崩溃了,但是华为的测试机什么日志都看不到。经过一番搜索,最后找到解决方法:进入手机拨号页面,输入:*#*#2846579#*#*然后就会出现一个“工程菜单”一次点击“后台设置”–>“Log设置”,出现一个日志选择的弹框选中“AP日志”后续就能正常看到debug日志了。以上,希望能帮到大家...

2019-02-13 11:16:04 608

原创 2018十大航天事件

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点这些年,人类探索宇宙的脚步从未停止,反而是愈加深入和频繁。而航空航天也是人类科技水平的最直观的体现。作为一个天文小白,简单梳理了2018年我们对宇宙探索方面所做的努力。“重型猎鹰”运载火箭和特斯拉跑车2018年2月6日16点45分,SpaceX的重型猎鹰运载火箭携带一辆红...

2019-01-15 13:02:11 1405

原创 Android Studio proguard ParseException以及jcenter超时问题解决

FAILURE: Build failed with an exception.* What went wrong:A problem occurred configuring project ':XXX'.> Failed to notify project evaluation listener. > proguard/ParseException看到这个错误刚...

2018-12-30 19:43:57 219

原创 transformClassesWithProfilers-transformForFullDebug

今天莫名碰到一个问题,编译项目的时候没有问题,当通过Android Studio的run起来时最后就会报下面的错误而且错误什么都没有,只有上面那几行。。。最后总算找到解决方法欢迎关注我的微信公众号,和我一起每天进步一点点!...

2018-12-28 22:19:46 88

android listview下拉刷新和滑动删除

解决下拉刷新和滑动删除冲突。github:https://github.com/snowdream1314/EnhancedPullToRefreshListView

2016-07-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除