- 博客(37)
- 资源 (1)
- 收藏
- 关注
原创 Java/Android中的网络编程--(上)
网络是20世纪最伟大的发明之一,众多的设备可以以有线或者无线的方式连入整个互联网,进而互相通信。为了更好的开发、管理、接入网络,科学家设计了通信协议,将整个网络架构分为7层(4层),并规范了每一层的功能。网络分层早期的OSI参考模型将网络分为7层:应用层、表示层、会话层、传输层、网络、数据链路层、物理层。为什么要这么分?各层的功能如下:1.应用层:实现应用间的通信;2.表示层:提供...
2018-07-19 11:14:55 1304
原创 Android面试总结--无答案版本(持续更新中)
前言:根据不愿透露姓名的网友亲身经历整理而成。。。目前主要包括的公司:MT、OP、XY,持续更新中。在阅读本文之前建议你:这是无答案版本,仅提供了一个回答思路,稍后会有“Android面试总结-有答案版”,大家可以怀着一颗求职者的心态,给自己打分;如果你有不了解的题目,不要有焦虑或者危难的心态,正所谓“学道有先后”,让我们一起进步、一起学习;尽量去弄懂搞懂每个题目,了解它的原理、为什么要这么设计、...
2018-07-16 15:27:06 251
原创 通过nodejs安装下载插件的一些注意事项
node安装node的安装较为简单,只要下载安装包(包括msi和exe)一步一步的安装即可,并不需要设置任何环境变量。当安装完成后,在命令行输入node –version,如果出现nodejs的版本恭喜你安装成功。使用npm命令行安装一些包比如npm install -g cordova ionic//安装ionicnpm install vue//安装vue可能会遇到因为网速安装较慢或者因为通
2017-06-16 15:01:04 2537
原创 Android技术堆栈积累
移动端开发现在移动端的就业形式相对较差,各个公司对员工的技术要求也相应的提高,主要体现在对重要知识点的要求提高以及对第三方的框架原理的熟悉上。总结的Android开发技术堆栈如下:所以为了提高自己的竞争力,你需要: - 对android的高级知识点熟悉; - 对主要的框架熟悉。java基础Android开发以java语言为基础,所以熟练的掌握java的基本使用和特征是非常重要的。 这部分的内容
2017-06-13 11:10:49 2070
原创 事件总线源码解析
事件总线基本上都是观察者模式的扩展Google/Guava:Guava是一个庞大的库,EventBus只是它附带的一个小功能,因此实际项目中使用并不多greenrobot/EventBus:简洁体量小square/otto:修改自 Guava,官方已经标记为过时了,并推荐使用RxJava代替它。RxJava:主要用于响应式编程。使用EventBus1、注册和注销:@Overridepublic v
2017-06-07 23:21:57 422
原创 依赖注入框架解析
依赖注入使用ButterKnife 在setContentView(..);之后加入ButterKnife.bind(this), @BindView(R.id.testFre)SimpleDraweeView testFre; @BindView(R.id.test)TextView test;Dagger2:场景:想在一个类中使用新建另外一个类,但是又觉得显示创建耦
2017-06-07 23:21:12 881
原创 View绘制及事件分发机制
View绘制及事件分发机制view绘制机制measure()–>onMeasure();layout()–>onLayout();draw():1、绘制自己background.draw(canvas);2、绘制自己(onDraw);3、绘制children(dispatchDraw);4、绘制服饰(onDrawScrollBars)view分发机制:主要由3个函数组成: dispatchTouc
2017-06-07 23:18:20 584
原创 图片加载框架
图像加载一般来说一图片加载框架应该具有以下基本特性:1、图片的同步/异步加载2、图片缓存(内存缓存/磁盘缓存)3、网络加载4、图片处理(压缩、裁剪、左右变幻等)基本使用UIL 1、设置全局配置 ImageLoaderConfiguration config = new ImageLoaderConfiguration .Builder(context) .memoryCacheExtr
2017-06-07 23:16:28 753
原创 json解析
json解析常见的json解析gson:谷歌推荐 fastjson:阿里巴巴开发 loganSquare:底层使用jackson jackson:通用的java json库Gson用法 String json1 = mGson.toJson(mTestEntityList); Type type = new TypeToken<List<TestEntity>>(){}.getT
2017-06-07 23:15:41 755
原创 网络框架解析
网络框架用法Volly: RequestQueue mQueue; mQueue= Volley.newRequestQueue(this); StringRequest stringRequest = new StringRequest("", new Response.Listener<String>() { @Override public voi
2017-06-07 23:14:23 396
原创 Handler消息机制
消息机制Android中的消息机制主要是指Handler,MessageQueue,Looper机制。HandlerHandler的主要方法:sendMessage(msg)、handleMessage(msg)、dispatchMessage(msg)。 其中sendMessage(msg)主要负责发送消息,调用enqueueMessage(msg,long)向MessageQueue中插入消息
2017-05-11 15:18:15 350
原创 AIDL解析
AIDL解析定义AIDL:Android接口定义语言,顾名思义.aidl文件是一个接口文件。主要是对Binder进行操作。在新建IPersonInterface.aidl文件后,在app/generated/source/aidl/debug/目录下,可以看到具体的.aidl文件实现。 其内部实现主要是内部抽象类:Stub及其内部代理类proxy(); Stub继承了android.os.Bin
2017-05-11 14:44:49 386
原创 JNI/NDK开发流程简介
NDK开发一、环境配置1、NDk下载 打开管理器,勾选NDK,Android Studio会自动下载ndk。 下载完成后,可以如下方式查看目录: 2、NDK环境变量配置在PATH系统变量下添加:ndk的目录即可 在cmd中输入:ndk-build,如果出现如下界面,表示成功安装。 二、开发文件配置1、android.useDeprecatedNdk=true,在2、添加ndk,在app级别
2017-05-11 11:35:12 405
原创 Android技术堆栈积累
现在移动端的就业形式相对较差,各个公司对员工的技术要求也相应的提高,主要体现在对重要知识点的要求提高以及对第三方的框架原理的熟悉上。 所以为了提高自己的竞争力,你需要: - 对android的高级知识点熟悉; - 对主要的框架熟悉。网络请求框架详解当前比较主流的网络请求框架有:Volley,OKHttp,Retrofit等等未完待续!
2017-02-28 22:29:08 359
原创 Android进程间通信和线程间通信
进程间和线程间通信这个知识点算是高级知识点,线程和进程首先要区分线程和进程的区别: 线程是cup最小调度单元; 进程是一系列线程的集合。进程间方式Bundle文件共享AIDLMessenger,注意不是MessageContentProvider网络编程(Socke和TCP/UDP)线程间的方式Message Handler Looper机制AsnyTask共享变量管道未
2017-02-28 16:36:41 3150 1
原创 leetcode
将按照目录顺序开始整理leetcode上的题目:欢迎交流 1. Two SumGiven an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one so
2017-02-28 09:16:34 243
原创 Android笔试面试题整理
Android笔试面试题一、java基础篇1)类初始化的顺序,静态块与构造函数的调用顺序一个类的实例化过程: 1,首先会执行类中static代码块(不管代码块是否在类的开头还是末尾处),如果这个类有父类,同样会优先查找父类中的static代码块,然后是当前类的static。2,然后会从父类的第一行开始执行,直至代码末尾处,中间不管是有赋值还是method调用,都会按顺序一一执行(method),普
2017-02-28 09:08:49 358
原创 实用ionic Js库-YFJsLibs概述
YFJsLibs关于(About)这是抽取的工作日常工作代码形成的一个库,持续更新中。借鉴了一些网上现有的代码,在后续的介绍中会逐一提及。本文是基于ionic 的js库,基本语法遵从angularjs。android版本见YFAndroidLibs,后续会有iOS版本。 - 如何抽取 一些常用的css和js代码,一直对部分效果不满意还在测试中。 - 下载地址:github:https://
2017-01-08 23:22:58 690
原创 leetcode及笔试面试题整理序言
关于“早刷github,晚刷leetcode”,leetcode上的题目都很经典,据说如果你过通关了,那么自动会有大公司找上你哟。 我早些年的刷题经历,主要是在“牛客网”和一些其他做算法竞赛的网站,但是由于没有充分的重视,最终的结果都不太好。 其实,当时个人做过很多独立上线项目,写代码的能力是相对可以的,奈何基础和算法不过关,只能折戟沉沙。很长一段时间都相当低迷。怎么破如果不是名校,也不是强势专
2017-01-03 23:00:41 576
原创 算法导论整理序言
##关于 Introduction to Algorithm这本书,第三版出来的时候,我在第一时间就入手了,也有34年了吧,反复看过很多次,奈何每次都感觉不得其意。这是一部大部头的书,将近有800页,书中的代码大部分都是用伪代码写的,很多地方晦涩难懂。而且在工作中除了极少的场合,很难用到一些高深的算法(如动态规划、摊还分析,B树等),所以一直没花时间去整理和消化。整理早些年只研究过图算法,研究的
2017-01-03 22:46:19 396
原创 Ionic入门
ionic环境搭建安装nodejs在命令行,安装angular.js安装ionic安装ant编译:如果出错那么采用:cordova build android – –ant。 这个网址介绍的比较详细,它没有提到。http://www.runoob.com/ionic/ionic-install.html,如果出现环境问题,那么99.9999%的情况下都可以通过谷歌解决。常用命令早些时候
2017-01-03 18:03:04 758
原创 TabView的使用及源码详解
关于(About)tab导航在app中比较常见,实现的方式也较多 。该TabView主要使用Viewpager封装activity进行导航,主要分为四种模式:顶部导航,底部导航,固定界面导航,左右滑动导航。效果图如下:1、顶部导航2、底部导航3、固定导航4、滑动导航技术点分析使用导包:详见我的另外一篇博文:http://blog.csdn.net/u011072613/article/details
2016-12-28 22:46:40 4391
原创 SearchView的用法与源码详解
关于(About)明天补充完整效果图如下:设计思路及主要接口(Features)使用导入包:详见我的另外一篇博文:邮箱:[email protected]:https://github.com/commutescript欢迎交流,欢迎star。
2016-12-28 22:45:50 585
原创 AddressView的用法与源码详解
关于(About)效果图如下:设计思路及主要接口(Features)使用导入包:详见我的另外一篇博文:http://blog.csdn.net/u011072613/article/details/53889596邮箱:[email protected]:https://github.com/commutescript欢迎交流,欢迎star。
2016-12-28 22:44:25 638
原创 DialogView的使用与源码详解
YFAndroidLibs之DialogView的用法及源码解析关于(About)TagView的实现思路相对简单,主要是继承ViewGroup,重新相应的onLayout和onMeasure方法:效果图如下:设计思路及主要接口(Features)其中各种样式均可自定义,每个输入框的值也能回调。未完待续。。。实在写不动了,明天写。使用导入包:详见我的另外一篇博文:http://blog.csdn.n
2016-12-28 22:35:28 1425
原创 TagView的用法及源码解析
YFAndroidLibs之TagView的用法及源码解析关于(About)TagView的实现思路相对简单,主要是继承ViewGroup,重新相应的onLayout和onMeasure方法:效果图如下:设计思路及主要接口(Features)ViewGroup中主要的方法包括:onLayout和onMeasure方法, 调用的顺序为:onMeasure ——> onLayout ——> onDra
2016-12-28 22:22:54 1858
原创 BannerVIew的用法及源码解析
关于(About)申明:该BannerView控件是在借鉴了两位大神的代码加工形成的:[IT_xiao小巫]大神和stevenhu_223大神。非常感谢。BannerView的效果图如下: 主要暴露接口和设置:BannerStyle样式类:用来设置banner的样式,包括指示器的形式(包括点,数字,图像(待开发)),位置(上下左右),是否显示信息,轮播时间;BannerInfo实体
2016-12-28 16:15:17 3786 3
原创 GuidePageView的用法及源码解析
YFAndroidLibs之GuidePageView的用法及源码解析关于(About)GuidePageView故名思意,是指第一次进入应用时的导航页,效果图如下: 设计思路及主要接口(Features)主要的技术点有:1.自定义抽样类:GuideAdapterpublic abstract class GuideAdapter { private GuidePageView mG
2016-12-28 12:24:33 1382
原创 SplashView的用法及源码解析
YFAndroidLibs之SplshView的用法及源码解析关于(About)SplashView故名思意,是指进入应用时的SPlash(闪屏),效果图如下: 设计思路及主要接口(Features)该SplashView主要的技术点有:1.自定义declare-styleable<declare-styleable name = "SplashView"> <attr format="i
2016-12-27 21:07:58 1519
原创 实用Android库-YFAndroidLibs概述
YFAndroidLibs关于(About)这是抽取的工作日常工作代码形成的一个库,持续更新中。借鉴了一些网上现有的代码,在后续的介绍中会逐一提及。本文是基于android的库,后续会有iOS版本以及JS版本。功能(Features)这个库包含的主要内容有: 1. 起始页splash 2. 第一次导航guidepage 3. 广告banner 4. tab导航和分栏 5. 定位sqlite
2016-12-26 21:56:14 1517
原创 多线程
工作中,总会不可避免的用到多线程,为了工作便利,所以特别总结了多线程的常用知识点和面试点,持续更新中。。。首先区分进程和线程的关系,进程是指计算机上的某一次过程,而线程是指为了完成这一进程所需要执行的子操作,进程包括线程。一、java中有3中方法可以起一个新的线程1、继承Thread类public class Thread1 extends Thread{ private S
2016-09-07 23:17:48 264
原创 Hibernate与数据库交互的三种方式及数据解析
Hibernate是较为经典的JavaEE持久层框架,其设计初衷是为了减少sql语句的直接书写。目前,Hibernate有3种查询数据库的方法:HQL Query,Criteria Query,原生的sql查询。查询方式,只要懂一点sql很容易上手,而数据格式和解析方式却会给新手带来一定的困扰。日前由于公司产品迭代,需要更新升级部分后台接口,daoimpl中写的类似于TableName = "
2016-09-07 09:58:49 4433 1
原创 win10升级
昨天晚上,心血来潮升级了下win10系统,升级玩就悲剧了,有一些软件不能正常使用,如chrome。试过如添加-no -sandBOx、重装之类的方法,浏览器任然不能正常使用,经过仿佛验证,需要修复LSP(Layered Service Provider)。这是一个网络协议的接口,升级的时候可能会损坏,在cmd窗口中输入 netsh winsock reset,即可重启LSP,重启电脑后,ok!
2016-09-07 08:50:16 435
原创 励志成为全栈,系统的补齐所有的知识
前段时间经历了人生的低谷期,爱情不顺,毕业不顺,项目不顺。唯一让我觉得自己还有价值的是团队成员对我的信任,以及婷婷姐风投项目的邀约,出于很多因素的考虑,没有一起合作,甚是遗憾。从2月到现在,落下了太多的源码和leetcode,现在写起代码来都有点吃力。 我从最初的C转到C++,MFC其实经过了很长一段时间的摸索,看到后来的深入浅出MFC才发现不适合自己。C++系列试用于大型项目,很
2016-04-26 22:12:39 558 1
转载 常用的三种android分包规范
总感觉Android中关于分包的文章很少,或者几乎可以说没有。但是合理地分包,又可以使整个项目模块化,减少包与包之间的依赖,让整个项目的框架更加清晰,更利于后续功能的拓展。因为没有相关的文章,所以这里晒出三款开源项目的分包方式,供大家学习。(一) eoe社区 Android 客户端src├ cn.eoe.app --存放程序全局性类的包 ├ cn.eoe.app
2015-06-12 20:18:35 679
原创 我的技术路
在IT众多的方向和技术路线上,我可谓是是一直没有定下心来,通信,网络,硬件,C++,MFC、到后来的java web,前台开发,再到现在的Android开发。一直跳来跳去的,也都没深入进去,又很多也是浅尝辄止。现在找工作了,才知道一定要达到一定的代码量,才行。那么接下来,好好努力,努力写代码,努力考试。
2015-03-27 22:16:47 377
原创 安卓错误提示:The following classes could not be found: - LinerLayout
作为一个Android新手,总是出现一些工具栏错误。这两天layout下的布局.xml文件总是提示:The following classes could not be found:- LinerLayout (Change to LinearLayout, Fix Build Path, Edit XML)发现网上也有一些攻略,比如重装啊,在build path当中勾选.jar包
2015-03-11 13:30:34 8494 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人