- 博客(19)
- 资源 (1)
- 收藏
- 关注
原创 zsh: command not found: gradlew的问题
手动执行项目根目录下的gradlew文件:打开gradlew文件,Run File
2021-12-09 09:47:40 6290
原创 Rxjava2.x使用源码分析杂记
1.RxJava2.x基本使用 1.1 Observable被观察者创建: Observable<String> stringObservable = Observable.create(new ObservableOnSubscribe<String>() { @Override public ...
2020-02-26 22:30:46 210
原创 ART双亲委托机制杂记
1.ART双亲委托机制: PathClassLoader,DexClassLoader --继承自--> BaseDexClassLoader --继承自--> ClasssLoader protected Class<?> loadClass(String name, boolean resolve) throws Clas...
2020-02-24 11:46:55 161
原创 Hook一键换肤简略实践项目底部tab的图片修改
Hook一键换肤Hook是啥 Hook的原理以及源码分析 Hook代码实现 1.01 Hook以及hook一键换肤 Hook是什么 Hook别名钩子函数,在系统执行函数之前拦截函数并且执行自己的函数,这个过程又叫hook点,实现技术分别有两种利用系统提供的接口,自己实现该接口并将执行代码注入到系统中 动态代理 Android中的hook换肤 ...
2020-01-08 19:26:30 352
原创 AspectJ切面实现Android权限请求框架
实现思路:搭配AspectJ切面思想,对需要请求权限的方法进行拦截修改(Around语法),Around语法的作用主要是用来修改需要切入的方法以及方法的参数,参照这一便利,我们在定义的切面方法中新启动一个透明主题的activity作一个权限请求的统一处理的界面,搭配EasyPermissions权限请求框架,这里作为方便,其实完全可以应业务要求自己封装,我们可以在将请求权限的结果作为方法...
2019-11-21 17:27:29 367 1
原创 python3 对文件进行写入操作 出现write() argument must be str, not bytes 异常
此时运行报错如下:表明写入参数不匹配。这是由于python3默认存储方式是二进制方式存储,而之前open打开创建文件的时候使用的是‘w’方式,‘w’对应的存储方式是str形式的方式。将代码修改存储方式为‘wb’即可解決冲突问题!...
2019-06-06 17:28:46 5469
原创 window下pip按住安装Django出现错误提示 socket.timeout: The read operation timed out
执行pip install Django命令出现如下错误提示:Traceback (most recent call last): File "d:\learning_blog\ll_env\lib\site-packages\pip\_vendor\urllib3\response.py", line 360, in _error_catcher yield File "d...
2019-06-01 12:04:16 1113
转载 python Django虚拟环境搭建创建数据库
转自:https://www.cnblogs.com/sui776265233/p/10174646.html
2019-05-31 14:57:41 204
原创 设置activity主题theme以及沉浸式之类的操作为啥放置再setContentView之前执行
1.从setContenView入口看源码 ----> installDecor ---> generatorDecor generatorLayout(改方法中读取manifest中对activity设置的主题以及对window的一些其他操作,比如window背景透明等等) --->返回id为content的顶层控件framelayout...
2019-05-14 10:41:49 375
原创 LifeCycle初识
LifeCycle的学习笔记1.LifeCircle定义:Lifecycle是Android Architecture Components(之后简称AAC)的一个组件,用于将系统组件(Activity、Fragment等等)的生命周期分离到Lifecycle类,Lifecycle允许其他任意类作为观察者,观察组件生命周期的变化。如activity中:getLifecycle(...
2019-04-24 16:32:45 371
原创 keystore打包签名问题
若遇到给的keyPassword 不对 则可以直接使用命令查看keystore信息:keytool -list -v -keystore keystore名 -storepass keyPassword密码若keyPassword 则会正确打印:若keyPassword错误:...
2019-04-18 10:52:05 326
原创 单链表冒泡排序
单链表的存储原理,简单易懂,head为头节点,他不存放任何的数据,只是充当一个指向链表中真正存放数据的第一个节点的作用,而每个节点中都有一个next引用,指向下一个节点,就这样一节一节往下面记录,直到最后一个节点,其中的next指向null。而双链表相对于单链表的存储区别在节点不仅有一个next引用,还有一个pre引用指向上一个节点。数组的优点:随机访问性强查找速度快数组的缺点:...
2018-12-21 10:57:52 1621
原创 自定义SeekBar,继承自view
之前项目中由于滑块功能需要的SeekBar是继承自AppCompatSeekBar,发现坑还是蛮多的,所以自己简单撸了一个。想法很简单:判断view的touch事件,move事件时候绘制滑块按钮和进度 。然后分别在down move up事件中仿照seekBar的回调一次把onStartTouch-onProgressChange-onStopTouch回调出来。具体代码如下:packa...
2018-11-15 15:58:50 418
原创 自定义手机验证码输入框
类似上图,几个输入框横线排列。具体思路:使用linearLayout 横向添加几个ediTtext,第一个首先获取焦点,当输入完成第一个,焦点依次传递到下一个,如果是键盘删除按钮删除,判断当前获取焦点的输入框是否有内容,如果有内容则清空内容,如果无内容那么焦点往前一个输入框传递。关于动态修改光标的样式,EditText没有提供api,那么一想肯定就是反射了,代码如下:/** * ...
2018-10-19 15:10:42 471
原创 实时更改SeekBar进度条颜色及样式
公司需要如上图这种样式的SeekBar,写项目时 觉得SeekBar自身就有设置按钮样式,改变进度条颜色的api,但是实际使用中存在几个问题:1.seekBar的按钮thumb默认是thumboffset=0,按钮在seekBar左边是只能显示一半。2. 每次通过setThumb()改变按钮图片,thumbOffset每次都会被重置为0 。 3.progress 并不能动态充...
2018-10-19 14:57:35 2307
原创 Android中关于SeekBar禁止点击的处理
最近公司关于滑动验证码的需求,SeekBar滑动与验证码滑块联动,SeekBar在点击时候图标也会作一段距离的移动,这在很多时候是对应不上需求的,在网上查了一些资料发现都不是很好控制,效果也不太好,自己就是想在SeekBar的点击事件DOWN中获取当前时间的X坐标与SeekBar的滑块Thumb的位置比较,具体SeekBar滑块的位置获取如下:这个是滑块矩阵位置的left与right坐标,如果...
2018-09-19 17:09:34 4258 2
转载 tcp/ip socket通信协议
1、TCP连接TCP(Transmission Control Protocol) 传输控制协议。TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握确认建立一个连接。位码即tcp标志位,有6种 标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(ur
2017-08-28 17:24:00 639
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人