背景 前一篇文章,我们讲ContentProvider的启动流程[启动] ContentProvider启动流程[//www.greatytc.com/p/6591...
背景 前一篇文章,我们讲ContentProvider的启动流程[启动] ContentProvider启动流程[//www.greatytc.com/p/6591...
前言 Android架构演变:MVC、MVP、MVVM、MVI。 新技术层出不穷,架构一天一个样。像我这种懒惰又不自律的人,能学习上最新的技术,就已经佩服我自己了。 所以造轮...
1 volatile是什么? 它是Java提供的一种轻量级的同步机制。与synchronized修饰方法,代码块不同,volatile只用来修饰变量。并且与synchroni...
WebRTC安卓端没有官方教程,甚至连API文档都没有。这是一件奇怪的事,毕竟WebRTC是Google开发的。目前官方文档和Demo都只有web端的,虽然写得简单易懂,整体...
1.重启 2.推文件到Android 3.ADB启动指定Activity 4.获取当前存活的Activity的信息 5.查看当前显示的Activity的完整类名 6.清除指定...
线上监控的方案 1、BlockCanary 从Choregrapher中可以知道,帧的渲染是通过消息发送到主线程执行的。所以通过在计算msg的处理时间就可以判定是否发生卡顿。...
在日常 业务开发当中,我们肯定会有关于新手引导的需求。我们怎么快速实现呢?这里推荐一个快速实现的框架。 NewbieGuide 这是一款可以通过简洁链式调用新手引导层的库,一...
Android 12 发布已经有 4 个月了,而且随着各大市场对应用适配的要求逐渐提高,小菜也尝试将一个历史的应用简单升级适配 Android 12; Android 12 ...
明天是12月23号,研究生招生考试的日子,明年今日,就是我进考场的前一夜。2017这一年,自己重拾了读书写作的爱好,并把它当做一个习惯,一种生活方式,不知不觉中竟然也读了上百...
前言 在Andrroid开发中,网络请求十分常用 而在Android网络请求库中,Retrofit是当下最热的一个网络请求库 今天,我将献上一份非常详细Retrofit v2...
如果你觉得我的评论有用,欢迎打赏
有什么料? 进一步理解多线程场景下会出现的问题; 学会正确处理并发操作中的通讯和同步。 现在,多了解些线程吧 在日常开发中,线程常常被用作为提升程序效率的重要手段。在Coor...
首先展示效果如下: 本demo使用的是rxjava2, rxjava1也是可以使用的;主要核心代码如下: 1.创建个listener 2.获取上传进度 3.添加拦截器 4.使...
本篇文章已授权微信公众号code小生发布转载请注明出处://www.greatytc.com/p/0d263a436255 SmartRecom是一款基于行为设别和个...