第一篇:Android简历
个人简历
个人信息
姓名:XXX
年龄:XX
学历:本科
联系电话:186XXXXXXX
个人技能
1.熟练掌握JAVA面向对象编程语言,有良好的编码习惯;
2.熟悉jsp、javascript、servlet、javaBean进行web应用开发,了解jQuery,ajax等技术;
3.能使用Struts2、Hibernate、Spring等开源框架技术;
4.熟练操作SQL sever、MySQL数据库,熟悉SQL语句;
5.熟练掌握Android adt编程环境和调试流程;
6.熟练掌握Android的4大组件和5种常用布局;
7.熟练Sqlite、File、SharePreference等存储方式;
8.熟练使用xml、json等解析技术;
9.熟悉编程软件环境配置,熟练运用Eclipse和MyEclipse等编程软件。
教育培训
2009年9月——2013年6月
2012年2月——2012年5月
项目经验
1.Android选课系统
描述:一款基于Android平台的选课软件,通过软件访问WEB短的服务器进行操作,web端采用servlet实现,能进行课程的查询、添加、删除。
2.基于SSH的论坛
描述:实现简单的注册登录功能,用户可创建自己的论坛并有管理权限,会员可发帖,帖子有回复功能,版主可管理自己的帖子。
自我评价
我有一颗积极向上的心,对于软件开发有较大兴趣。喜欢运动,热爱生活,热爱学习。诚实做人,踏实做事是我的做人原则。有较强的团队意识,比较善于团队合作。我坚信,努力不一定会成功,但肯定会有收获。我期待这个收获的过程。我将投入自己全部的激情,努力奋进。
XX大学软件工程 XXXXXAndroid软件开发 性别:X 籍贯: 山东XX 专业: 软件工程 E-mail:XXXXXXX@126.com
第二篇:android简历一
Xxxx
邮箱:手机:籍贯:年龄:
职位申请: Android软件工程师
教育背景:
2011/12-2012/05oracle学习中心Android软件开发培训
2009/09-2012/06大连职业技术学院网络技术专业大专 专业技能:
熟悉JAVA编程语言,掌握面向对象编程思想
熟悉Android平台开发环境,熟悉Android SDK开发工具
熟悉Android平台的应用开发
熟悉Linux环境,以及相关的Android开发环境.项目经历:
基于Android平台的拼图游戏时间:两周指定任意一张图片进行游戏,该程序把图片切割成十六个乱序的小图块,然后让用户通过移动小图块来完成拼图。在此项目中,本人负责了游戏界面的设计,在Eclipse和Android SDK的开发环境下。完成了该游戏图片的切割、打乱、图片移动算法的编码,该游戏能成功并流畅地在Android设备上运行。 智能课程表应用程序(团队合作)时间:四周该应用程序基于在客户端的数据库存放学校、院系、专业、课程等数据从而进行大学课表的设置;通过专业定位到自己所修课程在上课时间的设置,手机自动静音或震动;有显示课表功能供;智能课表让大学生可以不用再去记繁琐的上课时间,设置完成后在上课之前自动提醒,课上自动调成静音或者震动。本人参与了需求分析,整体功能,以及客户端应用程序UI模块的设计。在项目中负责了一些界面的处理和功能的实现,还有项目中数据库的建立和数据库与项目的连接。
Android平台的俄罗斯方块时间:二周该项目是本人独立在Android中实现的俄罗斯方块程序,是一款相当经典的小游戏,游戏中没有特别难的开发发面的东西,主要是在surfaceview中实现的,游戏主要是靠在画布中进行一些判断。最大的难点就是不同方块的模型的建立,把模型建立好了以后,就可以利用这些模型在游戏中进行运算,从而实现俄罗斯方块的功能。
实训经历:
北京市北邮3G培训机构2011.09-2012.03实习培训
主要学习Android软件应用与开发理论,JAVA编程语言,以及其他软件开发理论。在老师的指导下,通过不断实践训练,提高了软件开发水平,为以后工作打下了扎实的基础。
兴趣爱好
看书、围棋、篮球、旅游
培训课程
Android布局的概念,Android菜单介绍,常用UI组件的使用和总结
了解Android3D动画实现
对Android项目的开发与实践
自我评价
本人热爱学习,对于软件开发很感兴趣,快速学习能力强。爱思考并喜欢创新。对工作认真负责,善于团队合作、有较强的团队沟通能力、能吃苦耐劳。Android的巨大魅力吸引我愿意用巨大热情投入到与之相关的开发工作中。而且我也相信,在我扎实的专业知识基础上能给贵公司献上我的一份薄力。
第三篇:_统招本科_Android软件工程师-简历
董XX性别:男
年龄:24
电话:
现住地址:北京 海淀区
邮箱:.com
教育经历2007.9-2011.6潍坊学院计算机网络工程统招本科 求职意向Android软件开发工程师
专业技能 熟练掌握Core Java编程, 具有扎实的技术功底,有良好的Java编程习惯 熟练掌握常用UI控件,熟练常用布局及资源文件的使用
熟练掌握Android SDK应用程序开发(Activity、Service、Broadcast、WebView、SQLite、Location、Media、Camera、Sensor、SMS、Contacts)
熟练Android平台下的Http通信、Socket通信、XML解析(DOM、SAX、PULL)、 熟悉使用Oracle、MySql数据库、熟练使用SQL语句
熟练使用Eclipse、MyEclipse、hierarchyviewer、draw9patch、apktool等工具 熟悉Linux/Unix常用命令
了解Android NDK编程 了解JSP、JavaScript、Servlet、JQuery、Ajax、Tomcat等相关WEB应用开发技术 项目经验 项 目 一:某航空公司手机订票系统
开发工具:Eclipse + ADT + Android SDK+ MySql
开发平台:Windows平台
技术实现:Android常用UI组件自定义Adapter拨打电话
SQLite的使用Socket通信JDBC的增删改查
项目描述:该系统是一个航空手机订票系统,主要功能有用户登录、用户注册、预订机
票、订单管理、基本账户管理、乘机人管理、联系人管理、查询网点、查询机型、订阅管理等功能。
责任描述:担任项目小组长,负责组员之间代码的整合,主要每天将组员修改的代码整
合在一起,让整个程序能够正常的运行,并且负责实现了修改用户密码、订单管理的功能。
项 目 二:GoMarket 2.1(安智市场)
开发工具:Eclipse + ADT + Android SDK +PhotoShop
开发平台:Windows平台
技术实现:ListView数据的分页加载Nine-Patch图像Style机制
XML的解析(XmlPullParser)HTTP数据通信文件的下载及保存 项目描述:GoMarket是一个可以下载Android手机应用程序的软件,主要功能有下载
软件、文件管理等功能,该项目主要模仿原程序学习复杂界面的布局和综
合运用UI组件,实现软件的下载和保存,以及掌握HttpClient连接服务
器读取模拟数据、NotificationManager、XmlPullParse的运用。
责任描述:独立完成了从Tomcat后台服务器读取模拟数据,通过Pull解析,实现了
ListView数据的分页加载和软件的下载及保存
项 目 三:植物大战僵尸
开发工具:Eclipse + ADT + Android SDK
开发平台:Windows平台
技术实现:Surface双缓冲技术 CallBack回调Graphics绘图Animation动画 项目描述:该项目的主要目的是模仿植物大战僵尸,了解自定义GameView类,学习如
何开发简单游戏和了解游戏引擎以及一些游戏框架设计模式。责任描述:独立完成了植物在画布上显示并能够发子弹,让僵尸能够在画布上运动 培训经历
2011.3--2011.8北京达内科技有限公司Android开发工程师 兴趣爱好
喜欢跑步、乒乓球、旅游等
自我评价
热衷于移动互联,对手机开发有着浓厚的兴趣 性格乐观,做事稳重、待人诚恳,乐于助人,平时能和周围的同学打成一片 有良好的编程习惯,有责任心,勇于承担压力,对工作饱满热情 有良好的团队精神和自学能力,善于接受新事物,能很快的适应新的环境(培训期间曾
担任组长一职,整合组员之间代码)
第四篇:android面试题
选择题(包括多选)
1.下列哪些语句关于内存回收的说明是正确的?
A、程序员必须创建一个线程来释放内存
B、内存回收程序负责释放无用内存
C、内存回收程序允许程序员直接释放内存
D、内存回收程序可以在指定的时间释放内存对象
2.下面异常是属于Runtime Exception 的是
A、ArithmeticException
B、IllegalArgumentException
C、NullPointerException
D、BufferUnderflowException
3.Math.round(-11.5)等于多少
A、11 ,-11
B、11 ,-12
C、12 ,-11
D、12 ,-1
24.下列程序段的输出结果是:
void complicatedexpression_r(){
int x=20, y=30;
boolean b;
b=x>50&&y>60||x>50&&y<-60||x<-50&&y>60||x<-50&&y<-60;
System.out.println(b);
}
A、true
B、false
C、1
D、011.activity
5.对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行
A、onPause()
B、onCreate()
C、onResume()
D、onStart()
6.Intent传递数据时,下列的数据类型哪些可以被传递
A、Serializable
B、charsequence
C、Parcelable
D、Bundle
7.android 中下列属于Intent的作用的是
A、实现应用程序间的数据共享
B、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失
C、可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带
D、处理一个应用程序整体性的工作
8.下列属于SAX解析xml文件的优点的是
A、将整个文档树在内存中,便于操作,支持删除,修改,重新排列等多种功能
B、不用事先调入整个文档,占用资源少
C、整个文档调入内存,浪费时间和空间
D、不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会
消失
9.在android中使用SQLiteOpenHelper这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是()
A、getWriteableDatabase()
B、getReadableDatabase()
C、getDatabase()
D、getAbleDatabase()
10.android 关于service生命周期的onCreate()和onStart()说法正确的是
A、当第一次启动的时候先后调用onCreate()和onStart()方法
B、当第一次启动的时候只会调用onCreate()方法
C、如果service已经启动,将先后调用onCreate()和onStart()方法
D、如果service已经启动,只会执行onStart()方法,不在执行onCreate()方法
11.下面是属于GLSurFaceView特性的是
A、管理一个surface,这个surface就是一块特殊的内存,能直接排版到android的视图view上。
B、管理一个EGL display,它能让opengl把内容渲染到上述的surface上。
C、让渲染器在独立的线程里运作,和UI线程分离。
D、可以直接从内存或者DMA等硬件接口取得图像数据
12.下面在AndroidManifest.xml文件中注册BroadcastReceiver方式正确的A、
android:name=“android.provider.action.NewBroad”/> B、 android:name=“android.provider.action.NewBroad”/> C、 android:name=“android.provider.action.NewBroad”/> D、 android:name=“android.provider.action.NewBroad”/> 13.关于ContenValues类说法正确的是 A、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是String类型,而值都是基本类型 B、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是任意类型,而值都是基本类型 C、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名,可以为空,而值都是String类型 D、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是String类型,而值也是String类型 14.我们都知道Hanlder是线程与Activity通信的桥梁,如果线程处理不当,你的机器就会变得越慢,那么线程销毁的方法是 A、onDestroy() B、onClear() C、onFinish() D、onStop() 15.下面退出Activity错误的方法是 A、finish() B、抛异常强制退出 C、System.exit() D、onStop() 16.下面属于android的动画分类的有 A、Tween B、Frame C、Draw D、Animation 17.下面关于Android dvm的进程和Linux的进程,应用程序的进程说法正确的是 A、DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,不一定拥有一个独立的Dalvik虚拟机实例.而每一个DVM都是在Linux中的一个进程,所以说可以认为是同一个概念.B、DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,不一定拥有一个独立的Dalvik虚拟机实例.而每一个DVM不一定都是在Linux中的一个进程,所以说不是一个概念.C、DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例.而每一个DVM不一定都是在Linux中的一个进程,所以说不是一个概念.D、DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的 Dalvik虚拟机实例.而每一个DVM都是在Linux中的一个进程,所以说可以认为是同一个概念.18.Android项目工程下面的assets目录的作用是什么 A、放置应用到的图片资源。 B、主要放置多媒体等数据文件 C、放置字符串,颜色,数组等常量数据 D、放置一些与UI相应的布局文件,都是xml文件 19.关于res/raw目录说法正确的是 A、这里的文件是原封不动的存储到设备上不会转换为二进制的格式 B、这里的文件是原封不动的存储到设备上会转换为二进制的格式 C、这里的文件最终以二进制的格式存储到指定的包中 D、这里的文件最终不会以二进制的格式存储到指定的包中 20.下列对android NDK的理解正确的是 A、NDK是一系列工具的集合B、NDK 提供了一份稳定、功能有限的 API 头文件声明。 C、使 “Java+C” 的开发方式终于转正,成为官方支持的开发方式 D、NDK 将是 Android平台支持 C 开发的开端 问答题: 1.系统上安装了多种浏览器,能否指定某浏览器访问指定页面?请说明原由。 2.Activity和Task的启动模式有哪些? 每种含义是什么? 3.SQLite支持事务吗? 添加删除如何提高性能? 4.对Intent、Activity、广播、Service等的理解 5、handler机制的原理 Android四大组件: Activity—表现屏幕界面 Service—后台服务 BroadcastReceiver—实现广播机制 ContentProvider—实现数据存储 Intent类:用来启动程序并传递信息的类 用于Activity、Receiver、Service之间进行交互的类,通过无参构造方法创建对象,增加其action、category、data、extra等属性进行信息传递,并通过Activity中的startActivity(Intent intent)进行界面的跳转;通过Context中的StartService(Intent intent)进行服务跳转;通过Context中的registerReceive(Intent intent)对广播进行注册,并通过sendBroadcast()进行无序消息发送,或可以通过SendOrderedBroadcast()进行有序的消息发送。Handler类: 用来发送和处理消息,并配合主线程完成UI的更新;消息Message/Runnable传递通过MessageQueue(消息队列,先进先出)进行传递,并通过Lopper进行接收,传递的消息可以为Message对象,也可以是Runnable对象;接收方法通过HandleMessage(Message msg)进行获取。SharedPreferences类: 一般用于第一次登录时的设置,或者是各个界面的一些小型格式设置,如字体等。是本地的小型共享数据库,可以通过Context的静态方法getSharedPreferences获得其对象,对象内的值均为键值对进行储存。通过SharedPreferences对象调用editor()获取SharedPreferences.Editor对象,向共享数据库中增加数据,putString(),并提交数据,commit();通过SharedPreferences对象获取共享数据库中的数据,getString()。 ViewPager:实现界面滑动的类; 通过设置OnPagerChangedListener设置ViewPager的监听事件; 实现流程: ①布局文件中设置ViewPager控件; ②代码中进行绑定控件; ③通过继承PagerAdapter抽象类进行设置适配器,并传递数据源; ④适配器中实现两个抽象方法,两个重写方法:getCount()—获取滑动界面的数量,isViewFromObject()—判断视图是否是来自于Object文件中;重写两个方法,分别为destoryItem—销毁指定位置的视图;InstantiateItem(),设置指定位置的视图; Timer与TimerTask类: Timer为计时器的类,通过无参构造方法可以获取对象,通过Timer.schedule(TimerTask task,long time)进行设置多久后执行某任务,当任务执行完后,取消计时的功能,Timer.cancle();TimerTask类为抽象类,实例化时,必须重写run方法;执行的内容,均在run方法中进行设置,并且执行时,已在子线程中进行执行。自定义View:用到的类有Paint、Canvas、Spec、SpecF、Path、View.MeasureSpec、Timer、TimerTask; 抽象类,通过子类继承,获取对象;在布局文件中绑定后,通过代码,设置自定义View的属性;自定义View中,通过重写OnMeasure方法,对布局文件中的尺寸进行测量,并由View中的setMeasureDimenson()方法,进行数据的保存;通过重写Ondraw方法,进行绘图;当需要绘制动态图形时,使用计时器Timer的schedule(TimerTask,long time,delay time2)方法,在time时间后,每隔time2时间,重写执行run方法中的内容;将耗时的操作设置在run方法中,并通过View中的invalidate()方法刷新主线程中的绘的图形,通过postInvalidate()刷新子线程中的图形。数据库: 常用的数据库有Oracle,需要安装和配置的大型收费数据库;MySQL是中型数据库,同样需要安装配置,但不需要收费;Sqlite是小型免费的嵌入式数据库,占用内存低,最新版本为3.0。Sqlite数据库需要通过SqliteDatabaseOpenHelper进行创建数据库,并通过SqliteDatabase进行数据库的操作。辅助类是抽象类,通过继承,重写两个方法,并在子类的构造方法中通过OpenHelper的构造方法(Context context,String SqlName,SqliteDatabase.CursorFactory factory,int version)进行数据库的创建,在onCreate方法中,进行数据库表的创建,在onUpdate中进行数据库的版本更新。在数据库的操作类中,执行exect方法,通过sql语句对数据库进行操作。Create table student(_id integer primary key auto increament ,name text);insert into student(_id,name)values(1,zx);delete from student where _id=1;update student set _id=2 where name=zx;select *from student;ListView、GridView适配器的优化: 将布局文件中的控件进行封装,当视图加载时,判断可变视图是否存在,当不存在时,通过布局文件获取视图,并新建封装类,将地址通过setTag()进行发送;当视图存在时,重复利用地址—getTag()。反射: 存储数据的方式: 共享数据库、数据库、文件、网络、内容提供者 广播: 广播传播时,需要接收者、发送者、广播频道;根据发送者的发送方式不同,分为有序广播、无序广播;有序广播为接收者有接收顺序,根据设置的优先级不同,确定先后顺序,接收者同时也是发送者,向后面的广播发送消息,发送过程中,可以添加信息,也可以停止广播的传输;无序广播,接收者之间无联系,均从发送者处接收信息;广播在传输过程中,不能被添加信息,也不可能被停止。广播在发送前,需要对接收者进行注册,注册方式有两种,动态注册、静态注册。动态注册,是在代码中进行,通过Context对象调用静态方法进行注册,所有的广播均可以用动态注册,其生命周期依赖于应用,相对于静态注册,比较节省内存;静态方法在清单文件中进行注册,部分系统广播不能通过静态注册进行,其生命周期依赖于系统,当系统启动,即运行接收广播,较耗内存。广播接收者需要继承BroadcastReceiver,并实现抽象方法onReceive(),通过回调接口,进行数据的传输。注意:广播发送前,必须进行接收者的注册,并且,当显示跳转时,不需要意图过滤器。安卓布局:九种布局 线性布局,水平或垂直方向两种格式,主要特点为权重,即规定各控件在视图中的占有的比例; 相对布局,相对于父控件或兄弟控件的布局,各控件需指定相对位置; 绝对布局,指定各控件在视图中的绝对位置,几乎不再使用; 表格布局,子布局放在行中,列由控件表示(TableRow); 帧布局:覆盖前面布局的布局,一般用于暂停按钮等; 风格布局:可以跨行、跨列的布局,占满换行; 左右侧滑:可以实现左右侧滑,通过设置主菜单和二级菜单设置左右两个菜单; 下拉刷新:设置下拉刷新、上拉加载的功能; 抽屉布局; 安卓版本及对应的API: 1.6—4;2—7;3—11;4—15;4.3—18;5—20;5.1—21;6—23;7—25; 安卓四层架构: 应用层:Java语言开发,主要从事App开发; 运行库层:Java语言与C语言,View视图、管理类等的开发; 架构层:C语言与Linux语言,各种框架、浏览器等; 内核层:Linux、C语言,开发各种驱动; 安卓四大组件: Activity:界面,实现程序与用户之间的交换,有自己的生命周期,七个生命周期;4种启动模式 Service: BroadcastReceive:三要素,发送者、接收者、发送频道(Intent);类型:有序(接收有序,有数据传送,可以拦截数据)、无序广播(相对);注册方式:静态注册,持久监听,占用内存比较高生命周期跟随系统,动态注册(代码中),所有广播都可以动态注册,部分系统广播不能动态注册,临时监听,占用内存较少,生命周期随应用进行; ContentProvide:不能存放数据,五种存放数据方式之一,特点为:①为数据的获取等操作添加一个统一的接口②可以实现跨应用访问数据;③可以实现Android中通讯录、消息、音频、视频等的访问或操作;通过ContentReceive进行数据的访问,可以对数据进行增删改查操作。 动画: IO流: 序列化: AlertDialog: Set实现类: 手机电量检测: 自定义SurfaceView: 自定义View:三个构造方法的区别 Message:Handler.obtain/new/Message.obtain HttpUriConnection访问网络 gride 异步任务 动画 抽象类和接口 反射 克隆 序列化 侧滑的实现 数据库 Socket: Gson解析 异步任务和子线程区别 WebView 版本更新 照片的圆角化 Collection与Collections Sql语句 MVP框架与MVC: TCP与UDP的区别: 一键分享的流程: Http协议的理解: 不使用框架访问网络: List集合与set集合: 自定义View的流程: 线性布局的特点: ViewPager的原理: 服务的启动方式: Activity的启动方式: Xml数据解析:第五篇:Android总结