自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Jkwen 的专栏

一点一滴,汇流成海

  • 博客(15)
  • 资源 (1)
  • 收藏
  • 关注

原创 读书笔记-Android进阶指北-Gradle与Groovy

什么是GradleGradle 是一个基于 JVM 的构建工具。可用于自动化项目的编译,打包,省去人工操作,一方面可以提高效率,解放人工,另一方面可以避免人为错误。基于 Java 语言的构建工具有:Ant, Gant, Maven。Gradle 吸收了前面三者的优点,形成了新的开源工具,它支持的构建脚本语言有 Groovy, Kotlin,并且 Gradle 还是 Android 官方的构建工具。gradle 构建脚本.gradle 的文件格式即为 gradle 脚本文件,build.gradl

2021-12-25 16:54:00 1584

原创 读书笔记-Android进阶指北-Java Binder原理

什么是 Java Binder:Java Binder 可以粗略的理解为 Java 层的 Binder 通信。与 Native Binder 就像是两个世界对同一事物的不同映射,但其实还是有层级关系的。Java Binder 在 Native Binder 之上,通过 JNI 注册(系统JNI的注册过程发生在Zygote进程启动时)建立关联。Java Binder 要想最终完成 Binder 通信是离不开 Native Binder 的。Java Binder的使用:1.与 Native Binder

2021-12-12 17:38:28 1590

原创 读书笔记-Android进阶指北-IPC机制

主要内容:IPC机制即进程间通信,是 Android 的基础知识点之一。阅读目标:在实际项目中可能用的不多,但对于相关概念有必要了解,在需要的时候可以快速的掌握并运用。文章内容Android 基于 Linux 做了适合自己的 IPC 机制,其中核心的一点是 Binder,其实也就是说 Android 的 IPC 机制本质是基于 Binder 实现。Linux IPC 机制实现主要有 Pipe(管道),Signal(信号),Semophore(信号量),Message(消息队列),Socket(套接字

2021-11-29 09:30:00 291

原创 读书笔记-Android进阶指北-Native Binder原理

什么是 Binder:Binder 是基于 OpenBinder 实现的,Binder 通信采用内存映射的方式来实现跨进程数据传递。是一种 IPC 机制。为什么要了解 Binder:Android 是基于 Linux 内核的,Binder 采用内存映射的方式优化了 Linux IPC 通信两次复制,缓存区大小未知两个问题。在 Android 系统上,跨进程通信采用的就是 Binder 。在 Android 系统中涉及到 Binder 的地方有,Android 系统中各进程间的通信,数据传递;AMS,P

2021-11-28 15:30:05 1835

原创 捋一捋 Android 启动应用进程的前因后果

点击桌面应用图标后前面(Android 进阶解密阅读笔记2)已经知道启动应用程序进程是由 AMS 向 zygote 进程发起申请,后面由 zygote 进程监听处理。但一般场景下,用户只有点了桌面应用图标才会打开应用,可见 AMS 也是收到了某种响应才会发起申请。在 Android 进阶解密阅读笔记3 中我们知道启动根 Activity 最终会走到 ActivityStackSupervisor 的 startSpecificActivityLocked 方法,而这个方法中的逻辑也包含着启动应用进程,这就

2021-01-26 20:59:50 236

原创 Java 基础数据类型与运算

Java 数据类型与运算数据类型新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入数据类型你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章

2020-10-24 21:28:04 161

原创 WindowIsTranslucent 影响 Activity 的生命周期 onStop,求解!

前阵子项目中出问题才知道原来 application theme 里的属性 WindowIsTranslucent 设置为 true 会导致页面跳转是不走 onStop 效果如同 Activity 弹起对话框。可这个属性是如何影响到 onStop 方法的,我想从源码角度看看,但搜索了一遍发现没有类似的分析。自己试着看源码也暂时没有突破。求助各位路过的大神可否指点一二,帮助我看透这个坑爹玩意儿。...

2020-10-20 12:41:07 346

原创 百度地图根据经纬度坐标点数组控制显示范围,我踩了一个小坑

需求是这样的,我希望在地图上描一些点,并且让地图的显示范围刚好包括这些点,不至于缩的太小或者放的太大。官网上貌似没有提供相关的说明,搜索后发现是有实现方式的,大致如这篇文章所述的实现。安卓百度地图显示地图上所有的点(Marker)我在实现时注意到百度地图 API 提供了 include(List<LatLng> latlngs) 的方法,心想用这个就不用自己遍历了,于是就用上了这个方法,这也是我和上面提到的那篇文章唯一的区别。运行后结果并非我所期望的。我开始怀疑坐标数组值得准确性

2020-05-25 16:05:06 1036

原创 容易报 IllegalStateException: view has already been added to the window manager,Toast 也开始不听话了

最近项目中的 Toast 提示比较频繁的报这个错:IllegalStateException: view has already been added to the window manager 也没有具体定位业务代码,这就不太好找问题,没法复现,就不好解决。所以是时候看下 Toast 源码了[Android] Toast问题深度剖析(一)[Android] Toast问题深度剖析(二)Android Toast 两个 Crash我也是看别人的源码分析,这里感谢以上作者,我觉得分析的很透彻,也有解决方

2020-05-17 12:19:27 6115 1

原创 小心 DialogFragment 会造成内存泄漏

事情是这样的,我在项目里有个自定义的 Dialog 是继承 DialogFragment 实现的,接入 LeakCanary 后经常会提示我这个地方存在内存泄漏,定位的地方也有点奇怪,是一个布局控件上。心想不应该啊,但既然报出来了,还是一探究竟。内存泄漏简单来说就是对象该销毁时没有被销毁回收,引用还被别的地方持有导致回收不掉,最后就变成了孤魂野鬼,达到一定程度就会导致 OOM 的问题了。原因追踪根据它报的位置我想难道是控件对象没被释放?于是我手动在 onDestoryView 里将控件

2020-05-17 10:24:00 1823

转载 Java 虚拟机的内存模型

内容转载自公众号文章https://mp.weixin.qq.com/s?__biz=MzAwNjA1MTI2NA==&mid=2247483730&idx=1&sn=795b80a1ccda9e1de3e62b63b4d2328c&chksm=9b1205fdac658ceb97ccf39ab3c429b7cf2e5593eb1c7d6c519ffca1825f...

2020-04-14 08:24:15 83

转载 微信分享申请 APPID 时,签名要这样填写

转载自https://blog.csdn.net/chen8124/article/details/89922200app 的签名生成方式可以自行搜索,但是生成后有 SHA1 也有 MD5,用哪个呢?上面链接的文章明确了是用 MD5,亲测确实,但是需要去掉所有 :,只留大小写字母和数字。...

2020-03-27 16:22:33 1063

原创 解决百度地图 SDK 升级后,在使用 MapView 进行展示时,在低版本手机上崩溃闪退

我的解决方案:替换项目原有的网络框架库 Vollery 改用 Retrofit。如果只想看解决方案的,到这里就可以了,以下我将会说明下我是怎么解决这个问题的。场景 项目中的百度 SDK 版本比较老旧 4.1.1 版本,因为有些 Android 机例如 华为 系列细化了定位权限,光应用申请到定位权限还不够,还会有一个叫 位置信息 的开关控制,而 4.1.1 版本不会区分是应用定位权限没开还是...

2020-03-26 10:29:29 1188

原创 页面销毁了,用 RxJava + Retrofit 的网络请求才回来,出现空指针异常可以这样处理

在用 RxJava + Retrofit 进行网络请求时,会碰到一个通用的问题(这个问题和技术无关,用 OkHttp 一样也会存在):在页面交互上,当请求响应比较慢,我们提前销毁页面,但当我们销毁页面后,请求结果回来了,这时会因为结果回调里去做了和页面相关的逻辑(比如给 TextView 赋值等)就会引起空指针异常。问题的本质是,页面销毁后,相关变量引用为空,继续去做了和页面相关的代码逻辑,就...

2020-03-20 10:28:59 1426

转载 解决 Charles 抓 https 请求显示 <UnKnow> 的问题,以及 Android 7.0 以上无法抓包的问题

解决 Charles 抓 https 请求显示 <UnKnow>https://www.cnblogs.com/xiaozi/p/9229615.html解决 Android 7.0 以上无法抓包的问题https://www.jianshu.com/p/392362115090

2020-03-18 15:18:06 913

UML实验报告

Rational Rose实验报告,里面有相关的UML建模分析图

2013-06-12

空空如也

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

TA关注的人

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