hacjy

笔耕不辍,生命不止!

Java多线程:锁机制Synchronized与Lock

synchronized: 是一个关键字,作用在类或者对象上。一旦线程A获取到锁,B就需要一直等待直到A释放了锁,所以它是不可中断的,这样子影响效率。使用该关键字,不知道是否获取成功获取到锁。是可重入锁,意思是:假如两个方法method1和method2,都用synchronized修饰,然后在m...

2018-10-16 14:05:20

阅读数 45

评论数 0

Android 定位ANR问题

做过Android的同学必定都有遇到过ANR(Application Not Response)问题,一般的做法是去查看traces.txt日志文件。今天刚好有碰到了,就记录下,方便以后查看。 把traces.txt文件复制到电脑上 使用adb pull data/anr/traces.txt命...

2018-10-12 14:20:54

阅读数 466

评论数 0

我的设计模式之路:策略模式

设计模式是老生常谈了,在网络上千篇一律,看的越多越容易混淆,所以最好的办法是自己实现一下,用自己的话总结,这样子我们对它的理解才会深刻,才会将其灵活的运用到项目中。我们以一个场景来展开对策略模式的概念理解。 场景 公司有个老项目,里面涉及到一块关于直播推拉流线路切换的功能。以前的同事呢,估计是...

2018-07-25 17:53:13

阅读数 99

评论数 0

Glide加载hppts图片失败的解决办法,亲测有效

Glide加载https图片报错:javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. ...

2018-07-14 17:14:16

阅读数 1830

评论数 3

启动app白屏的解决办法,亲测有效

在欢迎页的主题中设置window背景图,可以解决启动显示白屏的问题 <item name="android:windowBackground">@drawable/bg_start</item&...

2018-07-10 17:46:55

阅读数 1311

评论数 0

LinkHashMap避免乱序:过滤数据,map存储顺序混乱的问题

使用map存储数据的时候,不能保证顺序的有序性,所以使用LinkHashMap避免乱序的问题 //key为ID,value为PrizeModel LinkedHashMap<Long,PrizeModel> map = new Lin...

2018-05-21 17:38:21

阅读数 993

评论数 0

RecyclerView:动态设置item的占比,多列还是1行

在Adapter中重写该方法:onAttachedToRecyclerView /** * 网格布局,动态设置item的占比 * 如果是2列,返回2,就是item占据1行。 * @param recyclerView */ @Override...

2018-05-21 17:36:41

阅读数 2212

评论数 0

Recyclerview 特别好用的局部刷新item方法

一般列表刷新,会使用notifyDataChanged,会使列表整个刷新,虽然达到了效果,但是不美观。所以,如果可以做到只刷新需要刷新的item就好了。这里就有个特好用的方法,分享给大家。 /** * 更新某一个item数据 * @param nearbyNewAnchor...

2018-05-21 17:30:29

阅读数 4316

评论数 1

Android7.0设置状态栏颜色,显示灰色的解决办法

使用正常方法设置toolbar颜色,状态栏会有灰色蒙版层(在华为mate8测试机有)。所以改用以下方法解决。 if (android.os.Build.VERSION.SDK_INT >= 21) { //解决Android5.0以上,状态栏设置颜色后变灰的问题 ...

2018-05-21 17:22:48

阅读数 1634

评论数 1

Recyclerview列表item设置成等宽高的正方形

第一种方法是动态设置宽高:(亲测有效) //设置item的高度跟随宽度走 ViewGroup.LayoutParams parm = holder.layoutContent.getLayoutParams(); parm.height = gr...

2018-05-21 17:17:58

阅读数 1733

评论数 3

jackson对于默认值不进行序列化

场景 json串中的属性值有些是默认的,那么就不必要传递给服务端了,减少对象序列化为json的时间。 json与对象的转换自然要借助于json工具了,也是我们今天的猪脚:jackson。 gradle配置 dependencies { compile ‘...

2018-04-10 20:27:58

阅读数 681

评论数 0

gradle加入jackson,编译时报错:com.android.builder.packaging.DuplicateFileException: Duplicate files

今天在Android Studio项目中加入了jackson的开发包,编译运行时候,引发了如下的错误: Error:Execution failed for task ‘:app:transformResourcesWithMergeJavaResForDebug’. com.and...

2018-04-10 19:19:58

阅读数 141

评论数 0

有效解决Android SDK Manager无法更新下载的方法

参考自:https://www.cnblogs.com/hackpig/p/8502851.html 实际上,就是修改hosts文件,将地址指向可以ping通的ip,通过ping.chinaz.com网站查找可用的ip地址 以下提供一组可用的IP(如不可用,请自行查找替换哦~) 203...

2018-04-09 20:08:30

阅读数 1920

评论数 0

Error:Unable to tunnel through proxy. Proxy returns "HTTP/1.1 400 Bad Request"

在导入新的项目时,可能会出现Error:Unable to tunnel through proxy. Proxy returns “HTTP/1.1 400 Bad Request”,这个问题主要是因为gradle版本与studio所用的版本不一致导致的,所以我们只要改下gradle的配置路径就...

2018-04-03 10:39:01

阅读数 925

评论数 0

使用AS编译时,报Error:java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException

使用AS编译时,报Error: Error:Execution failed for task ‘:app:transformClassesWithDexForDebug’. com.android.build.api.transform.TransformException: com.a...

2018-04-03 10:33:45

阅读数 346

评论数 0

thrift入门-Android

1、什么是thrift? thirft是Facebook公布的一款开源跨语言的RPC框架。 thrift通过一个中间语言IDL(接口定义语言)来定义RPC的数据类型和接口,这些内容写在以.thrift结尾的文件中,然后通过特殊的编译器来生成不同语言的代码,以满足不同需要的开发者,比如可以生成j...

2018-03-29 16:34:33

阅读数 459

评论数 1

Android Studio导入新项目,gradle报 read timed out的情景之一

我使用Android Studio3.0导入新项目时,gradle报 read timed out的情景之一: 由于项目的sdk没有使用自己下载的jdk1.8,而是使用AndroidStudio默认的jre目录,所以导致这个问题 。只要修改下jdk路径就好: 但是改完后,这个问题是解决...

2018-03-26 09:46:09

阅读数 31268

评论数 1

小程序自定义组件

小程序基础库版本1.6.3开始,小程序支持简洁的组件化编程,由于小程序不支持状态管理模式,导致组件之间耦合程度比vue的低(自定义组件套自定义组件,如果自定义组件要触发界面方法,必须一层一层回调)。 创建自定义组件 类似创建page界面类似,右击选择创建compents,默认创建四个文件:.j...

2018-03-19 09:24:36

阅读数 821

评论数 1

微信小程序video控件的使用

微信小程序video控件的使用 微信小程序video控件的使用 一、简介 二、属性 三、相关实现api 1、wx.createVideoContext 2、videoContext对象 四、代码实现 实现效果,如下图 实现原理: 一、简介 vide...

2018-03-19 09:09:18

阅读数 15197

评论数 4

微信小程序开发注意点

微信小程序开发注意点 微信小程序开发注意点 1、虚拟机和真机上的运行环境的差别? 2、动画效果的实现? 3、事件的传递? 4、事件上target和currentTarget的区别 5、修改版本号及版本号适配 6、wxs的使用? 1、虚拟机和真机上的运行环境的差别?...

2018-03-19 09:08:29

阅读数 100

评论数 0

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