自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

jhonjson的博客

我就是我,颜色不一样的烟火!

  • 博客(18)
  • 资源 (2)
  • 收藏
  • 关注

原创 TabLayout tab标签不显示问题终极解决方法

<android.support.design.widget.TabLayout android:id="@+id/homepage_child_tablayout" style="@style/Homepage.TabLayout" android:layout_width="match_parent" androi...

2019-04-28 12:31:40 2975

原创 Android 4.4版本 EventBus报错 java.lang.NoClassDefFoundError: android/os/PersistableBundle 终极方案

************* Crash Log Head ****************Device Manufacturer: OPPODevice Model : OPPO R7sAndroid Version : 4.4.4Android SDK : 19App VersionName : 3.0.3App VersionCode :...

2019-04-23 15:57:34 1084

原创 Fastjson和Gson解析

Fastjson

2019-04-17 22:33:05 789

原创 Fastjson和Gson的故事

Fastjson的介绍可以将Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象。Fastjson 源码地址优点:速度快fastjson相对其他JSON库的特点是快,从2011年fastjson发布1.1.x版本之后,其性能从未被其他Java实现的JSON库超越。使用广泛fastjson在阿里巴巴大规模使用,在数万台服务器上部署,f...

2019-04-16 21:33:51 147

原创 android IPC机制之Messenger

Messenger是什么?Messenger译为:信使。通过它可以在不同的进程中传递Message对象,在Message中放入我们需要传递的数据,就可以实现数据的进程间传递。Messenger是一种轻量级的IPC,它的底层实现是AIDL。AIDL详细使用看这里 /** * Create a new Messenger pointing to the given Handle...

2019-04-16 18:46:42 131

原创 android 获取assets目录下文件的路径

暴力直接获取 String path = "file:///android_asset/icon_wm.png";先把文件读成流,在转化地址String path = null;InputStream abpath = getClass().getResourceAsStream("/assets/icon_wm.png"); try { path = new Str...

2019-04-15 10:07:53 8357 3

原创 复习Android之ContentProvider详解

ContentProvider的底层是采用 Android中的Binder机制。ContentProvider是一个抽象类,并且实现ComponentCallbacks2接口abstract class ContentProvider implements ComponentCallbacks2我们开发自己的内容提供者我们就需要继承ContentProvider这个类并复写其方法,此类用来...

2019-04-14 21:42:12 235

原创 @androidx.annotation.NonNull 导致项目不能运行

解决方法:gradle.propertiest 文件中添加android.useAndroidX=trueandroid.enableJetifier=truebuild.gradle 文件中添加implementation 'androidx.annotation:annotation:1.0.2'Build->Rebuild Project之后项目就可以运行了...

2019-04-14 21:03:28 7586 3

原创 复习Android之ContentProvider简介

ContentProvider的作用ContentProvider作为安卓四大组件之一,它作用是为不同的应用之间数据共享,提供统一的接口。ContentProvider如何实现数据共享的?ContentProvider通过uri来标识其它应用要访问的数据,通过ContentResolver的增、删、改、查方法实现对共享数据的操作。还可以通过注册ContentObserver来监听数据是否发...

2019-04-14 19:28:25 104

原创 复习Android之Broadcast Receiver

广播有几种形式?分别有什么特点?Android广播的定义:无序广播 和 有序广播无序广播:通过sendBroadcast()方法来发送,异步操作。特点:所有的receivers接收broadcast的顺序都不确定,效率高。有序广播:通过sendOrderedBroadcast来发送,所有的receiver依次执行。特点:从优先级最高的广播接收器开始接收,如果优先级相同,谁先注册,就可...

2019-04-13 13:35:44 90

原创 java算法之排序算法

冒泡排序 public static void main(String[] args) { int srcArray[] = {11, 31, 44, 57, 7, 8, 911, 101, 111, 17, 21, 123, 28, 123, 32, 538, 41, 457, 540, 565, 641, 78, 81, 88, 95, 98}; bub...

2019-04-11 11:02:59 111

原创 java算法之二分查找算法

二分查找又称折半查找,它是一种效率较高的查找方法。、折半查找的算法思想:、将数列按有序化(递增或递减)排列,进行折半查找。可以明显减少比较次数,提高查找效率。优点:查找比较次数少,查找速度快,性能好。缺点:要求待查表为有序表,且插入删除困难。public static void main(String[] args) { int srcArray[] = {1, 3, 4,...

2019-04-09 13:09:26 281

原创 线程知识巩固第五节

线程池的原理上一篇介绍了为什么要使用线程,以及创建线程的的几种方式。接下来将详细介绍线程的实现原理。由源码可知,线程池实际上调用的还是ThreadPoolExecutor方法。下面将看一下ThreadPoolExecutor的源代码和注释解析。 /** * Creates a new {@code ThreadPoolExecutor} with the given initial...

2019-04-08 19:48:08 149

原创 线程知识巩固第四节

线程池的使用为什么要使用线程池?线程池为线程生命周期开销问题和资源不足问题提供了解决方案。通过对多个任务重用线程,线程创建的开销被分摊到了多个任务上。优点:请求线程已经存在,所以消除了线程创建所带来的延迟。可以立即请求服务,使应用程序响应更快。通过适当地调整线程池中的线程数目,也就是当请求的数目超过某个阈值时,就强制其它任何新到的请求一直等待,直到获得一个线程来处理为止,从而可以防止资源...

2019-04-07 22:29:54 156

原创 线程知识巩固第三节

线程常用的一些方法sleep()方法主要的作用:停止当前线程执行,资源让给其他线程执行,到指定时间线程自动恢复运行状态。 try { //休息一秒 sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); }wait() 和notify()有一个共同...

2019-04-07 21:51:13 174

原创 线程知识巩固第二节

多线程之经典案例–售票案例 public static void main(String[] args) { System.out.println("Hello World!"); new MyThread("张三 ").start(); new MyThread("李四 ").start(); } public...

2019-04-07 20:13:19 182

原创 线程知识巩固第一节

什么是线程?线程:操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。线程的开启方式有几种?怎么实现?开启线程的方式有三种:继承Thread类(重写run方法) public class Main { publ...

2019-04-07 19:33:19 209

原创 复习Android之Service的AIDL传值

Service的类型本片按地点划分种类开启关闭本地服务public static void bindLocalService(Context context, ServiceConnection serviceConnection) { if (context == null || null == serviceConnection) { ...

2019-04-01 09:33:47 718

WebView头部添加android原生视频播放

web view

2023-06-30

eZip_V1.8.1.dmg.zip

Mac 解压压缩最好用的免费工具,让你的开发事半功倍,强烈推荐一波。欢迎下载使用。

2020-05-14

apache-tomcat-7.0.82.tar.gz

免费!!!!64位linux下的tomcat 7,jsp和servlet的开发基础服务器。

2017-10-10

空空如也

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

TA关注的人

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