安卓开发知识点总结



1.安卓开源框架使用
xUtils
ThinkAndroid
Afinal
android-async-http-library
ActionBarSherlock
ViewPagerIndicator
AppMsg
Volley


xutils简介   从新写 手机助手
目前xUtils主要有四大模块:
DbUtils模块:


android中的orm框架,一行代码就可以进行增删改查;
支持事务,默认关闭;
可通过注解自定义表名,列名,外键,唯一性约束,NOT NULL约束,CHECK约束等(需要混淆的时候请注解表名和列名);


ViewUtils模块:
android中的ioc框架,完全注解方式就可以进行UI绑定和事件绑定;
新的事件绑定方式,使用混淆工具混淆后仍可正常工作;
目前支持常用的11种事件绑定


HttpUtils模块:
支持同步,异步方式的请求;
支持大文件上传,上传大文件不会oom;


BitmapUtils模块:
加载bitmap的时候无需考虑bitmap加载过程中出现的oom和android容器快速滑动时候出现的图片错位等现象;
支持加载网络图片和本地图片;
内存管理使用lru算法,更好的管理bitmap内存;


Handler机制和AsyncTask异步任务
handler机制
andriod提供了 Handler 和 Looper 来满足线程间的通信。
 Handler 先进先出原则。
 Looper类用来管理特定线程内对象之间的消息交换(Message Exchange)。 
 1)Looper: 一个线程可以产生一个Looper对象,由它来管理此线程里的Message Queue(消息队列)。 
 2)Handler: 你可以构造Handler对象来与Looper沟通,以便push新消息到Message Queue里;或者接收Looper从Message Queue取出)所送来的消息。 
 3) Message Queue(消息队列):用来存放线程放入的消息。 
 4)线程:UI thread 通常就是main thread,而Android启动程序时会替它建立一个Message Queue。


AsyncTask异步任务
使用AsyncTask类,以下是几条必须遵守的准则: 
Task的实例必须在UI thread中创建
execute方法必须在UI thread中调用
不要手动的调用onPreExecute(), onPostExecute(Result),doInBackground(Params...), onProgressUpdate(Progress...)这几个方法
该task只能被执行一次,否则多次调用时将会出现异常


推送\极光推送   XMMP--> androidpn(Android Push Notification)(需要定制)  MQTT(轻量级的) 


一键分享\友盟sdk   demo一定要写
第三方登录  


ListView优化
convertView
ViewHolder 

android购物车
Android 支付
Android 代码混淆  proguard.

设计模式
组合模式  
"部分-整体"  view ViewGroup   子类是父类的扩充
观察模式: 观察-通知
定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新
单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点。
模板模式:
定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
享元模式:运用共享技术有效地支持大量细粒度的对象。  相当于数据库连接池
命令模式:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤销的操作。
工厂模式:
定义一个用于创建对象的接口,让子类决定实例化哪个类。工厂方式模式使一个类的实例化延迟到其子类
适配器模式,把一个类的接口变换成客户端所期待的另一种接口,从而使原本不匹配而无法在一起工作的两个,类能够在一起工作。
生成器模式(建造者):
将一个复杂对象的构建和它的表示分离,使得同样的创建过程可以创建不同的表示。
策略模式:
定义一系列的算法,把它们一个个封装起来,并且使它们可互相替换。 多态
原型模式:
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。




传值  传引用
对于基本数据类型(整型、浮点型、字符型、布尔型等),传值;
对于引用类型(对象、数组),传引用。


    Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。
调用方法时通过传递给它们的不同参数个数和参数类型来决定具体使用哪个方法, 这就是多态性。


    若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数表,则新方法将覆盖原有的方法。
如需父类中原有的方法,可使用super关键字,该关键字引用了当前类的父类。




熟练掌握Java下多线程编程,网络编程




UI自定义控件
第一步,定义xml一个layout布局文件
bit  extends 布局Layout 实现一个类 设置一些方法
将自定义控件引入


extends  view implements


android企业开发流程


Restful API  静态地址 http静态地址


gosn
TypeToken
反序列化
不使用java自带的
gson.fromJson
gson.toJson

你可能感兴趣的:(知识要点,知识要点)