自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ostracod

一名底层的Android开发者挣扎历程。

  • 博客(160)
  • 资源 (14)
  • 收藏
  • 关注

原创 公众号诚邀投稿

hi,各位小伙伴们,你们好。今天想要和大家宣布一件事情,那就是码农小世界公众号开始对外接受投稿了。自去年公众号建立以来,一直致力于原创技术类文章的分享,我自己从去年到现在已经发布了六十几篇原创文章了(包含 Android,JAVA,数据结构,算法,面试经验总结等)。​其中大部分读者都是都是通过我的面试经历来关注我的公众号的, 也有很多人加了我的微信,咨询我一些找工作或者开发上面的事。由于今年换了一家公司,做的事情比较多,一忙起来就没有精力去维护公众号了,上一篇的文章还是四个月前发布的。有很多人关注我的

2020-11-03 14:21:27 843

原创 码农小世界学习大纲思维导图

引言工作一段时间一般都会出现一个瓶颈,这个时候学习的效率就会大打折扣,如果找不到好的方式,花的时间就会很长,然而进步的空间却很小。那么好的方式是什么呢?答案就是知识体系的思维导图。构建自己的知识体系尤为重要,每个人都应该构建自己的知识体系,那么如何构建自己的知识体系呢?对于我来说,我是做 Android 开发的,从毕业到现在,大概五年多的时间,小公司呆过,大公司也呆过,自己独立开发过产品,同时...

2019-10-15 20:29:47 367

原创 UIHelper

UIHelper 集合UIHelper 是一个 UI 框架合集,其中包含了很多 UI 实现样式。目前支持以下 UI :1 使用方式1.1 在 project 的 build.gradle 中配置 jitpack 库 allprojects { repositories { ... maven { url 'https://jitpack.io' } } }1.1 在 module 的 build.gradle 中配置引用库 dependencies {

2021-07-01 17:32:36 320

原创 开源app-从0到1实现(四)Android端自制https证书实现双向认证

相关文章1.开源app-从0到1实现(一)效果预览2.开源app-从0到1实现(二)项目运行3.开源app-从0到1实现(三)爬虫实现数据采集1. 背景前一阶段学习了服务端的知识,然后就写了一套接口,然后在阿里云上面租了一个服务器将服务部署到服务器上面,由于域名一直没有备案成功,所以只能通过 ip 的方式进行访问。通过 ip 的方式其实也没什么大不了的,前阶段工作中还简单实现了一套 HTTPDNS,原理其实也是通过 ip 直连的方式进行接口访问。本人是 Android 端开发,写了一套接口,然后.

2020-12-09 16:07:15 697

原创 开源app-从0到1实现(三)爬虫实现数据采集

相关文章1.开源app-从0到1实现(一)效果预览2.开源app-从0到1实现(二)项目运行前言开发一款app,最重要的一部分就是数据了,现在也是大数据时代,数据信息非常庞大,同时数据对app来说,是不可或缺的一部分。在我们这个app当中,由于是查询类app,因此数据采集非常重要,至关重要的组成部分,因此,本篇着重介绍如何通过爬虫来获取数据并存入数据库。全部代码见github仓库:awesome-practise准备数据来源:中国教育在线爬虫脚本:python数据库:Mysql数据库可视

2020-11-17 07:15:26 434 1

原创 开源app-从0到1(二)项目运行

相关文章:前言在上一篇文章《开源app-从0到1》中,我们预览了全工程所有的效果,本篇文章就详细记录一下如何运行整个项目,使其能够在自己的机器上面跑出效果来。为了能够准确的运行项目,使其顺利的跑起来,少走弯路,务必要紧跟我的步伐,按照我写的步骤一步一步来就能实现上述效果。1. 开发工具俗话说,工欲善其事,必先利其器,要想先开始,必须现将工具准备好了,下面列出本工程所需要的全部开发工具1.1 MySqlMysql:v8.0.20 下载地址:https://www.mysql.com/Mysq

2020-11-05 20:39:36 183

原创 开源app-从0到1

前言前期准备数据采集开发一款app,我们第一步就是获取数据,这个数据从哪里来呢?数据存储服务端开发移动端开发

2020-11-04 07:43:25 413 2

原创 2020年疫情下的Android跳槽之路

写在前面的话我是14年毕业的,毕业一直做Android相关方面的开发,14年到18年经历了几家小公司,前后都倒闭了,可谓是一直颠簸流离,漂泊不定。在18年来到上海寻求发展,以前一直呆的是小公司,这次就想找个大公司,想稳定一点,同时大公司技术底蕴也比较强,想多学习学习,提升自己。可参考我以前的求职面试经历:《杭州找Android工作的点点滴滴》,《2018年6月份Android上海找工作经历》,前...

2020-03-29 11:50:59 21069 43

原创 git年末大总结

GitGit是目前世界上最先进的分布式版本控制系统。1. 版本控制所谓版本控制就是在文件的修改历程中保留修改历史,让你可以方便地查询历史提交记录以及撤销之前对文件的修改操作。版本控制系统主要有集中式版本控制系统和分布式版本控制系统两种。1.1 集中式版本控制系统集中式版本控制系统,版本库是集中存放在中央服务器的,工作时需要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活...

2019-12-24 11:09:40 358

原创 打造App-GitHub 开放API大总结

文章目录1. 登陆2. 关于我的-API2.1 我的个人主页2.1.1 请求说明2.1.2 返回响应2.2 我的关注 Following2.2.1 请求说明2.2.2 返回响应2.3 我的粉丝 Followers2.3.1 请求说明2.3.2 返回响应2.4 我的仓库 Repositories2.4.1 请求说明2.4.2 返回响应3. 关于All activity-API3.1 All acti...

2019-12-19 19:21:49 2079

原创 RN实现仿余额宝余额数字翻滚动画特效

前语前段时间公司有个需求,需要实现一个数字翻滚的动画,要求为:数字格式化为每隔3位逗号分隔,数字最后三位执行动画,从左往右,依次翻滚,翻滚时间持续3秒钟,类似于余额宝金额滚动的动画,要求RN实现,效果最终实现如下:在此记录总结一下实现思路细节,有需要的可以参考一下。实现思路首先需要理一下实现要求,总的要求如下:用ReactNative实现该动画数字超过三位需要格式化,少于三位不需要...

2019-12-17 16:46:00 1594 1

原创 打造属于自己的博客系统

前言以前写博客时用的是CSDN、 博客园、新浪博客之类的博客系统,这类博客系统好处就是什么都弄好了,自己只需要写文章即可,但是一类大缺点就是广告太多,打开一篇文章,基本满屏都是广告,让人看下去的愿望都没有,所以一直打算先搞个自己的博客系统,专门记录一下学习过程。我的博客链接:https://crazyandcoder.work/正文关于hexo的简介请看官网介绍《详细介绍》Hexo 是...

2019-12-13 18:36:16 640

原创 一篇文章搞懂android存储目录结构

前言前两天因为开发一个app更新的功能,我将从服务器下载的apk文件放在了内部存储目录(测试手机为小米,路径为:data/user/0/packagename/files)下面,然后安装的时候一直安装不了,提示解析包出错。后来查询发现,安装apk是调用了PackageInstaller,没有相关权限,这个无法获取内部路径,所以会安装不了。借机也复习了一遍Android下面存储相关的知识点,特来总...

2019-12-04 17:16:07 1906

原创 Java中关于泛型的浅析

前言java 泛型是java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。泛型(Generic type 或者 generics)是对 Java 语言的类型系统的一种扩展,以支持创建可以按类型进行参数化的类。可以把类型参数看作是使用参数化类型时指定的类型的一个占位符,就像...

2019-11-28 20:44:56 232

原创 Java中关于synchronized浅析

进程我们都知道计算机的核心是CPU,它承担了所有的计算任务;而操作系统是计算机的管理者,它负责任务的调度、资源的分配和管理,统领整个计算机硬件;应用程序侧是具有某种功能的程序,程序是运行于操作系统之上的。进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体。进程是一种抽象的概念,从来没有统一的标准定义。进程一般由程...

2019-11-27 15:53:33 222

原创 Java学习总结-反射

反射经常听到这个词,但是总是不理解这个意思。今天便来理解一下反射这个概念,为什么说在框架设计中,反射用到的比较多。本文记录一下学习反射方面的知识点。反射概念JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。概念比较精确、抽象但是不便于理解...

2019-11-19 20:36:05 215

原创 Java学习总结-注解

Java 注解简单学习注解概念Java注解是附加在代码中的一些元信息,用于一些工具在编译、运行时进行解析和使用,起到说明、配置的功能。注解不会也不能影响代码的实际逻辑,仅仅起到辅助性的作用。包含在 java.lang.annotation 包中。其中涉及到另外一个概念“元注解”,元注解是指注解的注解。包括以下五种 :@Retention@Target@Document@Inher...

2019-11-19 20:29:00 189

原创 Android 事件分发机制源码解析-ViewGroup层

在上篇文章中我们分析了view的事件分发机制**《Android 事件分发机制源码解析-view层》**,在本篇文章中我们继续分析另一层viewGroup的事件分发,viewGroup本质上是一组view的集合,它的里面包含了view和另一组viewGroup,我们平常使用的各种布局如LinearLayout、RelativeLayout、FrameLayout等等都是继承的viewGroup,对...

2019-11-12 20:24:52 363

原创 Android 事件分发机制源码解析-view层

本篇文章我们专门来研究一下view层的事件分发机制,我们在学习过程中总会碰到关于事件分发的各种问题,如onTouch和onTouchEvent的关系,setOnTouchListener和setOnClickListener的关系等等,类似这样的问题很多,结论我们都知道,有的时候是死记硬背的,记不长久,本篇文章我们来从源码的角度来分析总结一下各种关系,这样才能理解,便于记忆。分析工具//And...

2019-11-12 20:15:46 147

原创 Android UIL图片加载缓存源码分析-硬盘缓存

上面一篇文章《Android UIL图片加载缓存源码分析-内存缓存》我们已经分析了Android著名的图片加载库UIL的内存缓存模型,本篇文章我们接着分析另外一种缓存方式-磁盘缓存,磁盘缓存说到底就是将图片缓存到本地SD卡中,我们通过UIL的磁盘缓存来分析一下。源码环境版本:V1.9.5GitHub链接地址:https://github.com/nostra13/Android-Unive...

2019-11-12 20:03:15 249

原创 Android UIL图片加载缓存源码分析-内存缓存

本篇文章我们来分析一下著名图片加载库Android-Universal-Image-Loader的图片缓存源码。源码环境版本:V1.9.5GitHub链接地址:https://github.com/nostra13/Android-Universal-Image-Loader我们一般去加载大量的图片的时候,都会做缓存策略,缓存又分为内存缓存和硬盘缓存 ,使用的内存缓存是LruCache这...

2019-11-12 09:40:43 184

原创 源码分析-EventBus的深入探究

以前,对于activity和fragment之间的通信可以使用接口的方式,定义起来比较麻烦费事,偶然间发现可以使用EventBus,发现很好用,查看了一下官方说明:EventBus是针一款对Android的发布/订阅事件总线。它可以让我们很轻松的实现在Android各个组件之间传递消息,并且代码的可读性更好,耦合度更低。但是在用的过程中总会出现一些问题,下面就将出现的问题详细记录一下,顺便具体学习...

2019-11-11 18:37:23 156

原创 java集合框架分析-HashMap(加载因子及初始容量深入分析)

源码环境JDK1.6加载因子 loadfactor /** * 默认的初始化的容量,必须是2的幂次数<br> * The default initial capacity - MUST be a power of two. */static final int DEFAULT_INITIAL_CAPACITY = 16;/** * 默认的加载因子 */stati...

2019-11-07 09:48:40 324

原创 Java集合框架分析(六)-Iterator迭代器分析

本篇文章主要分析一下Java集合框架中的迭代器部分,Iterator,该源码分析基于JDK1.8,分析工具,AndroidStudio,文章分析不足之处,还请指正!Java里面的数组数据可以通过索引来获取,那么对象呢?也是通过索引吗?今天我们就来分析一下Java集合中获取集合对象的方法迭代-Iterator。简介我们常常使用 JDK 提供的迭代接口进行 Java 集合的迭代。 ...

2019-11-05 20:29:35 168

原创 Java集合框架分析(五)-HashSet分析

本篇文章主要分析一下Java集合框架中的Set部分,HashSet,该源码分析基于JDK1.8,分析工具,AndroidStudio,文章分析不足之处,还请指正!HashSet简介类结构public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, j...

2019-11-05 20:18:15 144

原创 Java集合框架分析(五)LinkedHashMap分析

一、LinkedHashMap简介public class LinkedHashMap<K,V> extends HashMap<K,V> implements Map<K,V>继承自HashMap,一个有序的Map接口实现,这里的有序指的是元素可以按插入顺序或访问顺序排列;与HashMap相比,因为LinkedHashMap是继承自HashMap,因此L...

2019-11-05 19:47:22 206

原创 Java集合框架分析(四)HashMap分析

本篇文章主要分析一下Java集合框架中的Map部分,HashMap,该源码分析基于JDK1.8,分析工具,AndroidStudio,文章分析不足之处,还请见谅!HashMap简介基于哈希表的一个 Map 接口实现,存储的对象是一个键值对对象 (Entry<K,V>);值得注意的是 HashMap 不是线程安全的,如果想要线程安全的 HashMap,可以通过 Collections...

2019-10-31 20:21:32 152

原创 Java集合框架分析(三)LinkedList分析

本篇文章主要分析一下 Java 集合框架中的 List 部分,LinkedList,该源码分析基于JDK1.8,分析工具,AndroidStudio,文章分析不足之处,还请指正!LinkedList简介类结构首先,我们来看下 LinkedList 的类继承结构:public class LinkedList<E> extends AbstractSequentialLi...

2019-10-31 19:57:19 166

原创 Java集合框架分析(二)ArrayList分析

相关文章Java集合框架分析(一)综合概述本篇文章主要分析一下 Java 集合框架中的 List 部分,ArrayList,该源码分析基于JDK1.8,分析工具,AndroidStudio,文章分析不足之处,还请指正!ArrayList简介ArrayList 底层维护的是一个动态数组,每个 ArrayList 实例都有一个容量。该容量是指用来存储列表元素的数组的大小。它总是至少等于列表的大...

2019-10-31 11:21:48 123

原创 Java集合框架分析(一)综合概述

在 android 项目开发过程中,总会使用到 Collection,对于一些基础的使用方法还是可以的,但是涉及到较深层次的就有点力不从心了,所以打算开始彻底地学习一下 java 集合方面的知识点,做个记录总结,分析工具JavaJDK:1.7.0_79AndroidStudio:3.5首先来看下 java 集合框架的总图:集合框架主要分为两大类: Collection 和 Map。...

2019-10-31 09:32:37 201

原创 CityPicker城市地址选择器 V5.0.0发布,支持自定义数据源

CityPicker城市选择器是一款优秀而简洁的地址选择器,它支持仿iOS选择器样式,仿京东样式,一级城市列表,三级城市列表等多种样式展示。使用方便,简单,支持自定义数据源和使用该库提供的城市数据(该数据来源于国家统计局,比较准确),欢迎大家使用。V5.0.0隆重发布!!!v5.0.0 支持自定义数据源CityPicker城市选择器迎来史上最大更新!!!期待已久的自定义数据源功能终于发布了...

2019-10-29 20:29:06 1142

原创 数据结构学习与应用-链表

链表概念链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针连接次序实现的。存储结构单向链表是一种线性表,实际上是由节点(Node)组成的,每一个链表都包含多个节点,节点又包含两个部分,一个是数据域 data(储存节点含有的信息),一个是引用域 next(储存下一个节点或者上一个节点的地址)。其数据在内存中存储是不连续的,它存储的数据分散在内存中,每个结点...

2019-10-25 08:20:42 193

原创 数据结构学习与运用-栈

栈的定义栈是一种先进后出的数据结构,我们把允许插入和删除的一端称为栈顶,另一端称为栈底,不含任何元素的栈称为空栈。1、栈的操作端通常被称为栈顶,另一端被称为栈底。2、栈的插入操作称为进栈(压栈|push);栈删除操作称为出栈(弹栈|pop)。栈的分类根据栈的存储方式,栈可以分为静态栈(数组实现)和动态栈(链表实现)。静态栈对于静态栈,我们一般通过数组来实现的。实现一个栈,里面主要涉及...

2019-10-24 08:25:07 204

原创 CityPicker 城市选择器V4.0.0

CityPicker 城市选择器在实际的项目中一般情况下都需要使用到省市区三级联动地址选择的功能,有的公司是提供接口获取,有的公司则不是,需要自己实现。一开始,我也深受其扰,每次都是要复制一遍,就想能不能打个包出来,供大伙使用。所以自己就封装了一个,不需要自己添加数据源,直接引用即可。这就是CityPicker城市选择器的由来!功能点支持仿iOS滚轮实现、仿京东样式、一级城市列表、三级...

2019-01-23 15:07:55 4865

原创 2018年6月份Android上海找工作经历

前言首先介绍一下我的经历:本人 14 年毕业,在学校里面自学 Android 开发,在 cz 呆了三年,小城市,IT 不发达,倒闭了 2 家公司,然后杭州谋求发展,可参考以前写的一篇求职文章《杭州找Android工作的点点滴滴》,呆了一年,又倒闭了,哎,一言难尽呐!上个月,也就是 6 月份从杭州来到了上海,满打满算找工作到确认去这家公司用了二个星期。从 5 月份离职,中间去成都重庆玩了一个...

2018-07-10 10:49:29 2601 4

原创 Android taskAffinity研究

1. taskAffinity和singleTask,singleInstancetaskAffinity 是用来指示 Activity 属于哪一个 Task 的,默认情况下 Activity 的 taskAffinity 是包名。

2018-04-10 10:48:10 1348

原创 java集合框架分析-HashMap(加载因子及初始容量深入分析)

《java集合框架分析-HashMap》 一文对 Java 的 HashMap 进行了简单分析,本篇继续深入了解其中涉及到的一些重要内容。源码环境 JDK1.6

2018-03-26 14:57:50 2611

原创 Java 注解简单学习

注解概念Java注解是附加在代码中的一些元信息,用于一些工具在编译、运行时进行解析和使用,起到说明、配置的功能。 注解不会也不能影响代码的实际逻辑,仅仅起到辅助性的作用。包含在 java.lang.annotation 包中。其中涉及到另外一个概念“元注解”,元注解是指注解的注解。包括 @Retention @Target @Document @Inherited @Repeatable

2018-03-08 10:08:06 251

原创 Java反射简单学习

反射经常听到这个词,但是总是不理解这个意思。今天便来理解一下反射这个概念,为什么说在框架设计中,反射用到的比较多。本文记录一下学习反射方面的知识点。反射概念JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。概念比较精确、抽象但是不便于理解。

2018-03-06 10:29:35 400

原创 Java设计模式-代理模式

本篇文章来学习一下代理模式。代理模式从字面上讲“代理”是通过中间人来完成的,譬如我想去拿快递,但是现在我很忙没空,请小明去拿一下,这个小明就充当代理的角色。接下来我们从软件方面来详细了解一下代理模式。代理模式需要注意的有下面几点: 用户只关心接口功能,而不在乎谁提供了功能。上图中接口是 Subject。 接口真正实现者是上图的 RealSubject,但是它不与用户直接...

2018-02-28 15:04:18 416

bcprov-ext-jdk15on-166.jar

https中用于生成客户端的信任证书库的工具,由服务端证书生成的证书库。由于官网下载速度极其慢,因此本人下载再来后上传到CSDN,供需要的人下载。

2020-12-09

portecle工具,jks转bks

Java平台默认识别jks格式的证书文件,但是android平台只识别bks格式的证书文件。官网下载很慢,因此下载下来放到csdn供需要的人下载

2020-12-07

free_video_to_gif

将MP4文件转化为gif图像

2016-10-26

省市区三级联动效果APK演示

这是省市区三级联动实现的效果APK,数据使用xml解析,彷iOS效果滚轮实现。

2016-05-12

python eclipse开发插件

python的eclipse插件,只需要解压,然后放入到eclipse的目录plugins河feather目录下即可,然后重启再配置解释器就可以了

2015-12-19

获取SHA1值得APP(android版)

android 地图开发申请key时所需要的sha1值获取工具,运行该APP,填入包名便可以直接获取相应的sha1值。

2015-12-10

android 省市区三级联动代码实现

android 实现解析全国省市区地址信息,实现地址信息的三级联动。代码设计iO处理,从本地assert读取资源、复杂格式的json解析以及android控件spinner的使用。

2015-08-21

AsyncTask异步线程实现加载网络图片

此demo主要是使用异步线程加载一张网络图片,过程中主要涉及到一些网络请求、java io操作、progressBar的使用,可以对于网络编程可以参考一下。

2015-08-09

android天气预报

这是一个简单的天气预报的demo,运用百度车联网api实现,通过线程来实现网络请求,最后解析服务器返回的json数据,然后运用到android上面,整体来说,这里面涉及到的知识点还是蛮多的,可以看一下。

2015-08-07

google_appengine_1.7.4

google_appengine_1.7.4 AppEngine免费开放给前1万个注册登入的用户,Google开发者团队产品经理PeteKoomen表示,此一服务提供整套的Google在线服务给希望能找地方放置软件的用户。

2014-07-24

MFC实现的基于文档的QQ聊天程序

用MFC实现的网络聊天工具,包含客户端和服务器端

2013-09-21

androidLBS签到

使用android 平台下进行地图服务应用

2013-03-18

基于Android平台与LBS地理位置服务的移动社交应用系统

基于Android平台与LBS地理位置服务的移动社交应用系统 有多重功能,可在此基础上进行开发整合!

2013-03-11

公交路线查询应用系统

界面美观、代码清晰,介绍android平台下离线公交查询软件的开发

2013-03-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除