Android工程师笔试常见的10个NDK与游戏开发简答题

maiziedu · · 4006 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

![t014ccdb2f015c81abf.jpg](http://studygolang.qiniudn.com/151014/079d7f84e8486fc65042fe01cccb9436.jpg)   应聘软件开发的工作,一般都会有面试和笔试两个环节,Android开发工程师的的应聘也是如此。今天小编就将为大家整理10道有关NDK与游戏开发的简答题及答案,希望对求职Android工程师的童鞋有所帮助。   1、 Paint类有哪些常用方法?   void setARGB(int a, int r, int g, int b) 设置Paint对象颜色,参数一为alpha透明通道   void setAlpha(int a) 设置alpha不透明度,范围为0~255   void setAntiAlias(boolean aa) //是否抗锯齿   void setColor(int color) //设置颜色,这里Android内部定义的有Color类包含了一些常见颜色定义   void setFakeBoldText(boolean fakeBoldText) //设置伪粗体文本   void setLinearText(boolean linearText) //设置线性文本   PathEffect setPathEffect(PathEffect effect) //设置路径效果   Rasterizer setRasterizer(Rasterizer rasterizer) //设置光栅化     Shader setShader(Shader shader) //设置阴影   void setTextAlign(Paint.Align align) //设置文本对齐   void setTextScaleX(float scaleX) //设置文本缩放倍数,1.0f为原始   void setTextSize(float textSize) //设置字体大小   Typeface setTypeface(Typeface typeface) //设置字体,Typeface包含了字体的类型,粗细,还有倾斜、颜色等。   void setUnderlineText(boolean underlineText) //设置下划线   2、游戏中对数据保存的方法有哪几种,简单讲解下? 在Android开发中,常用的对游戏中数据的保存方式主要有以下四种:    1)SharedPreference 此保存方式试用于简单数据的保存,文如其名属于配置性质的保存,不适合数据比较大的保存方式。   2)文件存储 (FIleInputStream/FileOutputStream) 此保存方式比较适合游戏的保存和使用,可以保存较大的数据,因为相对于SQLite来说更容易让大家接受,此方式不仅能把数据存储在系统中也能将数据保存到SDcard中。   3)SQLite 此保存方式比较适合游戏的保存和使用,可以保存较大的数据,并且可以将自己的数据存储到文件系统或者数据库当中,也可以将自己的数据存储到SQLite数据库当中,也能将数据保存到SDcard中;   4)ContentProvider (不推荐用于游戏保存) 此保存方式不推荐用于游戏保存,因为此方式不仅能存储较大数据,还支持多个程序之间就的数据进行交换。      3、SharedPreference储存数据的优缺点? 优点: 简单、方便、适合简单数据的快速保存   缺点:   1)存数的文件只能在同一包内使用,不能在不同包之间使用! 。   2)默认将数据存放在系统路径下 /data/data/com.himi/ ,没有找到放SD卡上的方法。   总结:其实本保存方式如同它的名字一样是个配置保存,虽然方便,但只适合存储比较简单的数据!   4、文件存储数据的优点?   1)适合游戏存储,能存储较大数据;   2)不仅能存储到系统中,也能存储到SD卡中。      5、View, surfaceView, GLSurfaceView有什么区别?   view是最基础的,必须在UI主线程内更新画面,速度较慢。   SurfaceView是view的子类,类似使用双缓机制,在新的线程中更新画面所以刷新界面速度比view快。   GLSurfaceView是SurfaceView的子类,opengl 专用的。   6、10个常用linux命令?   1)cd目录名   2)vi 文件名   3)rm [选项] 文件列表   4)cat [选项]文件列表(如:cat userinfo.xml)   5)cp[选项] 源文件目标文件   6)find目录列表匹配标准   7)grep [选项] 正则表达式文件列表   8)ls [选项] [文件列表](如:ls)   9)more [选项] 文件名   10)who [选项] utmp式的文件   7、dp和 px转换关系?     px = dp*(dpi/160)   QVGA: density=0.75 densityDpi=120 QVGA(240*320) (Quarter:1/4)   HVGA:density=1.0 densityDpi=160 HVGA(320*480) (Half:1/2)   VGA:density=1.0 densityDpi=160 VGA(480*640)   WVGA:density = 1.5 densityDpi=240 WVGA(480*800) (Wide)   WQVGA:density=2.0 densityDpi=120 WQVGA(240*400)(Wide Quarter)   dip值表示每英寸有多少个显示点(像素密度)。当densityDip=160时,1dp=1px。   8、Android SDK 下的常用工具有哪些 ?   platform-tools目录下常用的工具有:   aapt、adb、dx、aidl   tools目录下常用的工具有:   android、apkbuilder、ddms、draw9patch、emulator、mksdcard、sqlite3   9、产生死锁的条件有哪些?   1)相互排斥:一个线程或者进程永远占有共享资源,例如,独占该资源。   2)循环等待:进程A等待进程B,而后者又在等待进程C,而进程C又在等待进程A。   3)部分分配:资源被部分分配,例如,进程A和B都需要访问一个文件,并且都要用到打印机,进程A获得了文件资源,进程B获得了打印机资源,但是两个进程不能获得全部的资源。   4)缺少优先权:一个进程访问了某个资源,但是一直不释放该资源,即使该进程处于阻塞状态。   10、如何适配不同分辨率、不同语言环境?   分辨率:   drawable-hdpi/ldpi/mdpi/xhdpi/xxhdpi/640×360(图片分辨率适配)   values-sw600dp/v11/640×360(dimen.xml适配尺寸下的资源)   注:-sw[N]dp:要求N小于你的屏幕高度或宽度二者中的最小值。   layout-land/port/hdpi/large/640×360(横竖屏、布局文件分辨率适配)   语言环境:   values-en-rUS/-zh-rCN 以上就是Android开发工程师笔试题中比较常见的的有关NDK与游戏开发的简答题,分享给大家,希望对大家笔试有所帮助。最后也祝愿所有的童鞋顺利通过,走上Android开发岗位。 相关文章:《安卓源码如何在eclipse中显示?》http://www.maiziedu.com/group/article/5609/

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

4006 次点击  
加入收藏 微博
1 回复  |  直到 2015-10-14 09:23:07
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传