下载此文档

16年1月Android新面试题汇总.doc


文档分类:IT计算机 | 页数:约36页 举报非法文档有奖
1/36
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/36 下载此文档
文档列表 文档介绍
2016 Android 面试收集 1 、请解释下在单线程模型中 Message,Handler,Message Queue,Looper 之间的关系。拿主线程来说,主线程启动时会调用 () 方法,会初始化一个 Looper ,放入 Threadloca l中, 接着调用 () 不断遍历 Message Queue , Handler 的创建依赖与当前线程中的 Looper , 如果当前线程没有 Looper 则必须调用 () 。 Handler , sendMessage 到 MessageQueue , Looper 不断从 MessageQueue 中取出消息,回调 handleMessage 方法。 2 、如果有个 100M 大的文件,需要上传至服务器中,而服务器 form 表单最大只能上传 2M ,可以用什么方法。这个问题不是很明确我觉得,首先来说使用 http 协议上传数据,特别在 androi d 下,跟 form 没什么关系。传统的在 web 中,在 form 中写文件上传,其实浏览器所做的就是将我们的数据进行解析组拼成字符串,以流的方式发送到服务器,且上传文件用的都是 POST 方式, POST 方式对大小没什么限制。回到题目,可以说假设每次真的只能上传 2M ,那么可能我们只能把文件截断,然后分别上传了。 3 、内存溢出和内存泄漏有什么区别?何时会产生内存泄漏?内存优化有哪些方法? 内存溢出通俗理解就是软件(应用)运行需要的内存,超出了它可用的最大内存。内存泄漏就是我们对某一内存空间的使用,使用完成后没有释放。内存优化: Android 中容易内存溢出的部分, 就是图片的加载, 我们可以使用图片的压缩加上使用 LruCache 缓存的目的来控制图片所能够使用的内存。还有对于比较耗资源的对象及时的关闭,例如 Database Conn , 各种传感器, Service 等等。 4、 AsyncTask 使用在哪些场景?它的缺陷是什么?如何解决? AsyncTask 运用的场景就是我们需要进行一些耗时的操作, 耗时操作完成后更新主线程,或者在操作过程中对主线程的 UI 进行更新。缺陷: AsyncTask 中维护着一个长度为 128 的线程池, 同时可以执行 5 个工作线程, 还有一个缓冲队列,当线程池中已有 128 个线程,缓冲队列已满时,如果此时向线程提交任务,将会抛出 RejectedExecutionException 。解决: 由一个控制线程来处理 AsyncTask 的调用判断线程池是否满了, 如果满了则线程睡眠否则请求 AsyncTask 继续处理。 7、 assest 文件夹里放文件,对于文件的大小有没有限制? 22 assets 目录更像一个附录类型的目录, Android 不会为这个目录中的文件生成 ID 并保存在 R 类当中,因此它与 Android 中的一些类和方法兼容度更低。同时,由于你需要一个字符串路径来获取这个目录下的文件描述符,访问的速度会更慢。但是把一些文件放在这个目录下会使一些操作更加方便, 比方说拷贝一个数据库文件到系统内存中。要注意的是,你无法在 Android XM L 文件中引用到 assets 目录下的文件,只能通过 AssetManager 来访问这些文件。数据库文件和游戏数据等放在这个目录下是比较合适的。另外,网上关于 assets 和 raw 的资料都千篇一律了,因此关于这两者中单个文件大小不能超过1M的** 错误** 描述也在传播, 即如果读取超过1M 的文件会报"Data exceeds PRESS_DATA_MAX (1314625 vs 1048576)" 的 IOException ,还引申出种种解决方案。个人认为不应该有这样的限制,为了验证这个说法写了个 Demo ,发现将近 5M 的压缩包在 assets 和 raw 中都能正常访问,因此在这里纠正一下,理论上只要打包不超过 Android APK 50 M 大小的限制都是没有问题的。当然了,不排除是 Android 很早期的时候因为设备硬件原因 aapt 在编译的时候对这两个文件夹大小做出了限制,如果是这样,较新版的 ADT 应该不会出现这种情况。来自: http://my./futurexiong/archive/ 8、启动一个程序,可以主界面点击图标进入,也可以从一个程序中跳转过去,二者有什么区别? 是因为启动程序(主界面也是一个 app ),发现了在这个程序中存在一个设置为<category android:name="" /> 的

16年1月Android新面试题汇总 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数36
  • 收藏数0 收藏
  • 顶次数0
  • 上传人2112770869
  • 文件大小75 KB
  • 时间2017-02-06