
Android
文章平均质量分 92
Android学习笔记
jieqiang3
霸业成天府,王侯从根苗。洁身心自好,强者冲云霄。
展开
-
flutter Android编译打包全过程解析
文章目录settings.gradle根目录build.gradleapp/build.gradleFlutterPlugin本篇主要讲解一个flutter工程是如何编译打包成一个apk的。注意:这里我们是一个空的flutter项目,然后引入了一个webview-flutter的plugin来模拟一个plugin是如何一起打进去的。flutter版本:2.4.0-5.0.pre.145settings.gradle因为最终产物是apk,所以其实总体上走的还是安卓编译,所以我们先来看settings原创 2022-03-15 22:13:00 · 9071 阅读 · 0 评论 -
实现蘑菇街首页效果
打算出一个系列,专治现在市面上各种app的各种滑动不服系列,解决各种滑动冲突问题,现在已经发现了9种样式,打算一个一个一一破解,这是第一篇。今天给大家带来的是高仿蘑菇街的首页,现在这种页面的格式很流行,一般都用在首页上,能够很好的利用手机屏幕的空间,毕竟手机屏幕就这么一点点大,想要放很多东西呢,这种布局方式还是很不错的。先看一下效果:点击打开链接说一下思路:其实思路很简单,把所有控件都...原创 2016-02-20 00:19:50 · 3725 阅读 · 2 评论 -
用Indef和StringDef代替枚举
最近一直在了解一些性能优化上的知识,有一条是这样的:不要过多的使用枚举,枚举占用的的内存空间比整型大。那不使用枚举,那怎么搞呢?首先,我们要清楚,枚举有什么用。知道枚举的用处以后我们才能根据它的用处来代替它。看一下这里:http://docs.oracle.com/javase/tutorial/java/javaOO/enum.html,有这么一段话: An enum typ...原创 2016-01-15 13:28:41 · 2452 阅读 · 0 评论 -
列表优化
实际开发过程当中,我遇到了这样的问题,listview一个item里面有一个大的banner图,banner图上又盖了个10%透明度的蒙层(为了如果banner图是白色的那种,让标题的字显示出来),还盖了各种各样的图(要根据类别判断显示或隐藏),底下还有很多标题,按钮,还包括两个自定义的viewgroup(在adapter里面不断的往布局里填充或者移除控件),等等等等。。。。相...原创 2016-01-08 10:07:13 · 404 阅读 · 0 评论 -
有很多类似控件的时候点击事件的处理
最近总想静静地写点什么东西,肚子里又没什么墨水,写不出什么小说啊什么的,又想整理下自己以前写过的代码,学习到的干货,以前的这些东西都总结在印象笔记里,那我就把这些笔记都整理成博客好了,也希望各位大神们看到了能在评论里给我指出一些存在的问题,前段时间碰到一个需求,一个界面上有很多标签种类,然后点击各自的标签,进入相同activity,activity里调用各自标签下的id的网络请求显示数据,见效...原创 2016-01-07 16:12:00 · 820 阅读 · 1 评论 -
Android apk读取资源文件过程详解
Android资源热修复详解第二篇,Android apk读取资源文件过程详解原创 2019-03-16 00:12:11 · 6358 阅读 · 0 评论 -
WebRTC实时通信协议详解
这篇主要来讲WebRTC实时通信协议,协议原理以及在Android中如何实现。原创 2019-05-07 00:21:56 · 30034 阅读 · 2 评论 -
Android Hook技术详解
代理模式详解,动态代理原理分析,Android Hook技术详解以及其在插件化,性能优化上的一些案例分析。原创 2019-05-24 01:53:31 · 7471 阅读 · 3 评论 -
Android Hybrid优化方案详解
这篇主要来探究如何优化Android app中webView加载速度,提出了几个不同方案,优化Android Hybrid。原创 2019-05-22 23:05:10 · 565 阅读 · 0 评论 -
AS cMake编译生成.so详解
Android Studio cMake生成.so过程详解原创 2019-05-30 01:03:17 · 1039 阅读 · 0 评论 -
深入理解SharedPreferences
最近在研究app性能优化,发现自己现在在做的app的线上环境的bugly中发现有些是SharedPreferences造成的app卡顿现象,因此基于这个场景对SharePreferences进行了深入探究原创 2019-08-11 00:35:44 · 539 阅读 · 0 评论 -
深入探索Android Bitmap优化
对于Android内存优化,永远也绕不过Bitmap优化,作为Android中最能吃内存的对象之一,我们今天来深度剖析,从多个层面多个角度来优化bitmap。原创 2019-08-13 00:49:44 · 594 阅读 · 2 评论 -
仿蘑菇街首页升级版
最近实在是太忙了,已经很久没写了,感觉再不逼下自己,新年订的每个月写至少1-2篇的计划3月份就要被打破了,这样可不好。上次写了一篇仿蘑菇街首页的demo,用的是自定义了一个ViewGroup的方式,然后又当爹又当妈,写了自己写了滑动,又写了事件的分发拦截,真的是,要写的东西太多了,而且相对也比较的复杂。今天打算实现基本相同的效果,为了方便起见,把ViewPager换成了RecyclerView...原创 2016-03-23 15:42:41 · 1094 阅读 · 0 评论 -
Android渐变标题栏的实现
Android4.4以上推出了Toolbar,改变程序的style属性就可以给手机的标题栏填充颜色,可以是你设置好的系统的主题色,也可以是自己填充的颜色,其实这个效果在iOS早就有了,但在Android中还是很少见的。在iOS中,最常见的Navigationbar的效果就是一个转场动画(多出现于两个界面切换的时候),一个就是随着手势滑动背景渐变(多出现于详情页)。今天我们就来实现下大多出现于详情页...原创 2016-07-23 21:02:50 · 3862 阅读 · 0 评论 -
最近这段时间开发过程中遇到的一些细节问题汇总
1、测试的时候发现三星note2调用系统照相机报error因为三星在调用照相机以后会重新调用activity的生命周期解决方法:在AndroidManifest.xml里给调用拍照activity加上android:configChanges="orientation|keyboardHidden|screenSize"之前我加的是android:configChanges="orie原创 2016-01-07 16:59:38 · 489 阅读 · 0 评论 -
View滑动冲突解决的套路
前段时间有个需求是这样的,在一个竖直方向的scrollView里我要嵌套一个水平方向的滚动,这就出现了滑动冲突的问题,滑动冲突问题的出现,简单来说,就是View的事件分发机制原理的应用,我要做出判断,当用户往水平方向滑动的时候,外层的竖直方向的ScrollView就要对事件进行不拦截,把事件传递给子view也就是水平方向的滚动中,把事件交给他处理;当用户往竖直方向滑动的时候,外层的竖直方向的Scr...原创 2016-01-12 22:44:30 · 473 阅读 · 0 评论 -
Android Nexus私有库搭建
相信很多人都发现了,github上很多优秀的开源项目都是以一种组件化的方式来写的,都是直接通过gradle的compile把一个jar包或者aar包引用过来供项目里的代码来使用的。这其实就是把你写好的一个模块放到私有库上,然后直接引用的道理。那么肯定会有很多人有这样的疑惑:AndroidStudio里不是有一个module的概念吗,module不仅可以在其他项目里复用,我只要import一下就可以...原创 2016-08-29 23:19:17 · 2074 阅读 · 2 评论 -
Android资源编译和打包过程分析
这一篇是我们Android热修复学习深入分析的第一篇。学习总纲计划可以看上一篇文章[总纲](https://blog.youkuaiyun.com/jieqiang3/article/details/84561534)首先我们先来分析资源修复相关知识。资源修复的过程基本可以分析为这么一个过程:原创 2019-01-20 23:29:32 · 4823 阅读 · 4 评论 -
Android热修复原理简要介绍和学习计划
在当今Android 开发中,出现了很多热修复框架,也有很多开发者将热修复放入到自己的app中,以达到如果遇到线上bug的时候不需要重新发版本的效果。原创 2018-11-28 00:13:10 · 865 阅读 · 0 评论 -
开源项目绑定生命周期的一些思考
Android生命周期,这是一个老生常谈的问题。相信这是所有初入门Android的朋友们的第一节必修课。当然这篇文章写的不是什么生命周期函数,lauchMode这种问题。这篇文章我想写的是关于一些常用的开源框架在生命周期上巧妙的一些用法总结与一些思考,通过对一些常用的开源框架源码的思考与总结,将来工作的时候如果出现一些问题的时候我觉得能给你带来不一样的启发。进入页面时的异步操作绑定生命周期的思...原创 2018-04-08 00:32:29 · 1129 阅读 · 0 评论 -
Android Monkey压力测试
作为一个客户端开发者选手来说,了解熟悉一些测试技巧还是很有必要的。最近这段时间特意去钻研了下当下比较流行的一些测试框架。这一篇先来讲讲Monkey以及与之相关的MonkeyRunner。那么Monkey到底有什么用处呢?来看官方解释:The Monkey is a program that runs on your emulator or device and generates pseudo-ra原创 2017-08-31 15:04:12 · 2935 阅读 · 0 评论 -
Glide缓存源码解析
上一篇讲了Glide加载图片的整个流程的源码的解析,写了很长,因为Glide的源码比较复杂,没看过的朋友,可以去看一下:http://blog.youkuaiyun.com/jieqiang3/article/details/76599815。因为上一篇文章篇幅太长的缘故,所以,缓存这一块就打算另起一篇了说了。。ok,废话就不多少了,进入正题。原创 2017-08-16 00:39:20 · 976 阅读 · 0 评论 -
Glide加载图片流程源码解析
网上Glide源码解析的资料比较多,而且鱼龙混杂,都比较简单。那我就自己跟一遍源码吧,首先先来捋一遍Glide的具体用法,从具体用法出发我们再来分析Glide内部都是怎么来实现这些方法的。这是我从网上找来的Glide的主要功能示意图,这张图一目了然的显示了Glide能实现的功能。原创 2017-08-07 23:20:08 · 1251 阅读 · 0 评论 -
最全面的RecyclerView源码解析
相信很多人用RecyclerView已经很久了,但还是不得不感叹 RecyclerView的强大,性能、扩展性等方面都很强大。网上看了很多源码方面对RecyclerView,觉得还不够全面,而且自己不走一遍源码总感觉会很容易忘记。 打开RecyclerView类,发现有11090行代码,千万不要震惊,慢慢看。 整体看了下RecyclerView的架构,你会惊奇于这个优雅的设计,高度解耦,灵活性...原创 2017-04-04 23:12:56 · 8184 阅读 · 2 评论 -
锁屏页滑动控件
先看下要实现的效果: 效果链接地址 这是我实际开发一个项目中的效果,这里我就只抽取出锁屏页的滑动控件,其实滑动控件搞出来了其他效果都是easy的,滑动控件才是重点。准备工作Android中关于View的位置参数相关的知识点还是挺多的,而且比较容易搞混,所以在自定义View前我觉得有必要把基础的知识理一遍。View有4个属性:top、left、right、bottom top指的是左上角的纵坐标原创 2017-03-30 11:05:03 · 982 阅读 · 0 评论 -
探究MVVM
原文链接MVVM模式的意思是Model-View-ViewModel,这是另一种可以将View层与逻辑层代码分开的软件开发模式,尤其在Android上,可以将Android代码和其他代码分开。翻译 2017-01-05 16:43:19 · 396 阅读 · 0 评论 -
探究MVP
原文链接这是一篇写给那些听过MVP但是不是很清楚怎么去选择正确的使用方法的朋友。我们将从一个实现了API接口的MainActivity开始,将MainActivity上的逻辑迁移到MVP模式中。翻译 2016-12-29 14:07:27 · 344 阅读 · 0 评论