- 博客(63)
- 收藏
- 关注
原创 linux ubuntu Unable to locate a development device; please run 'flutter doctor' for information
0. 序言配置环境这种小事,看似小,有时候还是很浪费时间的,我这里是Ubuntu操作系统,Mac Os和Windows相似,参考下也能很快配置好。1. 问题首先下载好了Flutter的SDK,然后在AndroidStudio上安装好了Flutter和Dart的插件,JDK也配置好了,重启,创建Flutter项目,运行报以下错误:Unable to locate a development...
2019-03-15 17:21:05 3693
原创 解决 Unable to resolve dependency for ':app@debug/compileClasspath 问题
0. 序言可能你比较快就解决了标题上的问题,但是对于我来说搞了两个小时,才解决。希望我这篇文章能让你更快的解决这个问题,把工作重点放在开发上。1. 问题所在当我创建一个默认项目后,我想导入以下代码:implementation 'com.squareup.okhttp3:okhttp:3.13.1'但是我发现报了标题中的错误,而我打开VPN(并非AndroidStudio的代理),却...
2019-03-13 14:07:20 14395 2
原创 LruCache-实现内存缓存的优秀算法
1. 基本概念LRU是计算机科学经常使用的一种近期最少使用算法。2. 核心思想当缓存满时,会优先淘汰那些近期最少使用的缓存对象。3. 具体原理LruCache是一个泛型类,它内部采用的是一个LinkedHashMap以强引用的方式存储外界的缓存对象,其提供了get和put方法来完成缓存的获取和添加操作,当缓存满时,LruCache会移除较早使用的缓存对...
2018-03-30 10:26:04 750
原创 Bitmap-让图片加载更高效
0. 效果图1. 基本概念Bitmap(位图)是Android系统中图像处理最重要的类之一。Bitmap可以获取到图片的信息:高和宽的像素值以及总的像素值、alpha像素值等。Bitmap获取到图片信息后,可以对其进行裁剪、缩放等操作。Bitmap可以通过一个Bitmap创建新的Bitmap。总之:Bitmap为我们程序员提供了对图像文件的操作支持。(就像File类为我们提供...
2018-03-04 14:53:17 454
原创 Genymotion-Android开发效率提高必备工具
0. 序言模拟器浪费时间?真机不浪费时间?实则优秀的模拟器不但不浪费时间,反而节省时间;有些真机还真的浪费时间,不举例实在太多类型的。真机的不便之处举例: oppo R11 debug模式无法正常编译安装,每次安装需要输入oppo 密码;vivo每次编译运行还必须页面点击安装才能正常编译运行,等等。最好的办法就是用Gnenymotion模拟器开发,用真机后期做适配开发。1. 下...
2018-02-22 15:54:00 392
原创 Freeline让AndroidStudio编译飞起来
0. 序言Android项目随着需求的增多,整个体积越来越大,AndroidStudio编译越来越慢!少则几分钟,多则十几分钟!为了提高效率,早下班,Freeline绝对是Android开发者的必备利器!今天周末,大家周末愉快!1. Freeline是什么Freeline 是 Android 平台上的秒级编译方案,Instant Run 的替代品!2. Freeline
2018-02-04 10:42:23 459
原创 Java基础之反射
0. 序言这里只讲解关于反射的基础知识,以后会补充更多的扩展知识,毕竟是基础系列。1. 类的加载概述当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。加载 就是指将class文件读入内存,并为之创建一个Class对象。任何类被使用时系统都会建立一个Class对象。连接 验证 是否有正确的内部结构,并和其他类协调一
2018-01-28 17:27:16 240
原创 自定义控件之带进度的横向和圆形进度条
0. 效果展示1. 为什么要自定义控件特定的显示风格(适用于进度条)处理特有的用户交互优化布局封装等2. 如何自定义控件自定义属性的声明和获取测量onMeasure布局onLayout (ViewGroup)绘制onDrawonTouchEvent (处理交互)onInterceptTouchEvent(ViewGroup 拦截事件)状态的恢复与保存
2018-01-21 23:06:59 553
原创 VideoView实现安卓视频播放
1. VideoView简介Android实现视频播放主要是使用VideoView类来实现的。VideoView背后是使用MediaPlayer来对视频文件进行控制的。只支持mp4、avi、3gp格式的视频,支持格式单一。2. VideoView常用方法:setVideoPath:设置要播放的视频文件的位置start:开始或继续播放视频pause:暂停播放视频res
2018-01-07 17:26:07 2057
原创 PermissionsDispatcher
本篇文章介绍了PermissionsDispatcher框架的使用方法。它是我用过代码解耦最好的关于6.0运行时权限的封装。
2017-12-02 16:31:34 276
原创 Scroller
这篇博客详细介绍了Scrollder的实现、解析和原理,阅读后会让你对Scroller乃至整个View体系有一个更好的了解和认知!
2017-11-18 22:49:58 262
原创 Android帧、补间、属性动画
这篇博客介绍了Android中动画的帧动画、补间动画、属性动画。至于VectorDrawable(Android5.0)后期会单独更新博客讲解。
2017-11-16 17:54:40 287
原创 RecyclerView常用功能解析
本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 转载请注明出处:http://mp.blog.csdn.net/mdeditor/index/783971741. RecyclerView常用功能普通的上下滑动和左右滑动Grid效果上下滑动和左右滑动瀑布流的上下滑动和左右滑动添加分割线去除最后一个item的分割线添加点击事件增加和删除item添加动画
2017-10-30 20:47:53 1440 5
原创 This Activity already has an action bar supplied by the window decor
This Activity already has an action bar supplied by the window decor的问题所在以及解决方法。
2017-10-08 08:56:33 241
原创 Service
这篇文章讲解了关于普通服务、前台服务、后台服务、服务的生命周期以及关于服务完整的栗子,看完后能对服务有一个完整的认识,希望读完能让你有所收获。
2017-09-30 00:05:08 311
原创 FragmentManager is already executing transactions
FragmentManager is already executing transactions 的问题所在以及出现场景和解决办法
2017-09-24 10:45:55 1012
原创 Android MessageQueue 源码分析
这个改变在处理对象比较时非常重要,因为 == 操作符只比较对象的引用(即它们是否是同一个对象的引用),而 equals 方法则用于比较两个对象的内容是否相等。在 Android 的消息处理机制中,消息并不是直接添加到 MessageQueue 中的,而是通过与 Looper 相关联的 Handler 对象来添加的。如果循环器当前没有待处理的消息,或者所有待处理的消息的执行时间都晚于当前时间(即它们还没有到被处理的时机),则该方法返回 true,表示循环器当前是空闲的。
2024-07-12 23:12:58 769
原创 android.support.v4.app.FragmentHostCallback.getHandler()' on a null object reference
Attempt to invoke virtual method 'android.os.Handler android.support.v4.app.FragmentHostCallback.getHandler()' on a null object reference的问题所在以及出现的场景和解决办法。
2017-09-24 09:38:19 3034 1
原创 Fragment no longer exists for key f0: index 0
Fragment no longer exists for key f0: index 0的问题所在以及出现的场景和解决方法。
2017-09-24 09:13:41 3397 4
原创 Error:Execution failed for task ':app:compileDebugNdk'.
Error:Execution failed for task ':app:compileDebugNdk'. 的问题所在以及解决方法
2017-09-13 09:41:44 330
原创 adb.exe,start-server' failed -- run manually if necessary
针对 adb.exe,start-server' failed -- run manually if necessary 这一问题做的笔记,以免日后出现更精确查到代码,节省时间。
2017-09-12 09:34:16 1466
原创 一起学Kotlin(4)
今天介绍Kotlin的when表达式、loop、range、list和map入门以及函数和函数式表达式。大家一起学习,一起进步。
2017-08-03 15:09:38 219
原创 一起学Kotlin(3)
今天介绍Kotlin的命令行交互式终端、函数的编写规则、字符串模板、条件控制if和else、字符串比较和空值处理。还在和我一起学习吗?
2017-08-02 16:06:59 234
原创 一起学Kotlin(2)
今天学习kotlin的HelloWorld、变量、常量、快捷键、函数入门和Boolean。今天是第二天,不忘初心,方得始终。
2017-08-01 16:35:41 288
原创 一起学Kotlin(1)
kotlin是Android开发的趋势,每一个Android开发成员都应该从现在开始学习,学习新技术是Android开发人员基本的素质要求,何况是学习新语言。一起学习Kotlin,4个月的时间,遇见更好的自己。
2017-07-31 16:47:11 516
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人