Android考试知识点考试

Android考试知识点考试
Android考试知识点考试

考试知识点(Android闭卷考试)

1.理解Android常见的几种布局。

几种布局的高与宽,制定

LinearLayout,线性布局,布局中的控件在线性方向上依次排列。默认控件水平方向排列。

android:orientation=”horizontal”

android:orientation=”vertical”

注意:

当就是水平方向排列,控件宽度不能设置为

android:layout_width="match_parent"

否则控件会把水平方向沾满,其她控件无法会控件覆盖(无法放置)

当就是垂直方向,内部控件不能将android:layout_height="match_parent"指定为match_parent

android:layout_weight="1",使用比例方式来指定控件的大小

RelativeLayout,相对布局,就是通过相对定位的方式让布局中控件可以出现在布局的任何位置。

内部控件,三种属性,

属性值就是true或false

android:layout_centerHrizontal 水平居中,

属性值就是”@id/*“android:layout_below 在某元素的下方

属性值就是数值

android:layout_marginLeft 离某元素左边缘的距离

是通过添加TableRow、其她组件来控制表格的行数与列数

GridLayout就是Android4、0之后新增的布局管理器,因此正常情况下需要在Android 4、0 之后的版本中才能使用,如果希望在更早的版本中使用的话,需要导入相应的支撑库(v7包的gridlayout包)。

Grid Layout 网格布局,与前面所讲的 Table Layout(表格布局) 有点类似,不过她有很多前者没有的东西,因此也更加好用:

- 可以自己设置布局中组件的排列方式

- 可以自定义网格布局有多少行、列

- 可以直接设置组件位于某行某列

- 可以设置组件横跨几行或者几列

Absolute Layout 它不提供任何布局控制,而就是由开发人员自己通过X、Y坐标来控制组件的位置。运行Android应用的手机往往千差万别,屏幕大小、分别率、屏幕密度等都可能存在较大的差异,使用绝对布局的话很难做机型适配--已经被废弃

2.理解Android应用程序开发过程中,常见的四种设计模式及各自的使用场合。ListView-Adapter、Builder-Dialog、Factory-选项卡、Listener-事件监听。

1适配器模式:

简介:将一个类的接口转换成客户希望的另外一个接口,从而使原本因

接口不匹配而无法再一起工作的两个类能够在一起工作。不同的数据提供者使用一个适配器来向一个相同的客户提供服务。

举例:ListView或GridView的Adapter。

2建造者模式:

简介:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的显示,但其根本还就是不变。

举例:AlertDialog、Builder、AlertDialog、Builder, 使用该Builder来构建复杂的AlertDialog对象

工厂模式:

定义一个用于创建对象的接口,让子类决定将哪一个类实例化。

外部不需要关心工厂就是如何创建一个复杂产品的过程

示例:BitmapFactory位图工厂,专门用来将指定的图片转换为指定的位图Bitmap。

监听器模式

事件源经过事件的封装传给监听器,当事件源触发事件后,监听器接收到事件对象可以回调事件的方法、Listener-事件监听

观察者模式:定义对象间就是一(Subject)对多(Observer)的依赖关系,当一个对象发

生变化时,其它依赖该对象的对象都会收到通知,并随着变化。广播机制就就是观察者模式

ListView与BaseAdapter组合时,当BaseAdapter的item改变时,我们经常会调用notifyDataSetChanged(),通知Listview刷新

3.Android中可支持网页的缩放的视图(View)及其功能

在Android系统中,内置了一款高性能的浏览器,其内核就就是WebKit,WebView 网页视图,就就是在这个基础上封装的一个控件,我们可以直接用这个控件在应用程序内去显示Web页面,直接用HTML文件做为布局文件,可以与JavaScript 交互调用。

显示与渲染web页面

(1)、直接显示网页

设置在当前应用中打开网页,如果不设置的话会使用手机浏览器打开网页

mWebView、setWebViewClient(new WebViewClient() {

@Override

public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {

view、loadUrl("");

return true;

}

});

mWebView、loadUrl("");

(2)与js交互

设置支持Javascript

WebSettings settings = webView、getSettings();

settings、setJavaScriptEnabled(true);

(3)可以利用html做界面布局

4.理解View与ViewGroup的用途及两者之间的关系。

继承结构:

View就是ViewGroup的父类类。View就是所有UI组件的基类,而ViewGroup就是容纳这些组件的容器,其本身也就是从View派生出来的、

View中所有的子类成为widgets,viewgroup的子类成为layout。

View与ViewGroup之间采用了组合设计模式,可以使得“部分-整体”同等对待。ViewGroup 作为布局容器类的最上层,布局容器里面又可以有View与ViewGroup。

对于setContentView(R、layout、layout的xml文件)方法,Activity其实不就是显示视图(直观上感觉就是它),实际上Activity调用了PhoneWindow的setContentView()方法,然后加载视图,将视图放到这个Window上,而Activity其实构造的时候初始化的就是

Window(PhoneWindow),Activity其实就是个控制单元,即可视的人机交互界面。Activity就是一个工人,它来控制Window;Window就是一面显示屏,用来显示信息;View就就是要显示在显示屏上的信息,这些View都就是层层重叠在一起(通过infalte()与addView())放到Window显示屏上的。而LayoutInfalter就就是用来生成View的一个工具,XML布局文件就就是用来生成View的原料。(2)、Activity、Window、View之间的关系:

Activity就是Window与View之间的桥梁,将View的内容信息显示在Window 窗口上面。

5.理解Android网络编程中,常见的数据传输格式。

网络传输中最常见的有xml与json ,还有protocol buffers,gzip,Thrift

Xml通过Pull,SAX与Dom方式解析

Json用JSONObject与GSON解析。

Protocol Buffers 一种数据描述语言,类似于XML能够将结构化数据序列化——类似于XML,但更小,更快,更简单

经常用到json、xml等格式的数据,这些数据在传输前可以进行压缩,这时候就会涉及到一种压缩格式—Gzip。Gzip的压缩比率非常大,有的甚至能达到70%以上,可以大大减少传输内容,提高用户的传输速度,进而提高用户的体验

6.理解基本组件Activity的相关知识(如重载方法等)。

Android应用有四大组件Activity、Service、BroadcastReceiver、ContentProvider ContentProvider组件:用于Android应用之间实现实时的数据交换。常与ContentResolver一起使用

BroadcastReceiver组件:广播消息接收器,类似于事件编程中的监听器,但就是不同的就是普通的事件监听器监听的事件源就是程序中的对象,而BroadcastReceiver 监听的事件源就是Android应用程序中的其它组件。

Service组件: 通常位于后台运行,一般不需要与用户交互,所以没有图形界面。Service组件运行起来后会有独立的生命周期,它通常用于为其她组件提供后台服务或监控其她组件的运行状态

(1)activity就是一种可以包含用户界面的组件,主要用于与用户进行交互

表现形式就是一个屏幕,功能就是显示界面,消息传递

整个生命周期:onCreate()-onDestroy()

可见的生命周期:onStart()-onStop()

前台的生命周期:onResume()-onPause()

运行,暂停(不在栈顶,但可见),停止(完全不可见,有可能因内存不够被回收),销毁(从栈中移除

覆盖了activity生命周期的每一个环节

Android开发的核心知识

想要学习移动应用的开发,除了必备的知识要掌握好之外,更多的是要掌握一些核心的基础知识,并且是能够起到关键性作用的知识点,必须是要了解清楚,如果你也是在学习Android开发,下面的核心基础或者对你有一定的帮助! 1.ListView的引入 为什么要采用listview?其实是在数据量过于庞大时,传统的存储方式它是会占用机器大量内存,最终导致OOM异常(内存溢出),listview的出现将会是有效的解决这个弊端的出现。 重点来了listview如何使用呢? res/layout布局文件中定义listview src的java代码里面关心控件findviewbyid(R.id.listview); 创建适配器对象,适配器继承baseAdapter接口 2.构造方法 getCount();控制listview的条目数 getView();得到当前条目视图 View.inflate();布局填充器 设置适配器:setAdapter(adapter); 设置listview列表项的点击事件:setOnClickLinsstener();

通知listview更新数据:adapter.notifyDataSetChanged(); 3.对话框的使用 *普通对话框 *单选对话框 *多选对话框 *进度对话框 *进度条对话框 *自定义对话框 布局填充器:Viewview=View.inflate(Context,https://www.360docs.net/doc/7f8718040.html,yout.dialog,null); 核心API:dialog.setView(view); 4.常见的一些适配器的使用 *数组适配器:ArrayAdapter *简单适配器:SimpleAdapter 5.数据库的常见的事务 为什么需要需要定义数据库事务?最主要的还是为了保证多条操作语句同步执行 6.数据库事务执行流程 db.beginTransaction();开启事务 db.setTransactionSuccessful();设置事务执行成功 db.endTransaction();结束事务 7.样式和主题 样式的作用在单独的UI控件上面 主题的作用它是在activity或者application上 以上的这些功能控件、数据库等这些是开发中必备的功能,在开发中只要这些基本的核心知识都掌握了,那么这对你接下里的进一步开发是比较有帮助的。

Android期末测试题(附带答案)

一、选择题 1、下列哪项不是Android四大组件( C ) A.Seivice B. Activity C. Handler D. Content Provider 2、Android是如何组织Activity的( B ) A.以堆的方式组织Activity B. 以栈的方式组织Activity C. 以树形方式组织Activity D. 以链式方式组织Activity 3、关于线程说法不正确的是( B ) A. 在 android 中,我们可以在主线程中,创建一个新的线程 B. 在创建的新线程中,它可以操作 UI 组件 C. 新线程可以和 Handler 共同使用 D. 创建的 Handler 对象,它隶属于创建它的线程 4、下列关于内存回收的说明,哪个是正确的(B ) A.程序员必须创建一个线程来释放内存 B.内存回收程序负责释放无用内存 C.内存回收程序允许程序员直接释放内存 D.内存回收程序可以在指定的时间释放内存对象 5、设置xml布局文件中的字体大小一般用什么单位( c ) A.dp B. px C. sp D. pt 6、关于service生命周期的onCreate()和onStart()说法正确的是( D ) A.当第一次启动的时候先后调用onCreate()和onStart()方法 B.当第一次启动的时候只会调用onCreate()方法 C.如果service已经启动,将先后调用onCreate()和onStart()方法 D.如果service已经启动,只会执行onStart()方法,不再执行onCreate()方法 7、Android项目工程下面的assets目录,以下说法正确的是( A ) A.这里的文件是原封不动的存储到设备上不会转换为二进制的格式 B.主要放置多媒体等数据文件 C.主要放置图片文件 D.放置字符串,颜色,数组等常量数据 8、在android中使用SQLiteOpenHelper这个辅助类,生成一个可操作的数据库,调用的方法是( A )A.getReadableDatabase() B.getDatabase() C.getEnbleDatabase() D.createDateBase() 9、Activity从可见状态变为半透明遮盖状态时,生命周期中哪个方法被调用( B )

Android知识体系思维导图

Android Activity Visible Fragment addview setContentView startActivity startActivityForResult requestCode ResponseCode setResult(intent, response code) onActivityResult Service start onCreate() onStartCommand() onDestroy bind onCreate() onBind() onUnbind() onDestroy ServiceConnection onServiceConnected() &!null binder onServiceDisconnected() been killed crash BroadcastReceiver XML manifest intent-filter Code registerReceiver(receiver, filter)unRegistReceiver() code sendBroadcast(intent) SendOrderedBroadcast

Android应用开发基本知识点汇总

Android应用开发基本知识点汇总 Activity 一生命周期 4种状态 running / paused / stopped / killed 生命周期 Activity启动 onCreate -> onStart -> onResume 点Home返回主界面 onPause -> onStop 再次回到原Activity onRestart -> onStart -> onResume 退出Activity onPause -> onStop -> onDestroy 进程优先级前台/可见/服务/后台/空 二任务栈 三启动模式 standard singleTop 栈顶复用 singleTask 栈内复用 singeInstance 四scheme跳转协议 服务器可以定制化告诉App跳转哪个页面,可以通过通知栏消息定制化跳转页面,可以通过H5页面跳转页面 Fragment 一第五大组件 为什么是第五大组件 Fragment相对Activity更节省内存,切换更舒适Fragment加载到Activity的两种方式 静态加载xml 动态加载fragmentTransaction.add(id, fragment, “name”); .commit; FragmentPagerAdapter与FragmentStatePagerAdapter

FragmentStatePagerAdapter在切换时回收内存,适合页面较多的情况FragmentPagerAdapter并没有回收内存,只是detach了Activity 二生命周期 onAttach -> onCreate -> onCreateView -> onViewCreated -> onActivityCreated -> onStart -> onResume -> onPause -> onStop -> onDestroyView -> onDestroy -> onDetach 先创建Activity后创建Fragment,先销毁Fragment后销毁Activity 三Fragment之间的通信 Fragment调用Activity getActivity Activity调用Fragment 接口回调 Fragment调用Fragment方法findFragmentById 四FragmentManager replace add remove Service 一应用场景,与Thread区别 Service是什么后台长时间运行,没有用户界面,运行在主线程,不能有耗时操作 Service与Thread区别 Activity难以与Thread交互,尤其当Activity销毁以后 二开启Service的两种方式 StartService onCreate -> onStartCommand -> onBind -> onDestroy onStartCommand return START_STICKY;

Android考试题库

一、单选题(共33题,共62 分) 1、(2 分) WebView 中可以用来处理js 中警示,确认等对话框的是(C) A. WebSettings B.WebViewClient C.WebChromeClient D.WebViewChrome 2、(2 分) Android 解析xml 的方法中,将整个文件加载到内存中进行解析的是?(C) A 、SAX B 、PULL C 、DOM D 、JSON 3、(2 分)以下属于调用摄像头硬件的权限的是:(A ) A. B. C. D. 4、(1 分)使用Android 系统进行拍照用到的类有:(D) A. SurfaceView B. SurfaceHolder C.Callback D. Camera 5、(2 分)LocationManager 获取位置信息的途径下列说法不正确的是(B ) A, GPS 定位更精确,缺点是只能在户外使用 B, NETWORK通过基站和Wi- Fi信号来获取位置信息,速度较慢,耗电较少。 C, 获取用户位置信息,我们可以使用其中一个,也可以同时使用两个。 D, GPS 定位耗电严重,并且返回用户位置信息的速度远不能满足用户需求。 6、(2 分)在开发AppWidget 窗口小部件时, 需要继承(D)类 A,AppWidgetReceiverB,AppWidgetConfigure C,AppWidgetManagerD,AppWidgetProvider 7、(4 分)在AsyncTask 中下列哪个方法是负责执行那些很耗时的后台计算工作的(C) A,runB,executeC,doInBackgroundD,onPostExecute 8、(2 分)如果希望自定义TabHost 标题部分的显示内容需要使用下列哪个方法(B)finalTabHosttabHost = getTabHost(); A, tabHost.addTab(tabHost.newTabSpec("tab1") B, setIndicator C, setContent(); D, setView 9、(2 分)使用HttpUrlConnection 实现移动互联时, 设置读取超时属性的方法是(B) A、setTimeout() B 、setReadTimeout() C、setConnectTimeout() D 、setRequestMethod() 10、(1 分)使用HttpURLConnection 的Get 方式请求数据时, 下列哪个属性是必须设置的(B) A, connection.setDoOutput(true) B, connection.connect()

Android手机分辨率基础知识(DPI_DIP计算)

比如:计算WVGA(800*480)分辨率,3.7英寸的密度DPI

图1 Diagonal pixel 表示对角线的像素值(=),DPI=933/3.7=252 3.手机屏幕的分类 3.1根据手机屏幕密度(DPI)或屏幕尺寸大小分为以下3类,如图2所示 图2 3. 2手机屏幕分类和像素密度的对应关系如表1所示:

图3 从以上的屏幕尺寸分布情况上看,其实手机只要考虑3-4.5寸之间密度为1和1.5的手机4 UI设计 从开发角度讲,应用程序会根据3类A ndroid手机屏幕提供3套UI布局文件,但是相应界面图标也需要提供3套,如表2所示

需要根据物理尺寸的大小准备5套布局,layout(放一些通用布局xml文件,比如界面中顶部和底部的布局,不会随着屏幕大小变化,类似windos窗口的title bar),layout- small(屏幕尺寸小于3英寸左右的布局),layout-normal(屏幕尺寸小于4.5英寸左右),layout-large(4英寸-7英寸之间),layout-xlarge(7-10英寸之间) 2)图片资源方面 需要根据dpi值准备5套图片资源,drawable,drawalbe-ldpi,drawable-mdpi,drawable-hdpi,drawable-xhdpi Android有个自动匹配机制去选择对应的布局和图片资源 分享到:?上一篇:分享摩托罗拉milestone手机升级到Android 2.2的过程 ?下一篇:基于feng streaming server 搭建Android直播测试平台 查看评论 7楼pc0de 2011-12-16 17:11发表[回复] 谢谢分享啊 6楼yang_hui198**** ****-11-19 16:44发表[回复] 很强大!!!很喜欢!!! 3楼noICE1 2011-08-16 14:59发表[回复]

复习材料《Android移动应用开发技术》

1、关于android进程,说法不正确的是( B ) A、组件运行所在的进程,是由androidManifest.xml决定,它可以指定该组件运行于哪个进程。 B、背景进程是不为用户所见的Activity,但是还会有可能被用户看到,所以它不能被杀死 C、当急需内存时,android会决定优先关闭那些空闲的进程 D、可视进程一般不会不被系统所杀死 2、Matrix类的作用( A ) A、可以存储缩小或放大比列 B、存储文件中的图片信息 C、存储资源中的图片信息 D、存储内存中的图片信息 3、关于主题的说法,错误的是( D ) A、它是属性集合 B、它可以在程序中来设置 C、它通常用于一个Activity或所有Activity上 D、它可以用于单个TextView上 4、setOnTouchEvent 设置返回值为true 和 false有何区别?以下说法较准确是( C ) A、没有区别,都能对事件进行监听 B、设置为true时只能在移动时获得一次监听事件,false则可以多次 C、设置为false是,在处理一次监听事件后,系统将抛弃该次事件 D、返回true表示这个消息已经被处理结束,后续的handler不再接收到这个消息 二、开发技术设计与应用能力部分 注:以下程序均是相关程序或小项目的实现代码,根据每个程序或项目的特性,完成程序空缺部分的内容,使其实现。具体程序代码注释省略。 图1 图2 图3 图4 1)电话实现[主界面如图1] 程序描述:完成手机打电话功能。 public class MainActivity extends Activity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(https://www.360docs.net/doc/7f8718040.html,yout.activity_main); Button btn_call = (Button)this.findViewById(R.id.btn_call); btn_call.setOnClickListener(new btnCall()); } private class btnCall implements OnClickListener (1) { public void onClick(View v) { // TODO Auto-generated method stub EditText et_number = (EditText) MainActivity.this.findViewById(R.id.et_number); String s_number = et_number.getText().toString().trim(); (2) Intent i_call = new Intent(); i_call.setAction(Intent.ACTION_CALL(3)); i_call.setData(Uri.parse("tel:"+s_number)); startActivity(i_call); (4) } } } 2)动画实现[主界面如图2] 程序描述:手机屏幕触摸后演示动画,假设XML文件已经设置好,id资源为:R.drawable.panda public class MainActivity extends Activity { ImageView iv_action; AnimationDrawable ad_action; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(https://www.360docs.net/doc/7f8718040.html,yout.activity_main); iv_action = (ImageView)this.findViewById(R.id.iv_action); iv_action.setBackgroundResource(5)(R.drawable.panda); ad_action = (AnimationDrawable) iv_action.getBackground(); } public boolean onTouchEvent(MotionEvent event) { ad_action.start();(6) return super.onTouchEvent(event); } } 3)撕衣服游戏实现 项目描述:划动屏幕时完成撕衣服效果,并产生撕衣服声音(sound.mp3) public class MainActivity extends Activity { ImageView iv_upper; ImageView iv_below;

android笔试题及答案

单选题 中可以用来处理js中警示,确认等对话框的是(C) 2.假设assets目录下有文件结构html/,用loadUrl()方法将该网页加载至 webView 时,需传入的参数是(B) A. B. C. D. 3.下列不属于补间动画相关类的是(B) 中网络互连中需要获取状态码,根据状态码来判断请求是否已经完成,下列状 态码表示请求完成的是(D) 5.关于ImageSwitcher 说法错误的是:( B ) 里可以通过Alpha设定转换时候的透明位 B.在使用一个ImageSwitcher之前,不一定要调用setFactory方法 是设置资源被读入到这个ImageSwitcher的时候动画效果 是资源文件从这个ImageSwitcher里消失的时候要实现的动画效果 6.建立蓝牙连接时通过_D_方法来获取BluetoothAdapter对象 D. () 7.关于Handler的说法不正确的是( A ) A.它实现不同进程间通信的一种机制 B.它避免了在新线程中刷新UI的操作 C.它采用队列的方式来存储Message D.它实现不同线程间通信的一种机制 8.Vector和ArrayList的主要区别是(B): A. ArrayList内部基于链表,而Vector是基于数组的

B. Vector的大部分方法做了同步,而ArrayList没有同步 C. Vector是可串行化的,而ArrayList不是 D. Vector实现了RandomAccess,而ArrayList没有 9.下列属于SAX解析xml文件的优点的是(B ) A.将整个文档输在内存中,便于操作,支持删除,修改,重新排列等多种功能 B.不用事先调入整个文档,占用资源少 C.整个文档调入内存,浪费时间和空间 D.不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会消失 a1="abc"; String a2="abc"; String a3="abcd"; 总共创建( A )个String对象。 多选题 1.在添加第一个appwidget窗口小部件时,会执行的方法是(ABD) 2.下列属于SOAP优点的是(ABCD) A,SOAP 与编程语言无关。SOAP 可以使用任何语言来完成 B,SOAP 是完全和厂商无关。 C,SOAP 与平台无关D,SOAP 是简单的,可扩展的 3.下列属于SAX解析XML需要用到的类和接口是(BCD) A.DocumentBuilder 4.在使用蓝牙必须获取的权限是(AD) 5.Chronometer类的重要方法(ABC) 简答题 1.oom是什么如何避免 当程序需要申请一段“大”内存,但是虚拟机没有办法及时的给到,即使做了GC操作以后这就会抛出OutOfMemoryException 也就是OOM 避免:

ANDROID实训心得体会

项目总结 时间过的好快,为期三个月的实训生活即将结束了,每一次的实训我们都受益匪浅,我 们学到的不仅仅是课内还有课外,实训让我们的课内知识得到了巩固,专业知识、编程水平 都有很大的提高,我们非常感谢这次实训。 刚开始二周的高强度的课程安排让我们受益匪浅;接下来的项目实训又让我们可以巩固 了课程。这让我觉得实习生活充实而有意义。 乐淘购物项目和android优化大师,我更好的学习了ui的设计,如何使界面漂亮,美观, 巩固了listview,gridview,的使用,学会了动画进入界面的,和会移动的画廊等等。在这 两个项目中,除了让我明白工作中需要能力,素质,知识之外,更重要的是学会了如何去完 成一个任务,懂得了享受工作。当遇到问题,冷静,想办法一点一点的排除障碍,到最后获 取成功,一种自信心由然而生,这就是工作的乐趣。有时候也需要虚心请教,从别人的身上 真得能学习到不自己没有的东西,每一次的挫折只能使我更接近成功。 音乐播放器项目,我们是七个人组成小组完成的,由组长带领我们,分配任务,每个人, 都发挥自己的长处,更好地去完成任务。对于团队开发来说,团结一致使我深有体会。团队 的合作注重沟通和信任,不能不屑于做小事,永远都要保持亲和诚信,把专业理论运用到具 体实践中,不仅加深我对理论的掌握和 运用,还让我拥有了一次又一次难忘的开发经历,这是也是实训最大的收获。 这次实训对于我以后学习、找工作也真是受益菲浅,在这3个月中让我初步从理性回到 感性的重新认识,也让我初步的认识这个社会,对于以后做人所应把握的方向也有所启发! 相信这些宝贵的经验会成为我今后成功的重要的基石。在此,我非常感谢指导老师和 同学对我的帮助。篇二:android实训报告 通信与电子信息专业实训报告 项目名称:基于android的游戏开发 班级 10通信1班 姓名 学号 指导教师 成绩 实训时间:年月日— 目录 一、实训目的及其意义 (3) 1.1、目的及意义 (3) 1.2、研究现状 (3) 二、实训主要任务、重点及难点 (4) 2.1、任务 (4) 2.2、重点内容及实现途径 (4) 三、实训具体内容及完成的主要工作 (5) 3.1、认识基础开发 (6) 3.2、了解数据存储 (6) 3.3、总体实训过程 (7) 四、实际遇到的困难,解决问题的方法和措施 (8) (一)、所遇问题 (8) (二)、解决方法与措施 (9) 五、心得体会 (9)

Android面试题带标准答案

Android面试题 下列哪些语句关于内存回收的说明是正确的? (b ) A、程序员必须创建一个线程来释放内存 B、内存回收程序负责释放无用内存 C、内存回收程序允许程序员直接释放内存 D、内存回收程序可以在指定的时间释放内存对象 下面异常是属于Runtime Exception的是(abcd)(多选) A、ArithmeticException B、IllegalArgumentException C、NullPointerException D、BufferUnderflowException Math.round(11.5)等于多少(). Math.round(-11.5)等于多少(c). c A、11 ,-11 B、11 ,-12 C、12 ,-11 D、12 ,-12 下列程序段的输出结果是:(b)?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 对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行(d) A、onPause() B、onCreate() C、 onResume() D、onStart() Intent传递数据时,下列的数据类型哪些可以被传递(abcd)(多选) A、Serializable B、charsequence C、Parcelable D、Bundle android 中下列属于Intent的作用的是(c) A、实现应用程序间的数据共享 B、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失 C、可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带 D、处理一个应用程序整体性的工作 下列属于SAX解析xml文件的优点的是(b) A、将整个文档树在内存中,便于操作,支持删除,修改,重新排列等多种功能 B、不用事先调入整个文档,占用资源少 C、整个文档调入内存,浪费时间和空间 D、不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会 消失 下面的对自定style的方式正确的是(a) A、 <resources> ?<stylename="myStyle"> ? ?</style> B、<style name="myStyle"> ?<item name="android:layout_width">fill_parent</item>

Android期末复习题总结

1、Intent的Component属性的作用是什么,如何定义此属性? component(组件),指定Intent的的目标组件的类名称。通常Android会根据Intent 中 包含的其它属性的信息,比如action、data/type、category进行查找,最终找到一个与之匹 配的目标组件。但是,如果component这个属性有指定的话,将直接使用它指定的组件, 而不再执行上述查找过程。指定了这个属性以后,Intent的其它所有属性都是可选的。Component属性的作用是用来指定Intent的目标组件的类名称。如果Component这个属性被指定了的话,Intent的其它属性都是可选项,Android 会直接使用Component指定目标组件,而不再执行其它查找过程。 在使用时,需要先创建一个ComponentName对象,然后将它设置成Intent对 象的Component的属性。通过setComponent()、setClass()和setClassName() 三种方法都可以设置组件的名称,通过getComponent()方法则可获得设置项。 2、发送广播时,可以通过sendCatagoryBroadcast()方法将Intent对象发送出去( ). (错) 3、Android是什么?( ) 一种操作系统 4、下面关于Android dvm的进程和Linux的进程,应用程序的进程说法正确的是( ) DVM指dalivk的虚拟机。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。而每一个DVM都是在Linux 中的一个进程,所以说可以认为是同一个概念。 5、Android操作系统最早由哪个公司研发?( ) Android公司 6、下列中不属于手持设备的是( ) 机顶盒 7、下列不是手机操作系统的是()。Windows Vista 8、到目前为止,Android操作系统的最高版本是哪个?( )Android L 9、安装Android SDK时,可以通过( )在线安装或离线安装。Android sdk manager 10、开发Android应用程序时,一般使用的计算机语言是( ) 。JAVA 11、E/AndroidRuntime(1099): https://www.360docs.net/doc/7f8718040.html,ng.RuntimeException: Unable to instantiate activity ComponentInfo{com.test/com.test.CanvasActivitys}: https://www.360docs.net/doc/7f8718040.html,ng.ClassNotFoundException: com.test.CanvasActivitys in loader dalvik.system.PathClassLoader[/data/app/com.test-1.apk] 这段话是程序报错在LogCat中产生的记录,从中可以分析问题的原因可能在哪里?( ) CanvasActivitys类没有在AndroidManifest中正确申明 12、对于直接Intent,Android不需要去做解析,因为目标组件已经很明确,Android 需要解析的是那些间接Intent,通过解析,将Intent映射给可以处理此Intent的Activity、IntentReceiver或Service (对) Intent 可以传递View对象(错) Intent起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被 调用者之间的解耦(对) 通过Intent可以删除程序(对) 13、下面退出Activity错误的方法是()。System.exit( ) 14、当启动一个Activity并且新的Activity执行完后需要返回到启动它的Activity来执行 的回调函数是( )。startActivityResult() 15、这是一个资源配置文件,下面描述正确的是? ( )这个shape文件是画一条虚线,实 线段5dp,间隔3dp 16、Toast toast = new Toast(this); toast.setText("今天天气不错\n哈哈"); toast.show(); 上面代码的执行结果是什么( )。代码会抛出异常,因为new出的Toast对象不能再使用setText方法来设置提示框文本

Android移动应用试题(带答案)

<>试题 一.选择题(2’X12) 1.下面哪一个不属于Android体系结构中的应用程序层 A.电话簿 B.日历 C.SQLite D.SMS程序 2.下面哪种说法不正确 A.Android应用的gen目录下的被删除后还能自动生成; B.res目录是一个特殊目录,包含了应用程序的全部资源,命名规则可以支持数字(0-9) 下横线(_),大小写字母(a-z , A-Z); C.文件是每个Android项目必须有的,是项目应用的全局描述。其中指定程序的包名 (package=”…”)+指定android应用的某个组件的名字(android:name=”…”)组成了该组件类的完整路径 D.assets和res目录都能存放资源文件,但是与res不同的是assets支持任意深度的子 目录,在它里面的文件不会在里生成任何资源ID 3.在一个相对布局中怎样使一个控件居中 A.android:gravity="center" B.android:layout_gravity="center" C.android:layout_centerInParent="true" D.android:scaleType="center" 4.下面是一段生成对话框的代码,哪一行有错误 Builder builder = new Builder(getApplicationContext()); 1 ("提示").setMessage("请选择"); 2 ("重置", new OnClickListener() 3 { 4 public void onClick(DialogInterface dialog, int which) 5 { 6 ("log", "重置被按了!"); 7 } 8 }); 9 ("取消", null); 10 ("确定", new OnClickListener() 11 { 12 public void onClick(DialogInterface dialog, int which) 13 { 14 (getApplicationContext(), "确定被按了!", 15 .show(); 16 } 17

ANDROID OPENGL ES 基础知识(基本概念)

基本概念 为了方便后边的编程,我们第一篇文章主要是介绍一些关于OpenGLES基本的概念。点 3D图像的最小单位称为点(point)或者顶点vertex。它们代表三维空间中的一个点并用来建造更复杂的物体。多边形就是由点构成,而物体是由多个多边形组成。尽管通常OpenGL支持多种多边形,但OpenGLEs只支持三边形(即三角形)所以即使我们要绘制一个正方形也要把它拆分为两个三角形绘制。先说说坐标系的问题。 默认情况下,以屏幕中心为坐标轴原点。原点左方x为负值,右边为正值。原点上方y 为正,原点下方为负。垂直屏幕向外为z正,垂直屏幕向里为z负。默认情况下,从原点到屏幕边缘为1.0f,沿各轴增加或减小的数值是以任意刻度进行的–它们不代表任何真实单位,如英尺,像素或米等。你可以选择任何对你的程序有意义的刻度(全局必须保持单位一致,不能一部分使用米,一部分使用像素)。OpenGL只是将它作为一个参照单位处理,保证它们具有相同的距离。如图:

了解了坐标轴,我们来看看怎么在坐标系中表示一个点,通常用一组浮点数来表示点。例如一个正方形的4个顶点可表示为: 1.float vertices[] ={ 2.-1.0f,1.0f,.0f,//左上 3.-1.0f, -1.0f,.0f,//左下 4.1.0f, -1.0f,.0f,//右下 5.1.0f,1.0f,.0f,//右上 6.}; 为了提高性能,通常还需要将浮点数组存入一个字节缓冲中。所以有了下面的操作: 1.ByteBuffer vbb = ByteBuffer.allocateDirect(vertices.length *4); //申请内存 2.vbb.order(ByteOrder.nativeOrder()); //设置字节顺序,其中ByteOrder.nativeOrder()是 获取本机字节顺序 3.FloatBuffer vertexBuffer = vbb.asFloatBuffer(); //转换为float型

Android实习报告

合肥工业大学学生自主实习报告 学号: xxx 姓名: xxx 实习单位: 实习时间:2014年6月22-7月5日

一、实习目的: 1、掌握android系统开发的一些常用知识 2、拥有独立解决开发中遇到问题的能力 3、熟悉android软件开发流程并至少做一个android软件项目。 了解现阶段互联网发展主流,了解移动互联网,认识移动互

联网的发展与展望,认识Android,了解基于Android的应用软件开发方法及其商业流程。把理论与实际结合,通过对理论知识的理解,领悟从而运用到生活实际巩固所学的知识,提高对实际生活的认识,积累经验。使学生在此期间能够初次体会到实际生产中的种种技能与经验,完成一项项目锻炼独立思考及团队合作能力。使学生们进一步加深对所学知识的理解,理论联系实际,巩固所学有关计算机基础理论知识和基本技能,学习有关计算机最新技术方面的应用,增强学生对计算机在社会生活,社会生产中应用的感性认识,深入了解计算机在各个领域中的应用状况。生产实习是学校教学的重要补充部分,是区别于普通学校教育的一个显著特征,是教育教学体系中的一个不可缺少的重要组成部分和不可替代的重要环节。它是与今后的职业生活最直接联系的,学生在生产实习过程中将完成学习到就业的过渡,因此生产实习是培养技能型人才,实现培养目标的主要途径。它不仅是校内教学的延续,而且是校内教学的总结。生产实习一方面巩固了书本上学到的理论知识,另一方面,可获得在书本上不易了解和不易学到的生产现场的实际知识,使我们在实践中得到提高实训环节对于提高学生的综合能力和全面素质具重要意义 二、实习单位:苏州高博培训

Android开发技术期末考试复习题

试题 一、选择题 1 android虚拟设备的缩写是(A VD) 2 Android SDK目前支持的操作系统(Linux) 3 Android开发工具插件(ADT)没有提供的开发功能(自动更新) 4 Android SDK提供一些开发工具可以把应用软件打包成Android格式文件(APK) 5 Android当中基本的所有的UI都是由(view)或者其子类实现的 7下列不是Activity的生命周期方法之一的是() onCreate onStart onRestart onResume onPause onStop onDestroy 8 以下可以做EditText编辑框的提示信息是(adroid:hint) 以下不是手机操作系统的是(windows vista) 下列哪个属性是专用于相对布局的(D) A.android.orientation 线性vertical 垂直horizontal B.android:stretchColumns C.android:layout_alignParentRight D.android:layout_toRightOf 定义LinearLayout垂直方向布局时设置的属性( D ) A.android:layout_height B.android:gravity C.android:layout D. android:orientation vertical 垂直 为了使android适应不同分辨率的机型,布局时字体单位应用( D ) A.dp B.dip 像素 C.px D.sp 下面属于android的动画分类的有( AB) A.Tween B.Frame C.Draw D.Animation Property Animation属性动画android 关于service生命周期的onCreate()和onStart()说法正确的是( AD ) A.当第一次启动的时候先后调用onCreate()和onStart()方法 B.当第一次启动的时候只会调用onCreate()方法 C.如果service已经启动,将先后调用onCreate()和onStart()方法 D.如果service已经启动,只会执行onStart()方法,不在执行onCreate()方法 在android中使用Menu时可能需要重写的方法有(AC) A、onCreateOptionsMenu() 三种菜单:选项菜单、上下文菜单、子菜单 B、onCreateMenu() C、onOptionsItemSelected() D、onItemSelected() Intent传递数据时,下列的数据类型哪些可以被传递(ABCD) A、Serializable B、charsequence C、Parcelable D、Bundle java.io包中的( A )和( B )类主要用于对对象Object的读写。 A. objectInputStream B. objectOutPutStream C.Reader D.writer 继承ContentProvider需要实现(ABCD)等方法。 A. insert B. delete C. update D. query

相关文档
最新文档