自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

转载 ViewGroup为什么不会调用onDraw

转自:https://blog.csdn.net/leehong2005/article/details/7299471正常情况下,我们重写LinearLayout的onDraw方法,它是不会被调用的,这篇文章就来分析一下原因和解决方法。一,现象<com.test.demo.MyLinearLayout xmlns:android="http://schemas.android....

2019-06-25 16:16:21 253

原创 线程和AsyncTask基本概念已经使用

线程是程序最小的调度单位,在同一进程中的资源是共享的,可以理解为:多线程可以同享同一个变量,但是需要注意线程安全问题,小心会产生售票问题弊端:创建大量线程容易消耗完系统内存以及导致cpu的频繁切换造成系统死机实现线程的方法:一、一种是类继承Thread二、一种是实现接口RunnableThread调用方法:Thread thread=new Thread();1、thr...

2019-04-18 11:20:48 208

原创 android屏幕适配基本概念

今天我们先讲讲屏幕适配中基本概念:分辨率分辨率通常表示为:横轴像素长度*粽轴像素长度 例如:1080*1920pxpx全称为Pixel,是手机像素上的一个物理像素点,即1px就是一个像素点。dpidpi全称为Dots per inch ,被称为像素密度,代表一英寸里面有多少个像素点,计算公式为:dpi=屏幕对角线长度/屏幕尺寸dpi=2203px/5寸=440...

2019-04-08 17:04:43 176

原创 rxJava 操作符相似concat 、merge、zip

区别concat:组合多个被观察者一起发送数据,合并后按顺序串行执行merge:组合多个被观察者一起发送数据,合并后按时间线并行执行concat(合并)使用一个发射器把两个发射器连接成一个发射器concat() / concatArray()的区别:concat()组合被观察者数量<=4,concatArray()组合被观察者>4concat和merge的简...

2019-04-08 09:43:03 2444 2

原创 rxJava线程切换

RxJava线程类型:Schedulers.io()非cpu密集型适合查找文件,网络请求,访问数据库等耗时操作,线程数量无限制会导致线程无限增长。Schedulers.newThread()每次都会创建新的线程(线程的创建和销毁都是很耗性能的),需要慎用,一般可以用在长时间运行在后台,而不会频繁创建的操作。Schedulers.computation()cpu密集型用于处理...

2019-04-03 17:15:59 880

原创 java判断两个对象是否是同一个对象

比较两个对象是否相等,主要通过equals()和hashCode()equals()方法 hashCode()方法 equals()和hashCode()在hashSet中使用一、equals()equals()是Object中的方法,比较的对象的内存地址(如图一)。Object源码但是也有的类重写了equals()方法,比较的内容是否相等。例如:String 、Math、Int...

2019-02-26 14:57:44 13246

转载 强引用,弱引用,软引用

java 4中引用的级别有高到底依次:强引用&gt;软引用&gt;弱引用&gt;虚引用这篇文章就先来讲讲强引用、软引用、弱引用强引用(Strong Reference)强引用是使用普遍的引用,如果一个对象具有强引用,那么java回收器不会被回收它,当内存不足时,java虚拟机宁愿抛出outOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象。如果这个强引用是作...

2019-02-21 11:04:51 152

原创 fragment解析

fragment 主要方法:onAttach(Activity activity)onAttach(Context context)当fragment与Activity发生关联时调用,我们可以在此方法中通过getArguments()获取传入的Bundle参数使用fragment时,一般不要使用getActivity()而是在此方法中 activity= (Activity) contex...

2019-01-28 16:37:36 356

原创 判断是不是同一个对象

用“==”比较的是引用的地址,用equals比较的就是值判断是不是同一个对象 和他们的引用有联系需要判断引用是不是同一个如果引用相同,则说明是同一个对象,如果引用不同,即使这2个对象里的属性值相同,它们也是不同的对象Object a = new Object();Object b = new Object();判断是否是同一个对象 if(a==b){ System.out.pr...

2019-01-28 14:24:01 594

原创 Warning: org.codehaus.jackson.xc.JaxbAnnotationIntrospector: can't find referenced class javax

Note: there were 560 duplicate class definitions.      (http://proguard.sourceforge.net/manual/troubleshooting.html#duplicateclass)Warning: org.codehaus.jackson.jaxrs.JacksonJsonProvider: can't find...

2019-01-21 11:45:04 524

原创 Warning: org.bouncycastle.jce.provider.X509LDAPCertStoreSpi: can't find referenced class javax

Warning: org.bouncycastle.jce.provider.X509LDAPCertStoreSpi: can't find referenced class javax.naming.NamingEnumerationWarning: org.bouncycastle.jce.provider.X509LDAPCertStoreSpi: can't find referenc...

2019-01-21 11:40:11 644

转载 为什么有时候启动Activity需要加FLAG_ACTIVITY_NEW_TASK

转自:https://blog.csdn.net/dct8888/article/details/52064160 问题描述:我们通过广播来启动Activity的时候如果不设置intent的FLAG_ACTIVITY_NEW_TASK属性,就会报这个异常:android.util.AndroidRuntimeException: Calling startActivity() from...

2018-11-27 14:10:32 4972

原创 apk瘦身以及启动速度优化

一、apk瘦身1、minifyEnabled true,可以帮助移除那些在程序中使用不到的代码。如下图:2、shrinkResources true移除那些在程序中使用不到的资源,帮助减少APP的安装包大小。 二、apk启动速度优化:在application的onCreate()中初始化组件很容易阻塞程序启动,特别需要留意包含IO操作,网络访问等严重耗时的任务解决方案...

2018-11-21 16:38:48 432

原创 android ActionBar介绍

最近在使用actionBar的时候发现,把activity主题设置android:theme="@style/Theme.AppCompat" activity继承Activity后,获取actionBar始终为null,带着不解仔细检查Activity并没有去掉Title或者去掉ActionBar的设置。百度一波后发现ActionBar在android 3.0(SDK  11)开始出现。要想...

2018-11-16 17:02:50 1347

原创 android 获取渠道号

上文我已经说过,我们采用的打渠道包的方式是在apk文件中写入一个空的文件来标识不同的渠道包,这也是大多数打渠道包的原理。把渠道包解压之后,在META-INF文件夹下就会多出以下框框的中文件:既然我们已经写入了文件,下面就是要怎么读取这个文件和截取渠道号了。代码如下:public static String getChannelName(){String sourceDir = T...

2018-11-01 14:26:05 1499

原创 android v2签名、渠道包安装失败

android 7.0开始增加了v2签名,能够加速app的安装结束。v2签名机制:v2是android 7.0开始引入,使用SHA256哈希值校验,会对每个文件的二进制字节进行校验,对应用提供更安全的保护,不管签名后对文件做了任何修改,都会导致在android 7.0以上的机型安装失败(提示改安装包未包含任何证书),v2签名在编译的过程中,将会压缩,调整和签署合并成一步完成,可以缩短apk在设...

2018-11-01 13:49:20 1970

转载 RecyclerView Item 布局宽高无效问题探究

转自:https://juejin.im/entry/5979349e5188253def54b052

2018-10-12 16:46:34 332

转载 Android Studio运行app时提示Please select Android SDK

转自:https://blog.csdn.net/wilschan0201/article/details/73251285发现并不能点“Run”键运行app,并报错Error:Please select Android SDK: 最后在File-&gt;Project Structure中将Build tools version修改,问题解决。...

2018-10-12 15:47:22 318

原创 Webview下载apk

 方法一:使用手机内置的浏览器下载webView设置DownloadListener监听webView.setDownloadListener(new DownloadListener() { @Override public void onDownloadStart(String s, String s1, String s2, String s3, long l) {...

2018-10-09 10:05:34 2749

原创 android 调用系统浏览器

方法一:Intent intent = new Intent();intent.setAction("android.intent.action.VIEW");intent.addCategory(Intent.CATEGORY_BROWSABLE);Uri contentUri = Uri.parse(url);intent.setData(contentUri);int...

2018-10-08 23:01:13 3403

转载 Android 中 Fragment 嵌套 Fragment使用存在的bug附完美解决方案

自从Android3.0引入了Fragment之后,使用Activity去嵌套一些Fragment的做法也变得更加流行,这确实是Fragment带来的一些优点,比如说:Fragment可以使你能够将activity分离成多个可重用的组件,每个都有它自己的生命周期和UI,更重要的是Fragment解决了...

2018-08-05 11:21:21 1207

转载 Webview调用Android相机,录像,相册遇到的坑

转自:https://blog.csdn.net/a_running_wolf/article/details/77983739 今天拿到一个h5页面,发现需要调用到Android系统相册,录像,相机的时候,任你怎么点击上传图片,死活没有反应,奇怪的是,使用浏览器和微信直接加载哪个h5页面就没有问题,只要自己使用webview加载就是不行,平时遇到这种网页出问题的,都是直接使用浏览器先加载...

2018-07-16 23:26:40 7418 1

原创 HTTP

Web的应用层协议是超文本传输协议(HyperText Transfer Protocol,HTTP),是Web的核心。HTTP使用TCP作为它的支撑运输层协议,HTTP客户机发起一个与服务器的TCP连接,一旦建立连接,浏览器和服务器进程就会通过(Socket)套接字接口访问TCP。HTTP是无状态协议:因为HTTP服务器不保存关于客户机的任何信息。HTPP可以使持久连接也

2017-06-19 20:43:59 231

原创 Tcp/Ip协议

TCP 是面向连接的,并为两个端口系统之间的数据流动提供可靠地的字节流通道,属于可靠地数据传输。TCP提供全双工服务,可靠的数据传输。

2017-06-19 12:58:24 363

空空如也

空空如也

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

TA关注的人

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