1. broastcast 生命周期就是onreceive函数执行完就释放了

广播接受者不能用对话框来提醒用户 最好用toast或者notificationmanager.builder来通知

有序广播  sendorderbroastcast 

静态和动态接受(onresum()注册  onpause()卸载)

handler 负责存取消息(handler.obtain()没有message对象才创建(从消息池中取消息))不要去new


handler 变量必须定于为static 否则发生内存泄露

message 携带的数据arg通常描述刻度 而what通常描述要干什么

sendmessage()将message对象放入消息队列中

handle和message关系(message 都是有handle处理的)

消息池最大10个



Finally语句是为异常处理事件提供的一个清理机制,一般是用来关闭文件或释放其他

系统资源。作为try-catch-finally结构的一部分,可以没有Finally语句,如果存在Finally语句,不论try块中是否发生异常,是否执行过catch语句,都执行finally语句。


android支持国际化语言(在res目录下面加上values-xx目录并加上strin.xml)

屏幕自适应(1.在res目录下建立多个layout-xx目录并拷贝xml文件)比如layout-larage(大屏幕)还有一个手机横屏和竖屏也要自适应(每个layout都要自适应横竖屏(例如手机默认是竖盘则加一个layout-land则支持横屏)如果是平板则相反)


1.屏幕尺寸(布局适配)大(5、7存)小(<5)屏

2.(创建不同的位图)图片自适应(密度)xhdpi  200*200超高清  hdpi 150*150高清  mdpi 100*100标准的  ldpi 75*75低清

3.横竖屏适应

4..9.png点9图片自适应


尽量用相对布局(线性布局只有一个方向(嵌套效率低))尽量用warp_content


图片分辨率越低占的内存越少


static 压缩函数尽量用static 减少对象的多次创建(listview  getview里面)

大图(bitmap)经过压缩


activity被异常销毁的时候要进行现场保护(onsavexxx)


rtsp可以支持在线播放(前提服务器是流媒体服务器)

http协议只支持视频下载 (先下载再播放  比如20M分5段 每段传4M  播放第一段时就加载了第二段)


videoview控件(Android内置×××播放) 一搬情况都是用第3方视频播放

1.使用videoview控件视频播放

2.使用service 结合

https://blog.51cto.com/8840150/1615055