android面试题总结加强再加强版(四)
(未完待续)
1,双缓冲技术原理以及优缺点:
创建一幅后台图像,将每一帧画入图像,然后调用drawImage()方法将整个后台图像一次画到屏幕上去。
优点:双缓冲技术的优点在于大部分绘制是离屏的。
将离屏图像一次绘至屏幕上,比直接在屏幕上绘制要有效得多。
双缓冲技术可以使动画平滑。
缺点:要分配一个后台图像的缓冲,如果图像相当大,这将占用很大一块内存。
2,AsyncTask简介
在开发Android移动客户端的时候往往要使用多线程来进行操作,我们通常会将耗时的操作放在单独的线程执行,避免其占用主线程而给用户带来不好的用户体验。但是在子线程中无法去操作主线程(UI 线程),在子线程中操作UI线程会出现错误。因此android提供了一个类Handler来在子线程中来更新UI线程,用发消息的机制更新UI界面,呈现给用户。这样就解决了子线程更新UI的问题。但是费时的任务操作总会启动一些匿名的子线程,太多的子线程给系统带来巨大的负担,随之带来一些性能问题。因此android提供了一个工具类AsyncTask,顾名思义异步执行任务。这个AsyncTask生来就是处理一些后台的比较耗时的任务,给用户带来良好用户体验的,从编程的语法上显得优雅了许多,不再需要子线程和Handler就可以完成异步操作并且刷新用户界面。
3,Socket通信编程
客户端编程步骤:
1、 创建客户端套接字(指定服务器端IP地址与端口号)
2、 连接(Android 创建Socket时会自动连接)
3、 与服务器端进行通信
4、 关闭套接字
服务器端:
1.创建一个ServerSocket,用于监听客户端Socket的连接请求
2.采用循环不断接受来自客户端的请求
3.每当接受到客户端Socket的请求,服务器端也对应产生一个Socket
更多相关文章
- Android下Socket简单通信+Python服务器
- Android(Java)中的Object
- h5(vue)嵌套ios和android双向交互
- Android多进程间采用AIDL方式进行通信简单DEMO
- android 单例模式和策略模式的结合使用
- Android(安卓)客户端与服务器端进行数据交互(一、登录服务器端)
- 再论Handler—Handler事件分发、Handler线程切换原理解析
- 从原理上粗略认知Android线程池(ThreadPoolExecutor)
- Android(安卓)中的线程池