Android知识点:process属性、openOrCreateDatabase、URLEncoder.encode、垃圾回收、 缓存处理、断点续传

简介:

1.process属性:

在清单里为activity或者serveice配置process属性,可以指定在某一个包名的线程中执行,而不是当前的包名的线程。

1
android:process= "com.rongqin.test"



2.openOrCreateDatabase方法:

通过openOrCreateDatabase方法可以修改数据库存储路径。

1
SQLiteDatabase.openOrCreateDatabase(file, factory);

参考资料:http://blog.csdn.net/wangqilin8888/article/details/7903048


3.解决url汉字乱码的方法:

URLEncoder.encode(String)方法是对url中的中文参数经行编码的,可以解决乱码的问题。

1
2
3
4
5
6
7
8
9
10
public  class  TestUrlEncode
{
     public  static  void  main(String[] args) {
         String url =  "http://www.xinboedu.com/" ;
         String getParam =  "?key1=阿斯顿" ;
         String newUrl = URLEncoder.encode(getParam);
         System.out.println(newUrl);
         //打印结果:%3Fkey1%3D%E9%98%BF%E6%96%AF%E9%A1%BF
     }
}


4.flag_activity_new_task:

启动一个程序,可以主界面点击图标进入,也可以从一个程序中跳转过去(区别是根据activity在manifest里面的配置,这个activity可能会放在不同的task栈里面)。

如果intent设置了flag_activity_new_task,跟从图标启动进入的效果一样,即重建一个栈,否则就是把任务加到自己的栈中。


5.垃圾回收(GC:Gabage Collection)中如何彻底释放list容器对象:

1
2
3
4
5
6
7
private  ArrayList<List> list =  new  ArrayList<List>();
public  void  onDestroy()
{
     super .onDestroy();
   list.clear(); //先清除list里的元素,清除对元素的引用
   list =  null ; //清除对list的引用
}


6.缓存的优化处理:

 1.可以优先考虑分页加载、图片压缩等

 2.另外可以通过一二级缓存,在将bitmap对象加入到二级缓存里前,先通过bmp.recycle()方法在内存中释放掉

 3.惰性加载

 4.弱引用    

1
2
3
4
5
6
public  void  ruo()
{
     WeakReference<MediaPlayer> player =  new  WeakReference<MediaPlayer>( new  MediaPlayer());
     MediaPlayer mediaPlayer = player.get();
     mediaPlayer.start();
}


7.断点续传的原理:

 1.append方法的运用

 2.randomAccessFile(需要用到这个类,可以读取到文件字段里的任意位置)

 3.下载的字节数,存到数据库里,在get或post请求服务端





本文转自 glblong 51CTO博客,原文链接:http://blog.51cto.com/glblong/1248359,如需转载请自行联系原作者

目录
相关文章
|
4月前
|
缓存 JavaScript C++
【Vue】—计算属性缓存VS方法以及侦听器的区别
【Vue】—计算属性缓存VS方法以及侦听器的区别
|
5月前
|
Web App开发 缓存 搜索推荐
HTML中meta标签中属性详解并设置页面缓存策略
HTML中meta标签中属性详解并设置页面缓存策略
281 0
|
4月前
|
XML Java Android开发
Android Studio App开发中改造已有的控件实战(包括自定义支付宝月份选择器、给翻页栏添加新属性、不滚动的列表视图 附源码)
Android Studio App开发中改造已有的控件实战(包括自定义支付宝月份选择器、给翻页栏添加新属性、不滚动的列表视图 附源码)
40 1
|
7月前
|
存储 数据库 文件存储
android 数据存储的知识点
android 数据存储的知识点
74 0
|
8月前
|
Android开发 UED
Android focusable属性的作用
Android focusable属性的作用
153 0
|
8月前
|
XML Android开发 数据格式
Android中利用shape属性自定义设置Button按钮
Android中利用shape属性自定义设置Button按钮
134 0
|
4月前
|
传感器 监控 物联网
Android Ble蓝牙App(三)特性和属性
Android Ble蓝牙App(三)特性和属性
|
4月前
|
XML 缓存 Java
Android App开发之利用Glide实现图片的三级缓存Cache讲解及实战(附源码 超详细必看 简单易懂)
Android App开发之利用Glide实现图片的三级缓存Cache讲解及实战(附源码 超详细必看 简单易懂)
111 0
|
6月前
|
缓存 JavaScript C++
17Vue - 计算属性(计算缓存 vs Methods)
17Vue - 计算属性(计算缓存 vs Methods)
19 0
|
7月前
|
算法 网络协议 Java
Android面试知识点复习手册(收藏)
Android面试知识点复习手册(收藏)
84 0