- 博客(112)
- 收藏
- 关注
原创 android过度绘制
过度绘制的原理不细说,主要讲解决办法1、去掉window 的背景getWindow().setBackgroundDrawable(null);2、去掉view多余的背景背景色设置的原则是尽量不给大块的view设置背景,因为大块的view设置背景后,小块的view又有自己的背景色,直接就1x的overDrawle 优化前 基本在1-4x
2016-03-03 21:57:56
316
原创 android源码里的单例模式和模版模式
一般单例都是一个类写一个的,这里把单例的流程抽象出来,可以共用了抽象类public abstract class SingletonT> { private T mInstance; protected abstract T create(); public final T get() { synchronized (this) {
2016-02-18 14:39:52
362
转载 Charles(mac版本)一些常用操作的教程
1. Charles替换http的方法1) 主菜单Tools——No Caching,开启no caching2) 如下图。在主界面右键响应的请求,选择“Map Remote”(替换的请求为线上请求)或“Map Local”(替换的请求为本地文件)。以“Map Local”为例: 3) 在界面里选择本地文件,保存配置: 4) 刷新页面,查看
2015-10-15 11:22:13
2041
转载 墓碑机制 Understanding Doze
If a user leaves a device unplugged and stationary for a period of time, with the screen off, the device enters Doze mode. In Doze mode, the system attempts to conserve battery by restricting apps' ac
2015-10-12 11:45:05
780
转载 Configuring Auto Backup for Apps
Users frequently invest time and effort to configure apps just the way they like them. Switching to a new device can cancel out all that careful configuration. Devices running Android 6.0 and higher a
2015-10-12 11:15:02
1014
转载 Requesting Permissions at Run Time
Beginning in Android 6.0 (API level 23), users grant permissions to apps while the app is running, not when they install the app. This approach streamlines the app install process, since the user does
2015-10-12 11:00:06
476
转载 Android之NDK开发
一、NDK产生的背景 Android平台从诞生起,就已经支持C、C++开发。众所周知,Android的SDK基于Java实现,这意味着基于Android SDK进行开发的第三方应用都必须使用Java语言。但这并不等同于“第三方应用只能使用Java”。在Android SDK首次发布时,Google就宣称其虚拟机Dalvik支持JNI编程方式,也就是第三方应用完全可以通过JNI调用自己的C
2015-09-30 17:00:23
303
转载 apk加密流程
爱加密Android APK加密步骤:1.把原来的classex.dex 用Android加密算法实现加密成assets/ijiami.dat2.把事先写好的jni代码和相应的classex.dex替换到原有的位置3.程序安装完运行起来以后,先运行Android加密 爱加密的加壳程序,在jni里面动态加载原来的classex.dex代码,从而达到Android加密保护的目的
2015-09-30 15:22:34
1658
转载 Android系统中Parcelable和Serializable的区别
进行Android开发的时候,我们都知道不能将对象的引用传给Activities或者Fragments,我们需要将这些对象放到一个Intent或者Bundle里面,然后再传递。通过Android的API,我们知道有两种选择,即在传递对象时,需要对我们的对象进行 Parcelable 或者Serializable化。作为Java开发者,相信大家对Serializable 机制有一定了解,那为
2015-09-30 14:29:29
337
转载 为什么不能往Android的Application对象里存储数据
在一个App里面总有一些数据需要在多个地方用到。这些数据可能是一个 session token,一次费时计算的结果等。通常为了避免activity之间传递对象的开销 ,这些数据一般都会保存到持久化存储里面。有人建议将这些数据保存到 Application 对象里面,这样这些数据对所有应用内的activities可用。这种方法简单,优雅而且……完全扯淡。假设把你的数据都保存到Appl
2015-09-30 10:00:10
293
原创 URLEncoder URLDecoder HtmlUtils
public static void main(String[] args) throws UnsupportedEncodingException { String url = "http://www.baidu.com?a=b&b=c&abc=你好"; String en = URLEncoder.encode(url, "UTF-8"); Syst...
2011-05-08 18:33:02
168
原创 volatile 简介
Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是 synchronized 的一部分。本文介绍了几种有效使用 volatile 变量的模式,并强调了几种不适合使用 volatile 变量的情形。锁提供了两种主要特性...
2011-05-02 14:18:27
119
原创 多线程效率问题
package ThreadTest;public class ThreadTest3 { public static void main(String args[]){ MyThread mt = new MyThread() ; // 定义线程对象 Thread t1 = new Thread(mt) ; // 定义T...
2011-05-02 13:49:16
199
原创 volatile 修饰的属性,在多线程修改下,也是线程不安全的
volatile 修饰的对象,在多线程修改下,也是线程不安全的 package ThreadTest;public class ThreadTest3 { public static void main(String args[]){ MyThread mt = new MyThread() ; // 定义线程对象 Th...
2011-05-02 13:43:06
925
原创 线程不安全的原因
package ThreadTest;public class ThreadTest { public static void main(String args[]){ MyThread mt = new MyThread() ; // 定义线程对象 Thread t1 = new Thread(mt) ; // 定义Th...
2011-05-02 13:39:45
279
原创 mysql blob 二进制大数据处理 图像 电影
import java.sql.Connection ;import java.sql.DriverManager ;import java.sql.SQLException ;import java.sql.PreparedStatement ;import java.io.File ;import java.io.FileInputStream ;import j...
2011-04-27 22:15:00
197
原创 mysql clob 大数据处理
import java.sql.Connection ;import java.sql.DriverManager ;import java.sql.SQLException ;import java.sql.PreparedStatement ;import java.io.File ;import java.io.FileInputStream ;import j...
2011-04-27 22:11:30
822
原创 ServerSocket 多线程服务器开发
package socket;import java.net.* ;import java.io.* ;public class HelloServer{ public static void main(String args[]) throws Exception { // 所有异常抛出 ServerSocket server = null ; // 定义Ser...
2011-04-24 16:24:05
285
原创 接口的作用 宠物商店
package PetShopDemo;interface Pet{ // 定义宠物接口 public String getName() ; public String getColor() ; public int getAge() ;}class Cat implements Pet{ // 猫是宠物,实现接口 private String name ; ...
2011-04-24 15:14:33
422
原创 编码简介
1 gbk 支持简体和繁体中文 gb2312 支持简体中文 2 utf 1-6直接变长 中英文混排比较省空间 取得本机编码 public static void main(String[] args) { System.out.println(System.getProperty("file.encoding"));// UTF-8// ...
2011-04-24 14:47:39
133
原创 Arrays
package ArraysTest;import java.util.Arrays;public class ArraysTest { /** * @param args */ public static void main(String[] args) { int temp[] = {3,4,5,7,9,1,2,6,8} ; // 声明一个整...
2011-04-24 14:15:45
138
原创 Cloneable 对象克隆
class Person implements Cloneable{ // 实现Cloneable接口表示可以被克隆 private String name ; public Person(String name){ this.name = name ; } public void setName(String name){ this.name = name ;...
2011-04-24 14:08:17
142
原创 System
package SystemTest;public class SystemTest { /** * @param args */ public static void main(String[] args) { System.getProperties().list(System.out);// -- listing properties --...
2011-04-24 13:59:49
132
原创 TreeSet对象排序的方法
package set;import java.util.Set ;import java.util.TreeSet ;class Person implements Comparable<Person>{ private String name ; private int age ; public Person(String name,int age...
2011-04-24 13:09:19
459
原创 HasnMap使用非系统类作为key
1 key类覆写equals hashCode 方法package collectionTest;import java.util.HashMap;import java.util.Map;class Person{ private String name ; private int age ; public Person(String name,int ...
2011-04-24 13:00:13
116
HashMap 的两种遍历方式
public static void main(String[] args) { Map<String, String> map = new HashMap<String, String>(); map.put("a", "b"); map.put("b", "b"); for(Map.Entry<String, String&
2011-04-24 12:35:49
136
原创 ENUMERATION接口
很少用 import java.util.Vector; import java.util.Enumeration; public class EnumerationDemo01{ public static void main(String args[]){ Vector<String> all = new Vector<String>()...
2011-04-23 14:51:14
113
原创 ListIterator
1 只能有List实例化2 必须先有头到尾,才能由尾到头 import java.util.ArrayList ;import java.util.List ;import java.util.ListIterator ;public class ListIteratorDemo02{ public static void main(String argsp[])...
2011-04-23 14:44:27
111
原创 Iterator
import java.util.List ;import java.util.ArrayList ;import java.util.Iterator ;public class IteratorDemo02{ public static void main(String args[]){ List<String> all= new ArrayList&...
2011-04-23 14:36:46
97
原创 List.subList 得到的新数组地址指向旧数组
public static void main(String[] args) { List<String> list = new ArrayList<String>() ; list.add("A") ; // 增加元素 list.add("B") ; // 增加元素 list.add("C") ; // 增加元素 list.add("...
2011-04-23 14:22:44
281
原创 List数组元素的删除 不会出现IndexOutOfBoundsException
public static void main(String[] args) { List<String> list = new ArrayList<String>() ; list.add("A") ; // 增加元素 list.add("B") ; // 增加元素 list.add("C") ; // 增加元素 list.add("...
2011-04-23 14:21:46
360
原创 SortedSet
import java.util.SortedSet ;import java.util.TreeSet ;public class TreeSetDemo05{ public static void main(String args[]){ SortedSet<String> allSet = new TreeSet<String>() ; // ...
2011-04-23 13:50:28
99
原创 HashSet TreeSet
import java.util.HashSet ;import java.util.Set ;public class HashSetDemo01{ public static void main(String args[]){ Set<String> allSet = new HashSet<String>() ; allSet.add("...
2011-04-23 13:43:49
104
原创 LinkedList 队列
import java.util.LinkedList ;public class LinkedListDemo01{ public static void main(String args[]){ LinkedList<String> link = new LinkedList<String>() ; link.add("A") ; // 增加元...
2011-04-23 13:36:13
118
原创 List Vector
import java.util.ArrayList ;import java.util.List ;public class ArrayListDemo04{ public static void main(String args[]){ List<String> allList = null ; allList = new ArrayList<S...
2011-04-23 13:14:12
97
原创 Linux基础13:学习SHELL编程
http://www.sxszjzx.com/~t096/phparticle/article.php/360
2011-04-23 12:14:12
116
原创 HashSet 对对象去重
import java.util.Set ;import java.util.HashSet ;class Person{ private String name ; private int age ; public Person(String name,int age){ this.name = name ; this.age = age ; } p...
2011-04-21 23:00:58
436
原创 Properties 属性 properties xml
import java.util.Properties;public class PropertiesDemo01{ public static void main(String args[]){ Properties pro = new Properties() ; // 创建Properties对象 pro.setProperty("BJ","BeiJing") ; ...
2011-04-21 22:40:00
91
原创 stack 栈
import java.util.Stack ;public class StackDemo{ public static void main(String args[]){ Stack<String> s = new Stack<String>() ; s.push("A") ; // 入栈 s.push("B") ; // 入栈 s...
2011-04-21 22:29:48
95
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人