- 博客(29)
- 收藏
- 关注
原创 源码理解:Activity启动流程及一些细节
本文将分析activity的启动流程,把握主流程和一些疑难点及回调的触发时机。源码分析该部分内容较长,会梳理流程并分析部分重点函数,读者可选择阅读,也可直接跳至总结部分无论何种形式的startActivity,最终都会调用到startActivityForResult,该函数有三个参数需要理解一下:intent即将要启动的目标intentrequestCode如果该值>0则...
2019-05-18 16:44:21
365
原创 Kotlin 扩展
开启一系列新文章记录Kotlin有关内容,基础语法部分就不过多赘述了,大家可以参见Kotlin官方白皮书,主要是记录一些个人对于该语音部分特性的理解。定义首先,看一下官方对于扩展的定义: 能够扩展一个类的新功能而无需继承该类或使用像装饰者这样的任何类型的设计模式。 这通过叫做 扩展 的特殊声明完成。Kotlin 支持 扩展函数 和 扩展属性。 其实也不难理解,我们对比Java的...
2018-05-29 13:27:09
631
原创 面向对象六大原则
一、 单一职责原则Single Responsibility Principle(SRP),对于一个类,应该只有一个引起它变化的原因。 以图片加载类(ImageLoader)为例: 一开始设计的类内:初始图片缓存;展示图片;下载图片三大功能 剔除缓存功能后,设计为两个独立类,区分彼此的作用。二、 开闭原则Open Close Principle(OCP),软件中的对象(类、模...
2018-02-25 14:15:38
705
原创 Android 关于AIDL你需要知道的一切
好的,由于上周拖更,本次带来Android进程通信详解–AIDL,虽然网上关于这个内容的资料丰富且详细,但一千个读者就有一千个哈姆雷特不是嘛,对于任何东西都要有自己的见解。Service关于AIDL,Service就是我们不得不提的东西了,它是Android四大组件之一,太基础的东西这里我们就不再赘述,下面还是给出一些我对于Service的认识:上图为Service的生命周期从图里不难看出,Serv
2017-05-06 17:52:09
6823
1
原创 HTTPS通信总结
对不起~我还是托更了,唉,没办法,我也很绝望啊! = = 行,不多哔哔,近期在做一些协议相关的总结和记录,会带来一个新的专题连载,望大家支持~HTTPS通信总结HTTPS:HTTP+TLS/SSL,即在http传输过程中加上认证以及一系列加密解密,以保证数据传输的安全性和有效性。 首先需要对背景做介绍:http、tcp、ssl、tls 这里只做简单扫盲,如果全部仔细分析,篇幅爆炸!HTTP:没
2017-04-22 15:53:09
336
原创 Android ADB工具详解
抱歉拖更上篇回归博客里已经说到,完成周更计划,可是上一周周末我就水了,十分抱歉,临近毕业事物繁杂,这里补上一篇adb相关知识。一、概念adb是什么?:adb的全称为Android Debug Bridge,就是起到调试桥的作用。 通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,说白了就是debug工具。 adb的工作方式比较特殊,采用监听Socket TCP 555
2017-04-10 19:16:34
1312
原创 I'm back!
回归博客是的,我还是那条咸鱼,我又回来了。上一篇博客的时间是2016.9.7,到今天2017.4.4,算算也有将近七个月了。七个月前,我是一名整天跑校招头皮撞破的应届生(当然我现在也还没毕业),现在校招结束了,我也来到了人生第一家正式工作的公司(具体啥就不说了就那样),目前正处于实习阶段。实习也快两个月了,每天忙忙碌碌的查资料学新东西,无意间又进了CSDN自己的主页,真是感慨良多。契机为什么选择今天
2017-04-04 17:21:35
642
1
原创 me2048已结同步github,准备上线
历时半个多月,各种熬夜,查资料,“头破血流”,终于算是把这一款小游戏弄得像个样了。github地址:https://github.com/wxj1018/My2048欢迎各路大神指点和下载使用。不胜荣幸~总的来说,虽然这个idea不是自己的,灵感来源于《Android群英传》,代码也抄抄改改的,而且有些功能比如:社会化分享,本来想要添加的,却因为各种平台的限制问题而没有成功加入,所以有点小遗憾,但是
2016-09-07 09:45:37
574
原创 android事件分发机制
写在前面:看了《android群英传》的事件分发后,结合自己的一些理解,整理了一下,记录如下:首先,在我的前面博客自定义view解析中有讲到view的结构树,它是由viewgroup和view相互嵌套组成的树形结构,一个viewgroup里可以放view也可以放其他viewgroup,然后逐层分发,那么当点击事件发生的时候,是由viewgroup执行呢?还是view执行?因此这里就产生了“事件拦截这
2016-08-12 01:21:48
439
原创 android视图动画、属性动画、自定义动画、5.X SVG矢量动画机制详解
抱歉:由于这几天一直在复习前面的知识点和准备面试题,所以没有来得及更新博客内容,这次时间也不够,所以就补充两个最近写的小Demo效果图,也是综合运用了各种动画集合的产物。
2016-08-04 01:32:22
403
原创 android控件架构、自定义View、ViewGroup
写在前面:新手总要跨过自定义View这个坎,虽然本人也是菜鸡一枚。看书学了几个Demo,记录总结一下,便日后查阅复习。(^__^) 嘻嘻……一、android控件架构:androidView树结构:UI界面架构:PhoneWindow将DecorView设置为整个窗口的根View,作为窗口界面的顶层视图。 oncreate()方法调用setContentView后,ActivityManage
2016-07-30 00:57:41
664
原创 MySQL数据安装卸载解决方案以及基本增删改查
好吧,我的电脑是有毒的~安装东西总要出点问题,经过各种百度谷歌也是解决了这个安装问题,遂记录一波~首先你需要卸载之前安装的版本选择最后一个Remove这时请注意,电脑内还存在缓存文件和注册文件,你需要以下两步:1.删除安装目录下所有文件夹。2.删除MySQL注册文件。以我自己为例:我默认安装在C盘 :C:\Program Fi
2016-07-24 23:49:55
434
原创 Java中的几个基本设计模式
1.单例模式就是在整个应用中保证只有一个类的实例存在。单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。单例模式分为懒汉式单例和恶汉式单例。//懒汉式public class SingleInstance { public double d = Math.random(); private static SingleInstance single = null;
2016-07-22 17:13:41
445
原创 Java中xml文件解析
在java中解析xml文件,想想也是一个面试加分项,于是乎有必要来一篇博客记录一波,详情如下:这是我用到的一个简单的例子,写成xml格式: 红楼梦 曹雪芹 56.6 西游记 吴承恩 82.6 把它放在F盘,下面通过java代码来解析一下public class DealXml { public
2016-07-21 23:09:17
457
原创 Java SE基础知识点总结(六)
流:在计算机的输入输出操作中各部件之间的数据流动。按传输方向分为输入流和输出流。Java语言里的流序列中的数据既可以是未经加工的原始二进制数据,也可以是经过一定编码处理后符合某种特定格式的数据。java.io包中操作文件内容的主要两大类:字节流、字符流。字节流读取的最小单位是一个字节(1byte=8bit)字符流一次读取一个字符(1char=2byte=16bit)所有文件
2016-07-19 19:35:40
665
原创 Java SE基础知识点总结(五)
多态:概念:一种状态的多种表现形式主要体现:编译时才动态确定相关的元素,父类或接口定义的引用可以指向子类或具体实现类的实例对象,程序调用的方法再运行期才动态绑定,就是引用变量所指向的具体实例对象的方法,也是内存里正在运行的对象的方法,而不是引用变量的类型中定义的方法。父类的引用指向子类对象,这个引用变量只能访问父类里的成员以及被子类重写的方法,不能调用子类特有的成员——向上转型指向
2016-07-13 14:35:56
649
原创 Java SE基础知识点总结(四)
构造方法一般用于初始化对象,为正在创建的成员变量赋初值。创建对象时一定会调用一个构造方法,如果没有写构造方法则编译器会为类加上一个默认的构造方法。构造方法中的this:访问对象属性、访问实例方法、调用重载的其他的构造方法(只能位于第一行,不会触发新对象的创建)StringBuffer与StringBuider的区别:前者是线程安全的,后者性能较高。==比较的是地址(两个不同对象相同赋值也不等
2016-07-11 19:45:31
877
原创 Java SE基础知识点总结(三)
long l = System.currentTimeMillis();//返回从1970年1月1号0点0分0秒0毫秒到现在为止的毫秒数不要问我为什么!!!看下面! 为什么:1970.1.1是被看作计算机的元年,最早出现的UNIX操作系统考虑到计算机产生的年代和应用的时限综合取了1970年1月1日作为UNIX TIME的纪元时间(开始时间),而java、数据库、许多精密的仪器等也自然也遵循了这一
2016-07-08 15:35:39
826
1
原创 Java SE基础知识点总结(二)
Java中的数据类型分为基本数据类型(8种)和引用数据类型(3种)基本数据类型包括:数值型(byte(1)、short(2)、int(4)、long(8))、浮点型(float(4)、double(8))、字符型(char(16bits))、布尔型(boolean(1bits));引用数据类型包括:类、数组、接口数据类型转换:自动类型转换:低数据类型的数据直接赋给高数据
2016-06-29 16:27:36
991
原创 Java SE基础知识点总结(一)
没办法了,从头学起。不过还是要告诫自己戒骄戒躁,沉住气,一步一步来,打好地基才是盖高楼最好的捷径!又是一部长篇连载,遂分享出来,与君共享~编译、运行java程序需要经过哪些主要步骤? 编写源代码,生成.java文件,然后编译.java文件,产生.class文件,最后运行.class文件。写源码->编译->运行 一个源文件中不需要有public类吗? 不对。必
2016-06-27 18:43:04
4508
1
原创 关于Genymotion模拟器联网问题解决方案
对于Genymotion模拟器,想必学习安卓的朋友们都不会陌生。但是刚接触这个模拟器的时候,肯定有不少人会碰到模拟器无法联网的问题。(本人也是)所以结合我给出自己的解决方式,分享给需要的人!首先,我使用的是笔记本电脑。说明:上网前你都需要在模拟器里连上WIFI!如图:打开VirtualBox管理器找到你的模拟器进入设置选项,找到网络,然后配置如下图:配置
2016-06-09 23:47:13
5576
4
原创 Android基础知识整合篇——UI(部分)知识点
UI作为程序的脸面,自然也是一款应用的核心以及灵魂。美观的界面不仅可以大大增加用户粘性,还能吸引更多的用户。合理使用安卓提供的UI开发工具,可以编写出各种各种炫酷的界面!虽然本文是基础向的复习博客,但是本人任务一些像TextView、Button······等最基本的控件的使用网上资料实在太多,那我就偷点懒,就不在文章里详细说明常用控件的使用方法和功能了。那么,我就给大家主要介绍一些在
2016-06-03 14:09:12
1037
原创 Android基础知识整合篇——ContentProvider知识点
继续完成连载博客,上次介绍的是Service相关的基础知识,这次为大家带来ContentResolver的相关解释和说明。希望博客能给诸位一点小小的帮助!四大组件——ContentResolver内容提供器:主要用于不同程序间数据共享,它提供了一套完整的机制,既能完成数据的交互还能保证数据的安全性。用法有两种:1.使用现有的内容提供器来读取和操作相应程序的数
2016-06-02 09:58:26
1162
原创 Android基础知识整合篇——Service知识点
继续完成连载博客,上次介绍的是Broadcast相关的基础知识,这次为大家带来Service的相关解释和说明。希望博客能给诸位一点小小的帮助!四大组件——service 服务:service是安卓中实现程序后台运行的解决方案,它非常适合执行那些不需要和用户交互而且还要求长期运行的任务。需要注意:服务不是独立运行在进程中的,依赖于服务创建的应用程序进程,当其被杀死时,服务也会
2016-06-01 08:36:05
1235
原创 Android基础知识整合篇——广播接收器知识点
好的,我又来完成我的个人第一个连载博客了,上次介绍的是Activity相关的基础知识,这次为大家带来广播接收器的相关解释和说明。希望博客能给诸位一点小小的帮助,也就是对我博客最大的鼓励!四大组件——BroadcastReceiver广播分类:标准广播:是一种完全异步执行的广播,它无法被截断,广播发出后,所有的接收器都能在同一时刻收到广播消息,因此没有先后顺序,所以它的效
2016-05-31 16:24:45
1396
原创 Android基础知识整合篇——Activity知识点
Android基础知识部分整合连载篇——四大组件——Activity 今天,我着手开始android基础知识总体整合以及复习(结合郭霖大神的《第一行代码》),来对我这段时间碎片化的知识进行总结和整理,写下这些连载博文为的是方便读者对基础知识的回顾,以及我自己对所学知识点的消化。也希望博客能给诸位一点小小的帮助,也就是对我码三小时这么多字最大的回报了。 之前很多都是碎片化的学
2016-05-30 20:38:44
10925
3
原创 总结一下这两天所学RecyclerView
RecycleView学习总结复习篇 recyclerView是android5.0之后推出的一款新的View布局,功能相较于ListView有过之而无不及,相信在以后的学习和工作中都将可能会用上,这两天自己在边看边学其中功能与各种效果,现来博客与诸君分享,也为日后自己复习设下渠道。 首先,我们了解一下为什么要叫做RecyclerView
2016-05-29 13:57:11
3220
原创 ViewPager:一个app第一次打开(或更新后)要用到的导航界面
第一次写。新人。。。。。。。。每次安装新的app或者更新一个版本都会调用这个功能!ViewPager首先创建一个package,新建三个class,分别为Guide、Welcome、ViewPagerAdapter(引导界面、欢迎界面、适配器)。来到Guide.class。先做初始化和定义工作:需要定义ViewPager,viewPagerAdapter,以及存
2016-04-14 19:49:12
1910
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人