1.android原理
- 菜单-->MainActivity-->onCreate-->setContentView(R.layout.item)-->layout(item.xml)->界面(输出)
- sysout();-->logcat(参照)-->adb logcat(avd开启)-->chcp 65001(dos没有缓存)
2.打电话
- Intent(数据的传递对象)
- Intent in = new Intent(); //Intent.ACTION_CALL
- in.setClass();
- startActivity();
3.常见的控件:(MyEclipse拖动GUI控件)
- TextView EditText Button ImageView SeekBar ProgressBar ToogleBar ListView Spinner
- 监听事件Spinner(OnItemSelected)
- 类监听, 方法监听, 匿名内部类, android:onClick="test"
4.MP3
- /mnt/sdcard --> /sdcard(硬连接:快捷方式)
- 常见的Linux命令:
- ls(list)查看
- cd(change directory)改变目录 cd ..
- pwd(print workspace directory)查看自己的位置
- mkdir(创建文件夹)
- touch(创建文件)
- rf -f(强制删除任何文件和目录)
- cp(copy)拷贝
- mv(move)剪切
- tar -czvf/-xzvf (创建/解压 压缩文件)
- mount/umount(挂载和卸载)
- rpm(*.rpm文件)
5.有几种方式开启多线程?
- ①Thread ②Runnable ③线程池Fullabe、Service
1 public class Test1 extends Threads { 2 3 public void run()/** throws IOException */{ //run()方法 不能抛出 异常 4 } 5 public static void main(Stirng args[]) { 6 new Test1().start(); 7 new Test1().start(); 8 9 Test1 tt = new Test1(); 10 tt.start(); 多线程 11 //tt.start(); 不能开启两个 12 tt.run(); 单线程 这里可以 13 } 14 15 }
死锁(同步代码块)
Sleep()/isInterrupted
wait()必须要与同步代码连用/notify()或者notifyAll()
5.QQ聊天
- 1.ServerSocket Socket (TCP通信)
- 2.IO流
- 3.GUI
- 如果出现异常一定要放在最后处理。(异常不影响程序进程的情况下)
差异:
1、10.0.2.2(avd假机)/ IP(ipconfig/ifconfig(startup/setup))
2、如果android版本大于等于4.x必须开启子线程连接后台
3、设置权限
4、子线程中不能直接操作UI控件;要操作只能通过handle机制,传回主线程
6.广播机制
程序中注册、菜单中注册、系统广播和其他的三个逐渐使用的比较多。
7.Activity的生命周期
OnCreate OnStart OnRestart OnResume OnStop OnDestory OnPause
第二周上课主要内容:
布局、消息(Notification)、断点下载、通信、webService
布局:
线性布局、表格布局、相对布局、绝对布局、帧布局
处理图片只能压缩 不能放大(ipad)
布局管理:
1 <LinearLayout> 2 ... 3 </LinearLayout> 4 5 <!-- 默认是水平,劫色软件 --> 6 7 <!-- android:orientation:如果线性布局中有2个或者2个以上的控件必须使用. 8 layout_weight权重 和fill_parent成反比和wrap_content成正比 9 android:gravity表示当前文字在当前文字所在控件当中的位置 10 android:Layout_gravity:当前文字所在控件在整个控件所持有的布局当中的位置. 11 -->
sqlite数据库
- c++ --> Linux平台 -->sqlite
- Android --> Linux(自带) --> sqlite