自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 线程池记录

线程池集成关系,以及创建线程池构造参数说明1:Executor—>ExecutorService—>AbstractExecutorService—>ThreadPoolExecutor创建线程池是通过ThreadPoolExecutor 创建的public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize,

2020-10-21 11:08:43 326

原创 2020-10-09

gralde语言配置多模块依赖库方便统一管理step1: 在project目录下新建一个gradle文件名字随便比如config.gradle 文件的全部内容用ext{} 包含起来,如下ext { android = [ compileSdkVersion: 30, buildToolsVersion: "30.0.2", minSdkVersion : 19, targetSdkVersi

2020-10-09 11:15:28 96

原创 App性能优化-app启动时间消耗获取

App性能优化-app启动时间消耗获取方式-tracing我们平常做app到一定的量产阶段就要考虑到性能优化这块,尤其是用户的第一感官app启动时间优化,那么我们怎么知道一个application或者activity中某个方法消耗了多长的时间.tracing可以非常好的定位到.例如我自定义一个Application,然后在onCreate方法中定义两个耗时方法一个是500ms,一个是300ms,然后使用Debug.startMethodTracing(“launcher_tracing”) 和Debug.

2020-09-28 10:13:46 183

原创 gradle语法管理android studio项目配置信息

gradle 初级语法试用有时候为了让android studio工具能方便的管理工程.我们一般采用gradle语法来操作可能会更加的方便.(更好的管理发布版本)step1 我们在根目录下面创建一个config.gradle文件(和根目录的 build.gradle同级别)ext { androidId = [ compileSdkVersion: 2...

2019-12-24 11:03:59 128

原创 手写handler原理实现

基于上篇文章研究了handler的源码(handler核心原理),自己想手动写下handler实现原理代码,项目结构如下:,自己写了个单元测试来模拟ActivityThread的启动,下面是ActivityThread中的main测试方法; @Test public void main(){ //创建looper Looper.prepare(); ...

2019-12-13 10:10:41 172

原创 研究Handler源码心得

1:初始化,子线程和主线程通讯流程分析1:Looper的初始化有两种,一种是prepareMainLooper()和prepare(),prePareMainLooper是在主线程中创建的Looper,是在ActivityThread的main方法中初始化的 public static void main(String[] args) { ...省略一些代码 Loo...

2019-12-11 16:03:24 107

原创 EventBus框架核心原理

EventBus 框架解耦和核心原理(事件总线,订阅,取消订阅,解耦,根据自己看源码的理解手写一个简洁版的EventBus)下面是EventBus类的核心代码 /** * 注入对象(将对象添加到事件总线中去) * @param obj */ public void regist(Object obj) { ...

2019-10-10 10:57:48 150

原创 依赖新的库之后android studio编译报错

今天上午依赖了新的recycleView这个库之后发现android studio编译失败,折腾了一番,以后在遇到这样的问题我是可以很快的解决了 ,在这里分享出来给大家遇到同样问题的朋友.下面我先展示报错的图片信息.下面看这两个依赖 compile 'com.android.support:appcompat-v7:25.3.0' compile 'com.android.suppo

2017-10-20 18:11:36 399

原创 你想要的下拉刷新和上拉加载框架

screenshot Step 1. Add the JitPack repository to your build file Add it in your root build.gradle at the end of repositories: allprojects { repositories { ... maven

2017-09-08 14:34:29 343

原创 一款用于文件上传和下载倒计时功能的圆形进度条

screenshotimport step1. Add it in your root build.gradle at the end of repositories: allprojects { repositories { ... maven { url 'https

2017-09-07 10:31:13 495 2

原创 使用表情过滤工具在魅族手机和华为手机上会报错的问题

前言:最后客户反馈过来一个问题说是在华为mate7 和 魅族手机上出现在26键编辑模式下程序会崩溃,我在公司用的是小米的测试机,所有就从来都没有遇到这样的情况.我的小米的手机的输入情况如下图,这样的情况是不会报错的.但是华为的手机和魅族的手机会在输入框中也显示你正在输入的内容就导致我在使用表情过滤的监听里面会出现获取到的字符串的数量出现偏差.我的表情过滤工具类是这样写的/** * 输入帮助类 *

2017-08-22 16:47:18 622

原创 融云自定义消息通知栏显示

融云自定义消息通知栏显示第一步 首先要注册个自定义的广播,代码如下:public classCharNotificationReceiverextendsPushMessageReceiver {@Overridepublic booleanonNotificationMessageArrived(Context context,PushNotificationMessage message) {

2017-08-04 08:48:37 3177 1

原创 仿ios开关

带有阴影选择,开关背景颜色的选择效果 [github]: https://github.com/yanjiabin/SwitchViewstep1 在project目录的build.gradle的allprojects节点添加 maven { url "https://jitpack.io" }step2 在自己Modul的build.gradle中添加dependencies {

2017-08-04 08:47:43 209

原创 多渠道打包

最近看见有些人问我一些关于多渠道打包的问题,现在有时间就总结一点心得吧。另外我喜欢按照步骤来实现这样看起来有条理一些。 一:市场上多渠道打包的工具无非两种 第一种就是百度,第二种就是友盟。我在这里就以友盟为例,百度跟这个也是差不多。 二: 首先你必须在AndroidManifest.xml中的meta-data修改以下的样子: 第一个value不用多说在

2017-03-22 14:29:48 230

原创 关于git服务器的使用

准备工作: 下载的软件包括gitblit和sourcetree 当然也可以使用Git命令,我这里使用的sourcetree 图形化的工具 一 : 解压gitblit软件,在bin目录下面打开gitblit.cmd,然后在浏览器中输入https://localhost:8443 二:默认的登录都是admin密码也是admin。在git的主页新建一个版本库,然后就是新建用户的账户信息和权限(权限一

2017-03-22 14:00:08 420

原创 关于动画的总结

关于动画的总结 一:补间动画:指的是TranslationAnimation,AlpahAnimation,ScaleAnimation,RotateAnimation; 缺点:并没有真正持久改变View的属性,就是说它内部没有一个去记录动画行为的机制;帧动画:指的是一帧一帧播放的动画 实现:通过animation-list来实现,写法如下:

2017-03-22 11:15:43 323

原创 微信登录那点事

微信登录那点事不久之前做过微信第三方登录,过程之后也遇到一些困难。在这里就把我做的过程给记录下来。 准备工作: 公司在微信开放平台注册项目的时候的APPID和APPSECRET(一般这个东西都是公司的运营部门去申请的)第一步 :在app的gradle下面 (现在有没有更新就不太清楚,可以去微信开放平台上面去看 还有混淆我这里就粘贴了) compile ‘com.tencent.mm.op

2017-03-22 11:10:13 996

空空如也

空空如也

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

TA关注的人

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