本文中面试题全部选自《精通Android》(英文名“Pro android 4”)一书的章后面试题,不过这套面试题与书中内容结合比较紧密,所以选择使用时请谨慎。

####C2:Android应用程序结构

2.1、Android开发是否需要JRE或JDK?

2.3、Android SDK中的tools和platform-tools目录有什么区别?

2.4、什么是Android的视图(View)?

2.5、什么是Intent?

2.7、选择应用包名时,需要注意什么?

2.8、什么是AVD,它的作用是什么?

2.9、什么是AVD快照?如何使用?

2.10、应用所需要的mp3文件,应该存储在哪一个源文件夹

2.12、Activity的第一个生命周期回调函数是什么?

2.13、Activity的最后一个生命周期回调函数是什么?

2.14、那个类可用于记录应用的日志信息?

2.15、用于记录日志信息的的方法有哪些?区别是什么?

####C3:Android资源

3.1、我们可以命名的资源有哪些?

3.2、R.Java是什么?

3.3、为什么R.Java如此方便的用于处理资源?或者说其作用或者是作用机制

3.4、资源引用语法和为UI控件分配ID之间有什么关系?

3.5、生成资源ID时会使用文件扩展名吗?

3.6、如果两个基于文件的资源只有扩展名不同,结果会怎么样?

3.7、什么是原始资源和XML资源,他们与asset有什么不同?

3.8、XML资源能否本地化?

3.9、asset能否本地化?

3.10、你能写出并解释资源引用语法?

3.11、能都预先声明控件ID,如果能,为什么?

3.12、那些XML节点可用于创建ID?

3.13、如果将我文件保存在XML和原始目录中,Android能否会在R.java中卫这些问了见生成ID?

3.14、Android是否会为asset目录的文件生成ID?

3.15、Plurals资源的one和其他的意义是什么?

3,.16、字符串资源中是否可以使用HTML字符串?

3.17、如何在文字视图中显示HTML字符串?

3.18、如何定义一个可拖拽的矩形?

3.19、如何使用一个可以拖拽额形状?

3.20、那一个类可用于读取/rexs/xml目录的xml文件?

3.21、在Android中处理XML文件的主要类是什么?

3.22、AssetManager类有什么作用,如何使用这个类?

3.23、Resources类有什么作用,如何创建它的实例?

3.24、可否在assets文件内创建任意子目录?

3.25、可否在/res/xml资源文件夹下穿件子目录?

3.26、什么是资源配置修饰符?

####C4:ContentProvider

4.1、ContentProvider与网站的机制有什么相似性?

4.2、能否可以对一些内置的ContentProvider进行命名?

4.3、adb工具的作用是什么?

4.6、列举一些Android中的实用命令行工具

4.7、ContentProvider的数据保存在哪儿?

4.8、有什么好方法浏览ContentProvider数据库

4.9、ContentProvider的authority属性是什么意思?

4.10、ContentProvider的authority属性能否可以缩短?

4.11、MIME类型是什么?它们与ContentProvider的关系?

4.12、程序员如何查找访问ContentProvider的URI

4.13、如何使用ContentProvider URI进行数据访问

4.14、如何在ContentProvider查询中添加where子句?

4.15、如何使用游标便历查询结果?

4.16、ContentValues类有什么作用?

4.17、ContentResolver类有什么作用?

4.18、在ContentProvider中保存文件的协议是什么?

4.19、如何使用URIMatcher,它的作用是什么?

####C5:Intent

5.2、什么事显式Intent和隐式Intent?

5.3、Intent的组成部分有那些?

5.4、如何使用Intent将数据发送到接收组件?

5.5、能否为Android应用的主要组件命名?

5.6、Intent的数据部分能否直接包含数据?

5.7、Intent的操作部分是否应该直接引用活动或组件?

5.8、如果Intent中显式指定类名,Intent还应该考虑那些其他部分?

5.9、action.MAIN的意思是什么?

5.10、如果在Intent过滤器中不指定任何操作,是否意味着活动能够响应所有操作?

5.11、如果在Intent过滤器中不指定任何数据,将匹配那类类型的Intent?

5.12、为什么需要在Intent过滤器设置默认活动类别?

5.13、启动器活动是否需要设置默认类别?

5.14、如何调用能够向调用方返回结果的活动?

5.15、调用活动的最快方法是什么?

5.16、action_pick和action_get_content有什么区别?

####C6、用户界面和控件

1、TextView是否能够接受用户输入?

2、什么时候应该在EditText域中使用Spannable?

3、如何自定义ImageButton在按下和释放操作时的外观?

4、适配器是否始终需要从ContentProvider获取数据?

5、一个ListView可否包含多个视图?

6、ListView是否始终要包含至少一个TextView?

7、ListVIew项的布局由什么定义?它们的位置在哪里?

8、Spinner与其它列表控件有何不同?

9、TableLayout和GridView,哪一种布局更适合以行和列的格式显示数据库表名列表?

10、什么时候应该在用户界面上使用AbsoluteLayout?

11、android:layout_weight的作用是什么?

12、android:gravity和android:layout_gravity有何区别?

13、是否可以将活动强制显示在一个指定方向上?

14、那一个布局管理器可用管理android:Layout_to_right of?

15、在什么情况下,列表适配器的ID等于它的位置值?

####C7、菜单

1、在Android SDK中,那种类型菜单可用?

2、菜单项有那些重要属性?

3、创建菜单项会调用那些回调方法?

4、响应菜单项会调用那些回调方法?

5、菜单项目的顺序是否受其组ID的影响?

6、如何在处理菜单项上附加单击事件的监听器?

7、如何使用Intent响应菜单项?

8、是否可以通过菜单项的Intent启动一个服务?

9、展开的菜单是指什么?

10、如何给菜单项添加图像?

11、菜单展开时,是否会显示图像?

12、Android的长单击是指什么?

13、从所属位置来看?菜单和上下文菜单有什么不同?

14、用于创建上下文菜单的回调方法是什么?

15、用于响应上下文菜单的回调方法是什么?

16、每一个视图都会调用OnCreateContextMenu吗?

17、如何出发上下文菜单的创建?、

18、回调方法onCreateContextMenu()可以接受那三个参数?

19、如何在应用中附加交替菜单?

20、如何在菜单每次调用或应用数据发生变化时,动态修改菜单行为?

21、XML菜单文件保存在哪里?

22、每一个菜单都需要单独的XML菜单文件吗?

23、如何使用R.Java识别菜单项ID?

24、如何蒋XML文件定义的餐点附加到活动?

25、菜单ID和菜单项ID是否属于相同的资源类型?

26、菜单填充类的作用是什么?

27、如何活得一个菜单填充类的实例?

####C8、Fragment

1、Fragment的父类是什么?

2、碎片和活动之间有什么相同点、

3、碎片和活动之间有什么不同点?

4、恢复堆栈的作用是什么?

5、是否存在某个不实用恢复堆栈的应用程序?

6、回滚FragmentTransaction,将应用程序恢复到前一个状态:这个说法正确吗?

7、<fragment>标签如何指定使用那个碎片?

8、数据适配器应该附加到ListFragment上,还是附加到ListFragment的ListView上?

9、有哪些不同方法可以查找应用程序中正在运行的碎片?

10、插值器是什么,它有什么作用

11、列举一些可以使用动画生成器的视图尺寸

12、是否可以在一个自定义尺寸类上使用动画生成器?如果可以,动画生成器需要使用什么对象?、

####C9、对话框

1、在对话框fragment显示之后,代码能否立即读取提示对黄跨fragment的用户输入?为什么?

2、使用DialogFragment的哪一种方法可以构建视图层次?

3、使用哪一种方法可以返回一个马上可以使用的对话框?

4、对话框Fragment的可以使用用来显示对话框?

5、这个方法有那两种调用方式,那种方式更简单一些?

6、通过使用onDismiss(),能否判断用户单击了对话框碎片的按钮?为什么?

7、DialogFragment能否显示另外一个DialogFragment?如果可以,新的对话框Fragmen显示时,能否会对另一个DialogFragment产生影响?

8、在何处设置对话框的样式和主题?

9、Toast消息的持续时间选择有那些?

10、如何获取一个对话框Fragment,记住配置变化(如设备旋转)时用户输入的内容?

####C10、ActionBar

1、什么是操作栏,它的主要可视化组件是什么?

2、操作栏包括那三种类型?

3、如何将菜单项显示为操作栏图标?

4、R.id.home是什么?

5、如何设计一种模式,使所有活动都共享一个通用的操作栏/菜单栏?\

6、如何获得一个操作栏实例?

7、如何在操作栏上添加选项卡?

8、如何响应操作栏的选项卡单击操作?

9、一个操作栏是否能够控制多个活动?

10、菜单项显示在操作栏时,可能包含那些值?

11、为什么对列表导航组建来说,SpinnerAdapter很重要?

12、如何将一族可单击的项目传递给列表导航选项卡?

13、如何使用碎片简化操作栏模式?

14、在操作栏中实现搜索部件需要使用那些制品?

####C11、高级调试和分析

1、判断题:如果要调试应用程序,必须将AndroidManifest.xml文件中的<application>标签的android:debuggable属性显式地设置为true。

4、使用那一个DDMS特性可以获取关于应用程序当前内存分配的统计信息?

5、如何确定应用程序运行的线程数量?

6、如何去顶应用程序中某一个方法的调用次数,以及该方法的执行时间?

7、在哪里能够获取设备屏幕的截图?

12、如何在运行的模拟器上创建一个Linux shell会话?

13、如何在真实设备上做上题操作,真实设备存在那些限制?

14、如何确定模拟器的端口号,从而可以使用Emulator Console连接模拟器?

15、StrictMode主要检查哪两个方面的内容?

####C12、响应配置变化

1、判断题:所有配置变化都是由设备旋转引起的吗?

2、那一个Android基本特性使平配置更易于变化?

3、那一个回调方法可以向互动通知配置变化?

4、默认的配置变化回调方法有什么作用?

5、在保存状态时,那些对象的类型不能保存在打包对象中?

6、在配置变化过程中,那些状态信息不应该保存在打包对象中?

7、哪一种Fragment更适合使用setRetainInstate(true)方法调用?

####C13、首选项及保存状态

1、列出物种不同类型的首选项。

2、那一个首选项属性可用于存储所选择的值?

3、一个应用程序可以有多少个共享首选项文件?

4、那一个源目录通常用于存放首选项定义文件?

5、包名为name com.androidbook.myapp的应用程序的共享首选项文件的位置在哪里?

6、共享首选项文件第一次在何时创建:在应用程序安装时,还是安装之后的某个时间?如何是后者,具体在什么时间创建?

7、如何要升级应用程序,并且增加一些新的首选项,应该考虑那些问题?

8、如果要接受init首选项的值,应该使用那一个类的那一个方法?

9、在AndroidManifest.xml文件中,应该使用那一个分类名设置PreferenceActivity?

10、在首选项XML中,哪两个标签可用于创建标题?

11、是否允许在共享首选项文件中保存一个值,但又不在首选项屏幕上显示?

12、Editor类的commit()方法有什么重要之处?

####C14、探索安全性和权限

3、那一个工具用来创建和查看数字证书?

4、那一个工具可用于创建应用程序数字帧数签名?

5、zipalign对应用程序起什么作用?

6、zipalign是否会大幅增加应用程序的大小?为什么?

7、如果已安装的应用程序证书过期,该应用程序是否会在设备上停止运行?

8、应用程序的权限证明保存在那一个文件中?

9、在应用程序为另一个活动授予URI权限职之前,必须先执行那些操作?

####C15、构建和使用服务

1、为什么在主UI线程上调用Web服务是一种较差的实践?

3、Android提供那些解析XML的方法?

4、调用Web服务可能发生那些异常?这些异常的处理方法是什么?

5、处理HTTP连接的轻量类是什么?

6、AsyncTask的4个回调方法是什么?那些方法运行在主UI线程上?那些是可选的?

7、AsyncTask实例可以执行多少次?

8、如何强制要求DownloadManager只通过WiFi网络下载内容、

9、Android服务提供了独占的后台线程?

10、在Android应用程序中使用服务的原因是什么?

11、能否可以绑定本地服务?

12、请指出一个从服务向NotificationManager发送通知的原因?

13、ThreadGroups适合用于执行什么操作?

14、Parcelable是否可用于向活动发送数据?为什么?

15、为什么不要从服务启动一个活动?

####C16、包

1、如何查看设备所安装的应用或程序包?

2、如何强制中止或卸载应用程序?

3、如何使用PKI保证程序包的所有权?

4、称公共密钥和私有密钥都是非对称密钥,这意味着什么?

5、一个程序包是否可以包含多个证书或密钥?

6、是否可以使用相同的证书创建多个程序包的签名?

7、什么时候应该使用相同的密钥创建多个程序包的签名?

8、linux进程和程序包文件存在什么关系?

9、.apk进程运行在那一个用户ID之下?

10、什么是共享用户ID?

11、共享用户ID的前提条件是什么?

12、共享用户ID的有点是什么?

13、那一个API可用于读取其它程序包拥有的文件?

14、什么是库项目,什么时候使用它?

15、库项目是否能够包含一些UI组件,如活动?

16、如果不确定那一个应用将来会使用那一个库,那么应该如何命名这个库的程序包?

17、一个库是否能够使用与应用程序不同的报名?

18、一个库项目能否使用其它Jar文件?

19、是否需要在应用的配置清单文件的库中定义活动

20、如何标明一个项目是库项目?

21、能否直接在使用库的项目中编辑库项目的源文件?

22、从4.0开始为什么库的R.java文件的ID变成非final的?

23、为什么不能在库的Java源文件中使用switch语句?

24、使用库的主应用程序项目是否需要添加包含整个库项目及其资源的Jar文件?

Android面试题摘录的更多相关文章

  1. 【Android面试】Android面试题集锦 (陆续更新)(最新2012-6-18) eoe上看到的

    ===============eoeAndroid社区推荐:======================= 1.Android开发新浪面试题[开发者必看哦]下载地址 http://www.eoeand ...

  2. 安卓Android面试题大全

    56个问题都是经常用到的,可以深入研究下,也是必须掌握的开发必备知识. 安卓Android面试题汇总 搜集了一些Android面试题目,供将要面试或者正在面试的朋友参考. 1, 谈谈你对Activit ...

  3. Android 面试题总结

    Android 面试题总结(不断更新) 1.INETNT几种有关Activit的启动方式FLAG_ACTIVITY_BROUGHT_TO_FRONT 将ACTIVITY带到最前面FLAG_ACTIVI ...

  4. Android面试题整理【转载】

      面试宝典(5)  http://www.apkbus.com/android-115989-1-1.html 面试的几个回答技巧 http://blog.sina.com.cn/s/blog_ad ...

  5. 19、android面试题整理(自己给自己充充电吧)

    (转载,出处丢失,请原作者原谅,如有意见,私信我我会尽快删除本文) JAVA 1.GC是什么? 为什么要有GC?GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问 ...

  6. Android面试题基础(转)

    71道经典Android面试题和答案 1.下列哪些语句关于内存回收的说明是正确的? (b ) A. 程序员必须创建一个线程来释放内存 B.内存回收程序负责释放无用内存 C.内存回收程序允许程序员直接释 ...

  7. Android面试题(文章内容来自他人博客)

    腾讯面试题 1.int a = 1; int result = a+++3<<2; 2.int a = 2; int result = (a++ > 2)?(++a):(a+=3); ...

  8. android面试题集1

    Android 面试题(有详细答案) 附带答案,共100分 一.选择题(30题,每题1.5分,共45分) 1.java.io包中定义了多个流类型来实现输入和输出功能,可以从不同的角度对其进行分类,按功 ...

  9. Android面试题收集(有具体答案)

    Android面试题目及其答案 1.Android dvm的进程和Linux的进程, 应用程序的进程是否为同一个概念 DVM指dalivk的虚拟机.每个Android应用程序都在它自己的进程中执行,都 ...

随机推荐

  1. Git版本控制:Gitlab及Coding.net的使用

    http://blog.csdn.net/pipisorry/article/details/50709014 Gitlab介绍 GitLab是利用 Ruby on Rails 一个开源的版本管理系统 ...

  2. Java学习从菜鸟变大鸟之三 多线程中Thread 和Runnable的区别与运用

    多线程机制是java中的一个特点,掌握它对后面的知识的理解至关重要,是java工程师的必备知识,多线程指在单个程序中可以运行多个不同的线程执行的不同的任务,线程是一个程序内部的顺序控制流.进程是静态的 ...

  3. Java进阶(五)Junit测试

    我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的.但是,我们同时应该确保每一个函数 ...

  4. UNIX环境高级编程——时间和日期

    由UNIX内核提供的基本时间服务是计算自国际标准时间公元1970年1月1日00:00:00以来经过的秒数.这种秒数是以数据类型time_t表示. 1.     time函数返回当前时间和日期: tim ...

  5. MySql my.ini 中文详细说明

    [mysqld] port           = 3306 socket         = /tmp/mysql.sock # 设置mysql的安装目录 basedir=F:\\Hzq Soft\ ...

  6. 19_Android中图片处理原理篇,关于人脸识别网站,图片加载到内存,图片缩放,图片翻转倒置,网上撕衣服游戏案例编写

    1加载图片到内存 (1).数码相机照片特别是大于3m以上的,内存吃不消,会报OutOfMemoryError,若是想只显示原图片的1/8,可以通过BitmapFactory.Options来实现,具体 ...

  7. Aliyun上Linux服务器挂载数据盘及速度测试

    原始文档来自于阿里云官方文档:  Linux 系统挂载数据盘 铁锚 于 2013年12月19日 根据自己的需要进行整理 操作系统: CentOS 6.3, 平台  : 阿里云 ECS 云服务器 1. ...

  8. android 开发Handler源码剖析

    Android的消息机制主要是Handler的运行机制,而讲Handler的机制,又需要和MessageQueue和Looper结合.MessageQueue中文意思是消息队列,虽说叫队列,但是其内部 ...

  9. Linux - test测试标志的意思总结

    测试的标志 代表意义 1. 关於某个档名的『文件类型』判断,如 test -e filename 表示存在否 -e 该『档名』是否存在?(常用) -f 该『档名』是否存在且为文件(file)?(常用) ...

  10. Boyer-Moore算法

    1.概述 在用于查找子字符串的算法当中,BM(Boyer-Moore)算法是目前相当有效又容易理解的一种,一般情况下,比KMP算法快3-5倍. BM算法在移动模式串的时候是从左到右,而进行比较的时候是 ...