- 博客(34)
- 资源 (81)
- 收藏
- 关注
转载 Java字节码.Class文件结构分析详解
原址:https://blog.youkuaiyun.com/u011810352/article/details/80316870 前言 我们都知道,Java程序最终是转换成class文件执行在虚拟机上的,那么class文件是个怎样的结构,虚拟机又是如何处理去执行class文件里面的内容呢,这篇文章带你深入理解Java字节码中的结构。 1.Demo源码 首先,编写一个简单的Java源码: package com.ap
2021-02-20 15:24:35
374
1
原创 Android签名机制及PMS中校验流程(雷惊风)
@Android签名机制及PMS中校验流程(雷惊风)网上看到一篇比较好的关于Android签名的文章,但是文章链接不安全,不知道哪天会不会找不到了,而且需要关注才能查看完整版,所以在这里记录一下,原文地址.一、签名机制众所周知,在Android系统中,应用想要安装到设备中,必须要有签名才行,及时是debug的时候,开发工具也会对要运行的应用自动签名,那么我们先来了解一下这个签名究竟是什么。...
2020-04-27 09:56:21
2038
原创 Java网络编程(四):Http与Https相关总结(雷惊风)
一.概念 1. Http:Http英文全称为Hypertext Transfer Protocol,及超文本传输协议,它是当今互联网应用最为广泛的一种网络协议。所有的以WWW开头访问的网站都必须遵循这个标准。设计最初目的是为了实现一种发布和接收HTML页面的方法。美国人Ted Nelson于1960年构思了通过计算机处理文本信息的方法,并称为超文本,成为HTTP传输协议发展的基础。Ted...
2018-07-04 08:30:26
602
原创 Java网络编程(三):HttpUrlConnection与HttpClient详解(雷惊风)
一. 概念。在Android开发中,AndroidSDK中对HTTP提供了很好的支持,主要包括两种接口。 1. 一个是Sun公司提供的库,基于标准Java接口的HttpURLConnection,这个类封装的很少,如果使用高级功能,如重访问/Cookie/Session等就相当不方便。它可以实现简单的基于URL的请求与相应功能。Google在AndroidApi23及以后的版本中推荐使...
2018-06-19 23:14:13
676
原创 Java网络编程(二):Socket编程详解(雷惊风)
一.基本概念。 在UDP/TCP文章中已经说过,在TCP/IP网络模型中,分为了四层,分别是应用层,传输层,网际层,数据链路层,Http是位于应用层的协议,它是基于TCP实现的,TCP是传输层协议,网络层有IP协议,那么我们的Socket在哪呢?它是位于应用层之下,传输层之上的一个接口层,也就是操作系统提供给用户访问网络的系统接口,我们可以借助于Socket接口层,对传输层,网际层以及物...
2018-06-16 01:42:19
565
原创 Java网络编程(一): TCP/UDP详解(雷惊风)
一.网络分层这段时间准备整理一下关于网络编程的一些知识点,准备整理的内容包括,TCP/UDP方向、Socket方向、HttpURLConnection与HttpClient方向、Http与Https方向,有时间的话再分析一个Android三方源码关于网络的封装,如Okhttp或者Volley或者Retrofit其中之一吧,那么今天我们就来看一下第一部分TCP/UDP相关内容,我们先从网络的分层说起...
2018-06-15 09:24:15
305
原创 自定义控件Camera+Matrix实现3D旋转及百叶窗效果(雷惊风)
上篇文章说到了用ViewPager实现3D旋转效果,本篇文章说一下自定义View+Camera+Matrix来实现更炫酷一点的效果,3D及百叶窗效果,其实还可以实现许多其他的效果。最后会将实例代码附在文章最后。先看一下最终实现的一个效果:这里说的Camera并不是相机,而是android.graphics.Camera类,它内部包含一个Matrix,它的源码很简单,也就不到200行
2017-06-29 00:40:44
1824
原创 ViewPager+Fragment+PageTransformer实现3D、视差等多种动画效果(雷惊风)
技术这东西就是需要日积月累的,每天学习一点点新的东西,同时复习一下旧的东西,只有这样,坚持一段时间,你的能力才有可能提高,它不是你到用时再去查,而是平时多注意发现新的东西去研究,发现研究过的东西去复习。今天复习一个小知识点,就是用ViewPager+Fragment+PageTransformer实现滑动动画,很简单,最后我会将源码demo下载地址附上,高手略过啊。首先我们来看一下第一个效果:
2017-06-24 09:11:31
1334
原创 Android实现QQ空间图片下拉变大效果(雷惊风)
当我们打开QQ控件时,向下滑动他头部的图片,你会发现有变大的效果,这个效果实现起来并不难,下面咱们一起来实现一下。 首先我们分析一下,因为QQ空间里除了这张图片下边还有很多我们好友发布的消息甚至是比好友发的消息还多的广告,而且是一条一条的,包含了不同的布局,有的有图片,有的都是纯文本,有的既有文本又有图片等等等等,其实这些就是简单的ListView通过给头部添加包含图片的Header布局,
2017-06-21 01:42:46
3345
1
原创 Android之自定义动画框架实现ScrollView滚动动画总结(雷惊风)
什么是框架呢?肯定是给别人用的,既然要给别人用,我们就需要考虑什么样的框架别人才会用,不会被骂,并且会一直用。想要做到以上这些我们的框架必须功能强大,能够解决我们每一个人开发过程中的痛点,稳定,不会给程序带来负面影响,使用简单,结构清晰,易于理解,最终要的是要易于扩展等等吧。今天手写一个动画方面的框架玩玩,先看一下效果,如下: 效果看到了,一个滚动效果,每一个滚动出来的View都
2017-06-17 02:33:47
3087
原创 Android基础之Jni开发流程详解(雷惊风)
在Android开发中难免会用到Jni开发,首先这是什么东西呢,不由自主的就像搬英文,Java native Interface-java本地化接口,这个东西本来是java的一部分,我们都知道Android上层都是Java写的,内核采用的Linux内核,而Linux内核中绝大多数代码都是用C写的,Native framework层代码是用C++实现的,所以如果我们想要使用framework层C++
2017-06-13 15:26:07
391
原创 史上最简单的自定义控件之单图片实现Button的点击效果(雷惊风)
对于从来没有接触过自定义控件的初学者来说,自定义控件可能不是那么容易,其实有的时候自定义控件并不是那么难,学习这件事本来就是从易到难的,从小学的a、o、e到今年高考的阅读理解《一种美味》是吧;又比如从小学的a、b、c、d到高中的外国天书,唉,不说了,说多了都是泪,恨死了什么李白啊、牛顿啊、阿基米德啊一些不是人的人,害的我们现在只能放弃学文化跑过来撸码,唉,不说了,宫大大(隔壁PHP牛逼同事),给我
2017-06-09 12:52:20
752
原创 关于java中的连等赋值问题(雷惊风)
今天同事在群里突然发了一段Java代码,是关于连等赋值的,代码大致逻辑如下:public class MainTest { public MainTest note; public int i; public MainTest(int j){ this.i=j; } public void println(){ System.out.println(" "+i)
2017-05-27 10:24:39
9084
3
原创 Java实现打印类似蜗牛矩阵(自己起的)效果(雷惊风)
最近同事有了跳槽的想法,接到的面试也不少,今天回来说被问到了一个算法题,题目是什么样的呢?就是要求输入一个数字打印出一个矩阵,比如我们输入的是2,则打印出的矩阵如下:1 42 3 输入的是3打印的矩阵如下:1 8 72 9 63 4 5 输入的是4打印的矩阵如下:1 12 11 102 13 16 93 14 15 84 5
2017-05-24 14:36:26
954
原创 自定义View之MultiStateView根据不同状态显示不同布局的View(雷惊风)
想成为大牛就必须扫清研发道路上的每一个障碍,其中自定义控件这个障碍相信对于初上路者来说就是一个不小的障碍,今天就跟大家一起来一步一步的写一个自定义控件,支持通过设置不同状态在界面上显示不同布局,多用于网络请求,如网络请求失败了显示一种错误提示的布局、请求过程中显示另一种布局,请求回来数据了又是一种布局,服务器没有数据还是不同的布局。先看一下实现后的效果:好了,知道了我们今天要干的事
2017-05-24 11:47:36
3979
1
原创 Handler消息机制源码总结(雷惊风)
1.概述。Handler消息处理机制对于初学者来说,应该算是一块心病,几乎每次面试都会被问到,今天我抽时间从源码的角度总结一下相关知识点。先看一下我们平时是怎么用的,如下代码实例:public class MainActivity extends AppCompatActivity { private TextView text; private Handler mHand
2017-04-06 20:24:51
410
原创 Android中ViewGroup、View事件分发机制源码分析总结(雷惊风)
1.概述 很长时间没有回想Android中的事件分发机制了,打开目前的源码发现与两三年前的实现代码已经不一样了,5.0以后发生了变化,更加复杂了,但是万变不离其宗,实现原理还是一样的,在这里将5.0以前的时间分发机制做一下源码剖析及总结。会涉及到几个方法,dispatchTouchEvent()表示事件开始分发方法,在ViewGroup与View中都有,onInterCeptTo
2017-04-01 11:24:21
1807
转载 Android事件分发机制详解
前言Android事件分发机制是每个Android开发者必须了解的基础知识网上有大量关于Android事件分发机制的文章,但存在一些问题:内容不全、思路不清晰、无源码分析、简单问题复杂化等等今天,我将全面总结Android的事件分发机制,我能保证这是市面上的最全面、最清晰、最易懂的 本文秉着“结论先行、详细分析在后”的原则,即先让大家感性认识,再通过理性分析从而理解问题; 所以,请各位
2017-03-30 19:44:29
478
原创 Java泛型全面解析(雷惊风)
一、概述。 前段时间,有同事说想要了解一下Java中的泛型相关知识,想想自己对泛型也不是特别了解,只是简单的应用而已,作为一个有追求的工程师,怎么能够这个样子呢。正好借此机会,也了解了一下,并抽时间整理出来,也能使自己记得更牢一些。我最后会将后续文章中的代码实例上传到网上供大家下载,并附上下载地址二、知识点。1.概念。 泛型是JDK1.5中引入的,在代码编译期就会对代码进行...
2017-03-13 09:29:18
662
原创 编译时注解Butterknife源码解析之深入篇(雷惊风)
1.概述。上篇文章我对Butterknife实现做了一些基础的说明,本篇文章我将向大家详细分析@BindView、@OnClick解析流程、生成BindingSet对应Java文件流程及我们调用ButterKnife.bind(this)后ButterKnife与生成Java文件的建立连接过程。2.@BindView解析流程。这篇文章将接着上篇文章的findAndParseTarget
2017-03-08 15:10:43
1564
原创 编译时注解Butterknife源码详解之初入篇(雷惊风)
今天是阳历3月8号,在此祝所有女士们节日快乐啊,本来我是不知道今天是节日的,早晨上班,看见领导在群里发红包,这年头,谁还看红包上写的啥,年会开挂抢红包,都没抢多少,二话没说就抢了,后来才看到红包上的内容,祝所有女生节日快乐,男生自觉点...,我也是醉了,文字太长,没看见,最后又加了点钱发回去了。真尴尬,高潮是,我抢了发回去了吧,还有男生抢,都跟我一样啊,看不见嘛。唉,这年头,也是,没办法,看见红包
2017-03-08 12:35:19
994
原创 Java基础之注解Annotation初入篇_雷惊风
最近再看一些Android三方源码库的时候发现很多库都在用注解这个东西,什么EventBus3.0、Jack大神的butterknife,这东西为啥越来越多的人使用它呢?之前没有了解过Annotation的相关知识,正好借这个机会对Java注解做一个深入的了解。今天想着主要先整理一下关于注解比较初级的一些概念与知识,从几个方面总结吧。注解的基础概念、自定义注解、通过反射机制写一个注解处理器处理运行
2017-03-02 14:31:12
817
原创 CircleImageView用法及源码解析(雷惊风)
首先这篇文章我们从以下四个方面进行一一讲解1.CircleImageView在AS中集成及用法;2.CircleImageView中定义的对外的方法;3.源码解析;4.用到的知识点的总计。希望通过本篇文章的学习,您会对自定义控件及自定义控件中用到的一些类有一定的了解,最后我会把我添加好详细注释的Demo下载地址附上,你也可以一边看我的Demo,一边看这篇文章,效果应该会更好,那么,我们这就开始吧!
2017-02-14 18:15:58
15217
2
原创 Android深入源码分析理解Aidl整体调用流程(雷惊风)
2017年开始上班的第一天,老不想工作了,假期感觉还没开始就已经结束了,唉,时间就是这样,新的一年开始了,虽然很不想干正事,没办法,必须干起来,因为后边的路还很长,距离六十岁还很远。刚上班也没什么事,复习一下之前的东西,看了一下Aidl相关的知识,仔细瞅了瞅Aidl的调用流程,这里写篇文章整理一下,帮助大家的同时,自己也加深一下印象。对Aidl不太了解的童鞋可以先看一下我之前的一篇文章,链接如
2017-02-03 20:37:26
3091
1
原创 RecyclerView多种布局封装优化(雷惊风)
今天看见一篇文章,讲到了RecyclerView一些关于加载多种布局样式时通常用法存在的一些问题,下面是文章地址:http://www.jianshu.com/p/c6a44e18badb 这里先看一下通常大多数人的用法,如下:package com.jason.recycleview.lylrecycleviewadpdemo;import android.content.Context;
2017-01-13 10:45:46
2457
原创 Android进程间通讯AIDL使用及问题详解(雷惊风)
之前对AIDL用的不是很多,今天抽时间对其做一下详细的了解,下面本人主要从以下几个方面对AIDL做一下总结:1.什么是AIDL?2.为什么Android中要有AIDL?3.什么时候使用AIDL?4.具体怎么实现AIDL?下面我们就进入今天的分析,分析代码Demo会在最后附上下载地址。 一.那么首先什么是AIDL呢?AIDL全称为Android Interface d
2017-01-10 21:48:31
5342
3
原创 JVM内存分配过程与原理解析(雷惊风)
之前对java虚拟机对于内存的分配与管理不是很了解,这段时间工作不是很忙,想借此机会深入的了解一下,在网上看了很多文章,对其详情也有了一定的认识,但是只是看看肯定是不行的,为了加深印象同时使自己能够理解的更深刻,我决定写这篇文章,同时希望对大家也有一定的帮助。文章里引用了其他前辈的一些资源,在这里表示感谢,那么我们就先从内存区域说起吧! 一.内存分区。首先Java程序运行Java代码是
2016-12-30 11:34:03
923
原创 Android打包apk实现原理与流程(雷惊风)
最近刚刚忙完公司项目,比较轻松一点,抽个时间总结一下Android打包apk相关的知识点,也从网上看了一些前辈的资料,但是感觉看一遍印象不会特别深刻,所以决定写篇文章加深一下记忆,以希望能帮助一批想了解相关信息的同志们... ... 那就开始吧。一、Ant原始命令行打包流程。首先总结一下apk打包的一个大致流程,方便后边大家理解。大致分为三步:1.打包生成.dex文件。2.打包生成
2016-12-22 18:26:28
3666
原创 Android之Edittext禁止输入表情符号(雷惊风)
前段时间项目中有一个EditText规定是禁止输入输入法表情的,很快就写好了,一直到现在才被测出问题来,中间都上了好几个版本了,测试都换了几批了,可见公司的QA是怎么个情况,唉,也就在这里说说,反正他们看不到,,看到了也不知道谁说的。好了言归正传,先看一下错误的代码,大家可以研究一下,现在已经改好了,翻翻git历史把错误代码copy下来... ... mAppraiseEdit.addTe
2016-08-01 15:28:35
7289
原创 android-downloader_一个带进度条的下载开源框架源码解析(雷惊风)
在我们的开发过程中,经常会用到下载功能,也经常伴有显示下载进度的需求,什么下载文件啊,更新版本啊等等吧,今天给大家介绍一个带进度更新下载的开源框架—-android-downloader(下载地址),并跟大家一起看一下它的源码,熟悉一下它的实现过程。一、涉及到的类及作用。1. DownloadTask.java 封装单个下载任务包含的信息,包括要下载文件的名称、文件的下载地址、要下载
2015-07-06 21:08:23
1907
原创 Android之EventBus概述及源码解析(雷惊风)
前段时间公司在项目中用到了Android三方开源库—EventBus。一直没时间总结,只能抽周末点时间总结一下,其中也借鉴了一些前辈的智慧。好了废话不多少,开始吧... ...一、简单介绍。在Android中当我们做完一件事在去通知其他模块进行后续任务的时候(下载完成,更新界面;评论成功,更新其他页面评论显示或条数增加等等),也有很多方法,比如Handler、BroadCastReceiv
2015-06-28 11:11:50
1008
原创 Android仿微信朋友圈查看全文/收起功能(雷惊风)
最近开发需求中要模仿微信朋友圈文章的展开收起功能,网上找了找,发现都有问题,于是乎自己在前辈的基础上进行了一定量的修改,下边将源码贴出来供大家参考:1.主Activity布局文件就不粘贴了,很简单,就一个ListView.2.主Activity功能实现:package com.example.textviewdemo;import java.util.HashMap;
2014-12-09 19:31:11
10673
Android动态权限申请获取手机短信息及通话记录
2017-11-21
ViewPager+Fragment+PageTransformer实现多种动画效果(雷惊风)
2017-06-22
自定义多状态View之MyMultiStateView
2017-05-26
butterknife源码分析添加了详细注释
2017-03-08
Java基础之注解Annotation初入篇_刘永雷
2017-03-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人