主要参考Hongyang大神的这篇文章//Android 6.0 运行时权限处理完全解析http://blog.c...[作者空间]
开发思路 SurfaceView extends View, 实际上它也是继承自View.和普通View的区别就是...[作者空间]
前言 实际项目开发中, 一般不需要自己去写图片缓存框架, 直接用glide之类的成熟sdk是明智之举, 但如果自己...[作者空间]
使用目的 目的: 简单一句话就是它可以发送一个PendingIntent出来.使用AlarmManager可以实现...[作者空间]
前言 一直以来, 应用信息里的"清除数据"和"清除缓存"到底删除的是哪个目录里的数据, 虽不是什么大的问题, 却一...[作者空间]
canvas.drawBitmap()的3个方法介绍 <1> drawBitmap(Bitmap bitmap, ...[作者空间]
一点感想 开发中, 其实经常会碰到这种情况, 拿到一个文件几百上千行的代码, 到处是各种对framework的AP...[作者空间]
在 AndroidManifest 中声明
Hook的概念 *所谓对API的Hook, 其实就是对方法的动态替换. *采用代理的方式, 创建一个新的对象, 其...[作者空间]
1. SQLite数据库介绍 开源, 支持NULL, INTEGER, REAL(浮点数), TEXT(字符串)...[作者空间]
使用线程池的好处 可以归纳为3点: 重用线程池中的线程, 避免因为线程的创建和销毁所带来的性能开销. 有效控制线程...[作者空间]
3个分类 View 动画, 属性动画, 帧动画 View动画(android 3.0以下使用) Translate...[作者空间]
Serializable - Java原生的序列化方案Parcelable - android提供的序列化方案 S...[作者空间]
生命周期方法 注意区分哪些方法运行在UI线程, 哪些方法运行在worker thread. 使用Asynctask...[作者空间]
为什么要使用HandlerThread 开发中, 经常使用 new Thread(new Runnable { ....[作者空间]
Service的2个分类以及各自的生命周期 通过startService() 启动的服务叫做本地服务, 即Loca...[作者空间]
项目中的实践: 红点提示ImageView的实现, ImageViewWithDot 正方形ImageView的实...[作者空间]
先找调用inflate()的位置, 没有调用inflate()的话, 就查调用了addView()的位置. 对于自...[作者空间]
Json数据格式 数据以键值对保存, 且键必须是String类型.{}中表示一个json对象, 每个json对象中...[作者空间]