Android

微信公众号:BaronTalk

一. 前言

这篇文章我酝酿了很久,参考了很多资料,读了很多源码,却依旧不敢下笔。生怕自己理解上还有偏差,对大家造成误解,贻笑大方。又怕自己理解不够透彻,无法用清晰直白的文字准确的表达出 Binder 的设计精髓。直到今天提笔写作时还依旧战战兢兢。

Binder 之复杂远远不是一篇文章就能说清楚的,本文想站在一个更高的维度来俯瞰 Binder 的设计,最终帮助大家形成一个完整的概念。对于应用层开发的同学来说,理解到本文这个程度也就差不多了。希望更加深入理解 Binder 实现机制的,可以阅读文末的参考资料以及相关源码。

阅读更多

为 Retrofit2 提供的 FastJson 转换器(Retrofit2-FastJson-Converter)

微信公众号:BaronTalk

前言

Retrofit 是 Android 和 Java 平台上一款优秀且被广泛使用的 Http 客户端,GitHub 上 21K+ 的 Star 和 4.3K+ 的 Fork 充分证明了 Retrofit 的风靡程度。

Retrofit 在 Android 平台如此流行与它及其简洁的调用方式和优秀的可扩展、可配置性是分不开的。我们客户端在和服务端交互的时候通常采用 Json 格式来传递数据,客户端拿到服务端传递过来的 Json 格式的数据后需要对它进行解析;Retrofit2 并未提供 Json 解析功能,但可提供接口让客户端程序员配置 Json Converter以选择自己喜欢的 Json 解析库。

阅读更多

首发于公众号:BaronTalk

最近公司项目需要在WebView上调用手机系统相册来上传图片,开发过程中发现在很多机器上无法正常唤起系统相册来选择图片。

解决问题之前我们先来说说WebView上传文件的逻辑:当我们在Web页面上点击选择文件的控件(<input type="file">)时,会回调WebChromeClient下的openFileChooser()(5.0及以上系统回调onShowFileChooser())。这个时候我们在openFileChooser方法中通过Intent打开系统相册或者支持该Intent的第三方应用来选择图片。like this:

阅读更多

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×