自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

罐v子的博客

Android开发路上的一个迷途者。如果对我写的文章有不同观点,欢迎提出,我们一起探讨。

  • 博客(18)
  • 收藏
  • 关注

原创 魅族Flyme手机无法连接电脑ADB调试

魅族Flyme手机无法连接电脑ADB调试有些用魅族手机调试的童鞋可能会发现魅族手机可以连接电脑传输文件,打开了调试功能,但是就是不能连接到ADB。有些情况下,打开设备管理器也可以看到ADB那里有个黄色的感叹号,明显就是ADB有异常嘛。那要怎么解决呢?下面提供两种方法:方法一:MAC的设置方法:1.把Android手机开启调试模式,然后连接在我们的Mac OS上。 2.选择Ma...

2018-09-03 20:47:47 22174

原创 Java+Android面试知识点(三)

ARP协议在IP以太网中,当一个上层协议要发包时,有了该节点的IP地址,ARP就能提供该节点的MAC地址。HTTP、HTTPS的区别HTTP所封装的信息时明文的;HTTPS使用TLS(SSL)进行加密HTTP缺省工作在TCP协议80端口;TTPS缺省工作在TCP协议443端口HTTPS的工作流程一般如以下方式: 完成TCP三次同步握手客户端验证服务器数字证书,通过则进入步......

2018-02-28 10:44:37 386

原创 为什么Looper.loop()死循环不会导致ANR

为什么loop这个死循环会在主线程执行,不会ANR么?答:最开始Android的入口ActivityThread里面的main方法,里面有一个巨大的Handler,然后会创建一个主线程的looper对象,这也是为什么直接在主线程拿Handler就有Looper的原因,在其他线程是要自己Looper.prepare()的。 其实整个Android就是在一个Looper的loop循环的,整个An...

2018-02-28 07:47:12 9928

原创 Java多线程——线程池原理

前言线程是稀缺资源,如果被无限制地创建,不仅会消耗系统资源,还会降低系统稳定性。合理地使用线程池对线程进行统一分配、调优和监控,有以下好处:降低资源消耗提高响应速度提高线程的可管理性Java1.5引入的Executor框架把任务的提交和执行进行解耦,只需要定义好任务,然后提交给线程池。而不需要关心该任务是如何执行、被哪个线程执行以及什么时候执行。线程池的使用步骤如下...

2018-02-28 07:29:48 1846

原创 Java线程基础

多线程基础什么是线程以及线程与进程的区别在现代操作系统中,运行一个程序时,会为其创建一个进程。例如启动一个QQ程序,操作系统就会为其创建一个进程。而操作系统中调度的最小单位元是线程,也叫轻量级进程,在一个进程里可以创建多个进程,这些线程都拥有各自的计数器,堆栈和局部变量等属性,并且能够访问共享的内存变量。处理器在这些线程上高速切换,让使用者感觉到这些线程在同时执行。因此我们可以这样理解...

2018-02-28 07:23:13 209

原创 equal和“==”的区别

“==”对于基本数据类型,判断两个变量的值是否相等;对于引用类型则比较两个对象是否地址相同,是否为同一引用。“equal”不能用于基本数据类型。只能用于类变量。对于基本数据类型要用其包装类。因为对象变量的存储的是对象在内存中的路径,即内存地址。所以用“==”比较时,即使对象的值相等,但是他们的内存地址不同,所以==的结果为false。故“==”用于比较两个变量的值是否相等,而不是变量引用...

2018-02-28 07:15:59 3205

原创 Java+Android面试知识点(二)

1. [Map、Set、List、Queue、Stack的特点与用法](#map-set-list-queue-stack的特点与用法)2. [HashMap和HashTable的区别](#hashmap和hashtable的区别)3. [](#)4. [HashMap、LinkedHashMap和TreeMap的区别](#hashmap-linkedhashmap和treemap的区别)......

2018-02-28 07:10:54 273

原创 Java+Android面试知识点(一)

1. [Android中的进程优先级](#android中的进程优先级)2. [DVM是什么?](#dvm是什么)3. [Dalvik虚拟机实例和Linux进程的关系](#dalvik虚拟机实例和linux进程的关系)4. [ArrayList 和LinkedList的内部实现](#arraylist-和linkedlist的内部实现)5. [Vector 和 ArrayList的区别](......

2018-02-27 17:19:04 961

原创 Android内存泄漏的分析和避免

内存泄漏Java是垃圾回收语言的一种,其优点是开发者无需特意管理内存分配,降低了应用由于局部故障(segmentation fault)导致崩溃,同时防止未释放的内存把堆栈(heap)挤爆而导致程序崩溃的可能,所以写出来的代码更为安全。不幸的是,在Java中仍存在很多容易导致内存泄漏的逻辑可能(logical leak)。如果不小心,你的Android应用很容易浪费掉未释放的内存,最终导致...

2018-02-27 17:13:02 208

原创 魅族不启动GPS,无法扫描WiFi信息

由于Android4.0以上不允许强制修改系统设置,所以要引导用于前往设置GPS功能启动。启动GPS设置方法:public static final int LOCATION_REQUEST = 110;public static LocationManager openGPSSettings(final Context context){ LocationManager...

2018-02-27 16:57:03 916 1

原创 Java内存模型

Java内存模式关于高速缓存大家都知道,计算机在执行程序时,每条指令都是在CPU中执行的,而执行指令过程中,势必涉及到数据的读取和写入。由于程序运行过程中的临时数据是存放在主存(物理内存)当中的,这时就存在一个问题,由于CPU执行速度很快,而从内存读取数据和向内存写入数据的过程跟CPU执行指令的速度比起来要慢的多,因此如果任何时候对数据的操作都要通过和内存的交互来进行,会大大降低指令执

2018-01-29 08:45:49 292

原创 Activity启动流程和生命周期

借用别人的一句话总结。 Activity的启动流程,你不用关心在AMS里面这里跳到那里是干什么,还有ActivityStack以及它的那个SuperXX跳来跳去是在搞毛,你需要了解的是:在Context里面,通过AMS的Client ActivityManagerNative发起Binder调用进入system_server进程,在AMS里面绕了一圈(处理Activity栈以及生命周期相关),然后

2017-06-28 14:17:15 373

原创 Java中hashCode()和equal()方法的使用

使用hashCode()和equals() hashCode()方法被用来获取给定对象的唯一整数。这个整数被用来确定对象被存储在HashTable类似的结构中的位置。默认的,Object类的hashCode()方法返回这个对象存储的内存地址的编号。hash散列算法,使得在hash表中查找一个记录速度变O(1). 每个记录都有自己的hashcode,散列算法按照hashcode把记录放置在合适的位置

2017-06-28 14:07:46 1425

原创 equal和“==”的区别

“==”对于基本数据类型,判断两个变量的值是否相等。 “equal”不能用于基本数据类型。只能用于类变量。对于基本数据类型要用其包装类。因为对象变量的存储的是对象在内存中的路径,即内存地址。所以用“==”比较时,即使对象的值相等,但是他们的内存地址不同,所以==的结果为false。故“==”用于比较两个变量的值是否相等,而不是变量引用的对象是否相等 equal用于比较两个对象是否相同。总之:“=

2017-06-28 14:06:53 365

转载 Colors颜色XML文件借鉴

#FFFFFF #FFFFF0 #FFFFE0 #FFFF00 #FFFAFA #FFFAF0 #FFFACD #FFF8DC #FFF5EE #FFF0F5 #FFEFD5 #FFEBCD #FFE4E1 #717171 #FFE4C4 #

2016-11-11 15:46:22 422

原创 Android中adb端口被占用的有效解决方案

新增:最近在使用中发现了新问题,AS先启动Genymotion后,再点击运行程序就会提示ADB被占用,用adb kill-server无法解决。而如果我先试着点击运行程序(不需要在模拟器中运行,只是点击运行),再打开Genymotion就不会有这种问题。  第一种方案:Android开发经常遇到adb的端口127.0.0.1:5037,被其他程序占用的情况,老是启动不了模拟器。...

2016-08-09 16:52:59 10268 1

转载 Android WebView属性及用法

实现WebView有以下两种不同的方法:第一种方法的步骤:1.在要Activity中实例化WebView组件:WebView webView = new WebView(this);2.调用WebView的loadUrl()方法,设置WevView要显示的网页://访问网址:webView.loadUrl("http://www.***.com");//访问本地文件:webV

2016-08-09 16:00:48 572

转载 Android 对话框(Dialog)大全 建立你自己的对话框

Activities提供了一种方便管理的创建、保存、回复的对话框机制,例如 onCreateDialog(int), onPrepareDialog(int, Dialog), showDialog(int), dismissDialog(int)等方法,如果使用这些方法的话,Activity将通过getOwnerActivity()方法返回该Activity管理的对话框(dialog).

2016-08-08 10:03:59 227

空空如也

空空如也

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

TA关注的人

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