模仿大众点评,通过微信扫一扫直接打开本地安装的大众点评,如果没安装就跳转到下载界面 下边是大众点评的跳转页面: <html> <head> <meta name="viewport…
Android Canvas 硬件加速引起的clipPath失效问题
自定义View时,可以通过Canvas裁剪画布实现圆角的效果。 @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); path = …
Android 7.0 隐式广播-监听网络变化
Android7.0前,Android系统前网络切换时,会发广播,业务只要监听广播即可。 public class NetChangeReceiver extends BroadcastReceiver { privat…
android的MessageQueue.IdleHandler
MessageQueue内部有个IdleHandler接口,具体定义如下: /** * Callback interface for discovering when a thread is going to block…
Material Design遇到的坑
Toolbar使用 (1) 默认Toolbar中的title、logo都是居左的,如果要改成居中,只能自定义Vie…
Retrofit2.0结合RxAndroid实现二次封装
实Retrofit2.0结合RxAndroid现网络请求网上有很多文章,这里不再详细介绍 Retrofit基本是一个业务请求…
Retrofit2.0上传图片
正常使用Multipart方式上传图片 第一种上传单个图片,第二种上传多个图片 @Multipart @POST(ACTION_URL) Observable<ResponseBody> uploadFile…
Android中Activity启动源码分析
今天工作中,想监控Activity加载时间,同事给提供了两种方式。 1、在onCreate和onPostResume方法中记录时间 2、在onCreate记录开始时间,并创建Handler,调用post方法,在post中…
Gradle 配置debug和release工程目录
Android开发中有时会遇到根据debug或release设置不同内容的情况 比如跳转到H5的链接地址,如果通过代码判断很麻烦,这时就可以使用下面的方式 1. 创建debug、beta、release文件夹结构 2. …
自己动手实现Android App插件化
Android插件化目前国内已经有很多开源的工程了,不过如果不实际开发一遍,很难掌握的很好。 下面是自己从0开始,结合目前开源的项目和博客,动手开发插件化方案。 按照需要插件化主要解决下面的几种问题: 1. 代码的加载 …
EventBus的坑
EventBus是一个Android端优化的publish/subscribe消息总线,简化了应用程序内各组件间、组件与后台线程间的通信。比如请求网络,等网络返回时通过Handler或Broadcast通知UI,两个Fr…
Java数据结构和算法(六)——前缀、中缀、后缀表达式
前面我们介绍了三种数据结构,第一种数组主要用作数据存储,但是后面的两种栈和队列我们说主要作为程序功能实现的辅助工具,其中在介绍栈时我们知道栈可以用来做单词逆序,匹配关键字符等等,那它还有别的什么功能吗?以及数据结构与本篇…