《Android经验分享》收录国内外最近一周热门的技术博客以及优秀的类库,星期一傍晚将准时更新给大家
微信公众号:Android经验分享 QQ讨论群:386067289
本文已授权微信公众号:Android经验分享,在微信公众号平台原创首发。
热点新闻
官方介绍:微信小程序是一种全新的连接用户与服务的方式,可以在微信内被便捷地获取和传播,同时具有出色的使用体验。这意味着移动互联网第二春会来吗?
安卓7.0才刚刚没推送多久,现在安卓7.1又要来了。Google透露,10月4日将举行新品发布会,而从配图的轮廓上看,这应该是新一代的Google旗下的。而按照之前的消息,新的设备将会首发搭载安卓7.1新系统,届时新系统可能也会一并推送给其他Google设备。
热门博客
本周最热门的话题无疑是微信小程序了,这篇博客收集了微信小程序最新开源项目、文档、教程、知乎讨论、媒体报道和相关文章。
如果有人问你它是如何加载,工作原理是怎样的?为什么自定义GlideModule只需要在Manifest文件中加入meta-data即可?等等很多加载流程以及使用的注意事项。想搞明白这些问题,就需要我们对Glide源码有个大致的认识,去剖析源码深处的奥秘。
EventBus 是一个 Android 事件发布/订阅框架,通过解耦发布者和订阅者简化 Android 事件传递,这里的事件可以理解为消息,本文中统一称为事件。事件传递既可用于 Android 四大组件间通讯,也可以用户异步线程和主线程间通讯等等。
作为Android开发者,如果你不想开源你的应用,那么在应用发布前,就需要对代码进行混淆处理,从而让我们代码即使被反编译,也难以阅读。混淆概念虽然容易,但很多初学者也只是网上搜一些成型的混淆规则粘贴进自己项目,并没有对混淆有个深入的理解。
android开发过程中网络请求作为最重要的组成部分之一,然而对于大部分android开发者在网络请求上有太多疑惑,不知道如何去选型?笔者以为采用广泛被使用的第三方网络框架再封装为上策,因为这些网络框架如retrofit、okhttp、volley等是被全球android开发者维护着,无论在功能上、性能上、还是代码简洁性都相对于自己通过原生实现的给力。
crollView里嵌套ListView,一直是Android开发者(反正至少是我们组)最讨厌的设计之一,完美打破ListView(RecyclerView)的复用机制,成功的将Native页面变成一个又臭又长的H5网页效果,但由于这种设计需求在我司项目实在太多见,无奈之下,封装。
不管是开发 Android 已久的老司机,还是刚刚上车的新司机,都肯定会对一件事情深恶痛绝:图片适配(尤其是在美工不给力的条件下)!为什么 Android 手机要有这么多不同的分辨率? 为什么我的图片在这台手机上显示地好好的完全符合设计图的要求结果换到另一台手机上就变形了?Oh my god !
RxJava常用操作符。
Java是垃圾回收语言的一种,其优点是开发者无需特意管理内存分配,降低了应用由于局部故障(segmentation fault)导致崩溃,同时防止未释放的内存把堆栈(heap)挤爆的可能,所以写出来的代码更为安全。
View 的工作原理主要包含 View 的三大流程 onMeasure()、onLayout()和onDraw() ,而由于一次性全部写完内容会有点长,所以本次主要先介绍关于 View 的工作流程的整体梳理和 Measure 过程相关知识,而下一篇笔记会把剩下的部分写完。
受欢迎的类库
Select the page content generated picture.仿简书选取页面内容生成分享图片。
Forcelayout is library for android. You can drawing graph with spring-like attractive forces.
一个基于 Sonic(声音处理算法)的,音频 Speed,Pitch,Rate 调节 Demo该 Demo 含两种媒体引擎,都支持音频的变速功能.一个是,基于 Exo 和 Sonic Java 算法。
微信小程序(应用号)开发工具+破解+Demo+教程。
轮盘样式的 Fragment 选择菜单,可转动轮盘切换 Fragment。
世界级相册选择器,快速,低耗,响应快速,无依赖。抽取自 Telegram,扩展了 QQ 相册选择风格。
An extension of RelativeLayout that helps show loading, empty and error layout.
半圆锯齿背景虚线边框组合实现简单优惠券效果,可实现一些简单组合。
viewPager 左右滑动时的错位视差,以及内部 Fragment Item 上下拖拽和进入新的 Activity 的 transition 动画,滑动流畅。
基于 face++的人脸检测,解决了 camera 预览变形,图像方向不对等问题。
完整项目
仿知乎日报,基于 MVP + RxJava + Retrofit2 + Dagger2 . 本应用是个人的实践项目,目的在于总结归纳近来学习到的新技术,融会贯通。本应用基本涵盖了Android开发最常用的主流框架,界面清新简洁,实现了知乎日报的主要功能。
一个android项目搞定所有主流框架,提供同一个App的不同架构实现,对其进行对比分析,方便大家选取使用。
周刊外话
微信官方公布完“小程序”之后,有不少人指出,小程序将会对大量的APP产生威胁。但从目前所公布的这些细节当中,我们可以看到微信其实正在给开发者更多在用户面前“露脸”的可能性。重点是,微信也并非自身涉足新功能,而是将自身的能力给予更多的开发者。
张小龙在朋友圈里这样解释道:小程序是一种不需要下载安装即可使用的应用,它实现了应用「触手可及」的梦想,用户扫一扫或搜一下即可打开应用。也体现了「用完即走」的理念,用户不用关心是否安装太多应用的问题。应用将无处不在,随时可用,但又无需安装卸载。
更多精彩文章请关注微信公众号"Android经验分享":这里将长期为您分享Android高手经验、中外开源项目、源码解析、框架设计和Android好文推荐!