- 博客(9)
- 收藏
- 关注

原创 Debug kotlin annotation processor
Debug Kotlin annotation processor#1.EditCongurations创建一个Remote 远程调试器#2.gradle.properties文件添加 kapt.use.worker.api=true#3.Terminal中运行./gradlew --no-daemon -Dorg.gradle.debug=true -Dkotlin.daemon.jvm...
2020-01-16 17:20:52
280

原创 Android Studio子module中添加支付宝sdk aar包依赖的正确方式
1、工程级别 build.gradle文件中 2、app module的build.gradle文件中 3、在要添加aar包的子module的build.gradle文件中
2019-02-02 15:38:33
3756
原创 android异步请求转同步请求(CountDownLatch用法示例)
通常android开发中会有这样一种需求,通过网络图片的链接地址,来获取该图片的大小,一般做法是在子线程中来请求这个图片,获取他的输入流,从而读取他的大小。大家都知道请求网络资源是异步的,当请求结果还没返回的时候,你的代码已经继续往下执行了,那么怎么解决这个问题呢。这个时候就需要把异步的请求转成阻塞式的同步请求,简而言之,就是主线程等待子线程请求的结果,主线程再继续执行业务代码。...
2019-02-11 15:25:08
2786
原创 Android 自定义注解(下篇)
一、序作为一名从外包公司出身的Coder,一直以来都有一个愿景,希望可以拥有一套自己的快速开发框架。都知道外包公司的项目多,但是也许你并没有亲自感受过一年多需要开发10个app的酸爽。现在脱坑了却挺怀念那个艰苦奋斗的时光,从一个小白慢慢的朝着梦想中的大佬奋斗。于是最近怀着憧憬之情开始了这个架构的编写之旅。初识组件化之时,我写过一个叫BaseModule的东东,整理了常用的第三方库到base...
2018-09-18 17:05:59
761
原创 AIDL 入门
一。AIDL 的作用 由于 android 的沙箱机制,每一个程序是运行在独立的进程中,每一个进程都有一个独立的 Dalvik VM,即每个进程自行管理内存,独自占有系统资源,并且进程之间是不能进行内存共享的,aidl 的作用就是用来解决进程之间互相通信的问题。 Messenger 是串行的通信方式,AIDL 是并行的通信方式。通信双方一个是 Service 端一个是 Client
2017-08-31 14:50:08
298
原创 VirtualAPK 入坑记录
Virtual APK 入坑一.为什么选择VirtualAPK1.插件开发等同于开发原生 APK,无需做特定的处理2.宿主和插件之间有耦合形态和独立两种关系,耦合形态时插件对宿主有代码和资源的依赖;独立形态时插件对宿主无任何依赖关系3.市场兼容性良好,经过了滴滴的实际检验;3.图片延时加载 开始时阻塞图片加载,mWebSettings.setBl
2017-07-13 14:46:41
2438
原创 Android 自定义注解(上篇)
一。按注解处理方式分类1.1 运行时处理 这个是编译器默认的做法,编译器会通过class文件,逐个逐个的遍历class的属性和方法,即运行时处理1.2 编译时处理编译器会在编译的时候,将注解的属性引入在进行编译二。基本概念2.1元注解 @desc{用于修饰定义自定义注解的注解} **@Target**:表明该自定义注解应该用于什么地方 ElemenetType.CONSTRUC
2017-06-27 18:01:41
410
原创 EventBus 使用心得
1、IntentService 是运行在子线程中,Service 是运行在主线程中2 、在 IntentService 中切换到主线程无效3、IntentService 配合 EventBus 使用时设置接收事件在子线程中即刻
2017-06-07 19:40:17
319
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人