一、选择题(20分,每小题2分) 1、下列不是手机操作系统的是( D )。 A Android B Window Mobile C Apple IPhone IOS D Windows Vista 2、下列选项哪个不是 Activity 启动的方法(B ) A startActivity B goToActivity C startActivityForResult D startActivityFromChild 3、下列哪个不是 Activity 的生命周期方法之一(B ) A onCreate B startActivity C onStart D onResume 4、下列哪个可做 Android 数据存储(A ) A SQlite B M ySql C Oracle D DB2 5、下列哪个可做EditText编辑框的提示信息( D ) A android:inputType B android:text C android:digits D android:hint 6、Math.ceil(99.1) 的结果是(B ) A 99 B 100 C 99.1 D 99.0 7、android 中下列属于Intent的作用的是(C) A实现应用程序间的数据共享 B是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失 C可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带 D处理一个应用程序整体性的工作 8、关于 res/raw 目录说确的是A A这里的文件是原封不动的存储到设备上不会转换为二进制的格式 B这里的文件是原封不动的存储到设备上会转换为二进制的格式 C这里的文件最终以二进制的格式存储到指定的包中 D这里的文件最终不会以二进制的格式存储到指定的包中 9、Math.round(11.5)等于多少(). Math.round(-11.5)等于多少( C) A 11 ,-11 B 11 ,-12 C 12 ,-11 D 12 ,-12 10、我们都知道Hanlder是线程与Activity通信的桥梁,如果线程处理不当,你的机器就会变得越慢,那么线程销毁的方法是(A ) A onDestroy() B onClear() C onFinish() D onStop() 二、填空题(10 分,共10 题,每空1 分) 1、为了使 android 适应不同分辨率机型,布局时字体单位应用( sp ),像素单位应用( sp )和(dip ) 2、定义 LinearLayout 水平方向布局时至少设置的三个属性: ( android:orientation), (android:layout width)和(android:layout height)
Android四大组件 Android开发平台是开放的平台,而位于四层框架顶端的应用开发,必然涉及到Android组件。本文将为大家详细介绍Android组件。 组件(Component),在谈及所谓架构和重用的时候,是一个重要的事情。很多时候都会说基于组件的软件架构,指的是期望把程序做乐高似的,有一堆接口标准封装完整的组件放在哪里,想用的时候取上几个一搭配,整个程序就构建完成了。 在开篇的时候就在说,Android是一个为组件化而搭建的平台,它引入所谓Mash-Up的概念,这使得你在应用的最上层,想做的不组件化都是很困难的一件事情(底层逻辑,好吧,管不了...)。具体说来,Android有四大组件四喜丸子:Activity、Service、Broadcast Receiver、Content Provider。 Activity 做一个完整的Android程序,不想用到Activity,真的是比较困难的一件事情,除非是想做绿叶想疯了。因为Activity是Android程序与用户交互的窗口,在我看来,从这个层面的视角来看,Android的Activity特像网站的页面。 首先,一个网站,如果一张页面都没有,那...,真是一颗奇葩。而一张页面往往都有个独立的主题和功能点,比如登录页面,注册页面,管理页面,如是。 在每个页面里面,会放一些链接,已实现功能点的串联,有的链接点了,刷,跑到同一站点的另一个页面去了;有的链接点了,啾,可能跳到其他网站的页面去;还有的链接点了,恩...,这次没跑,但当前页面的样子可能有所变化了。这些模式,和Activity给人的感觉很像,只不过实现策略不同罢了,毕竟Android这套架构的核心思想,本身就来自源于Web的Mash-Up概念,视为页面的客户端化,也未尝不可。 Activity,在四大组件中,无疑是最复杂的,这年头,一样东西和界面挂上了勾,都简化不了,想一想,独立做一个应用有多少时间沦落在了界面上,就能琢磨清楚了。从视觉效果来看,一个Activity占据当前的窗口,响应所有窗口事件,具备有控件,菜单等界面元素。从内部逻辑来看,Activity需要为了保持各个界面状态,需要做很多持久化的事情,还需要妥善管理生命周期,和一些转跳逻辑。对于开发者而言,就需要派生一个Activity的子类,然后埋头苦干上述事情。对于Activity的更多细节,先可以参见:reference/android/app/Activity.html。后续,会献上更为详尽的剖析。 Service 服务,从最直白的视角来看,就是剥离了界面的Activity,它们在很多Android的概念方面比较接近,都是封装有一个完整的功能逻辑实现,只不过Service不抛头露脸,只是默默无声的做坚实的后盾。 但其实,换个角度来看,Android中的服务,和我们通常说的Windows服务,Web的后台服务又有一些相近,它们通常都是后台长时间运行,接受上层指令,完成相关事务的模块。
想要学习移动应用的开发,除了必备的知识要掌握好之外,更多的是要掌握一些核心的基础知识,并且是能够起到关键性作用的知识点,必须是要了解清楚,如果你也是在学习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.sodocs.net/doc/811057081.html,yout.dialog,null); 核心API:dialog.setView(view); 4.常见的一些适配器的使用 *数组适配器:ArrayAdapter *简单适配器:SimpleAdapter 5.数据库的常见的事务 为什么需要需要定义数据库事务?最主要的还是为了保证多条操作语句同步执行 6.数据库事务执行流程 db.beginTransaction();开启事务 db.setTransactionSuccessful();设置事务执行成功 db.endTransaction();结束事务 7.样式和主题 样式的作用在单独的UI控件上面 主题的作用它是在activity或者application上 以上的这些功能控件、数据库等这些是开发中必备的功能,在开发中只要这些基本的核心知识都掌握了,那么这对你接下里的进一步开发是比较有帮助的。
android studio 控件常用属性 下面是RelativeLayout各个属性 1.android:layout_above="@id/xxx" --将控件置于给定ID控件之上 2.android:layout_below="@id/xxx" --将控件置于给定ID控件之下 3. android:layout_toLeftOf="@id/xxx" --将控件的右边缘和给定ID控件的左边缘对齐 4.android:layout_toRightOf="@id/xxx" --将控件的左边缘和给定ID控件的右边缘对齐 5. android:layout_alignLeft="@id/xxx" --将控件的左边缘和给定ID控件的左边缘对齐 6.android:layout_alignTop="@id/xxx" --将控件的上边缘和给定ID控件的上边缘对齐 7.android:layout_alignRight="@id/xxx" --将控件的右边缘和给定ID控件的右边缘对齐 8.android:layout_alignBottom="@id/xxx" --将控件的底边缘和给定ID控件的底边缘对齐 9.android:layout_alignParentLeft="true" --将控件的左边缘和父控件的左边缘对齐 10. android:layout_alignParentTop="true" --将控件的上边缘和父控件的上边缘对齐 11. android:layout_alignParentRight="true" --将控件的右边缘和父控件的右边缘对齐 12.android:layout_alignParentBottom="true" --将控件的底边缘和父控件的底边缘对齐 13.android:layout_centerInParent="true" --将控件置于父控件的中心位置 14.android:layout_centerHorizontal="true" --将控件置于水平方向的中心位置 15.android:layout_centerVertical="true" --将控件置于垂直方向的中心位置 android:layout_width 设置组件的宽度 android:layout_height 设置组件的高度 android:id 给组件定义一个id值,供后期使用 android:background 设置组件的背景颜色或背景图片 android:text 设置组件的显示文字 android:textColor 设置组件的显示文字的颜色 android:layout_below 组件在参考组件的下面 android:alignTop 同指定组件的顶平行
一、选择题 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应用开发基本知识点汇总 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基础应用》 Android常用控件 ?本章任务 ?使用Android开发使用时间组件 ?使用Android开发使用进度条组件 ?使用Android开发创建底部选项卡 ?本章目标 ?了解Android的组件层次结构 ?掌握常用的日期时间类控件 ?掌握常用的几个容器组件 1.Android组件的层次结构 UI组件都是View的子类,View有很多子类,它们之间存在树状的继承关系View及其子类结构图
TextView及其子类结构图
ViewGroup及其子类结构图 其下的子类一般作为容器或布局来使用 FrameLayout及其子类结构图 其下的子类通常作为容器或布局来使用
2.时间控件 2.1日期时间选择器 DatePicker组件可用于输入日期,TimePicker组件可用来选择时间,只能输入小时和分,默认12小时制 DatePicker ●使用onDateChangedListener监听器来获取用户的日期选择 ●使用init对组件进行初始化 ●使用getYear,getMonth,getDayOfMonth方法获得用户选择的年,月,日 TimePicker ●使用onTimeChangedListener监听器获取用户的时间选择 ●使用setIs24HourView设置是否以24小时制显示 ●使用getCurrentHour获得当前的小时数 ●使用getCurrentMinute获得当前的分钟数 示例
示例的实现结果
2.2时钟组件 AnalogClock组件用来以表盘的方式显示当前时间,该表只有时针和分针,DigitClock组件以数字的方式显示当前时间可以显示时分秒,由于DigitClock继承TextView,可以使用TextView 的属性 示例
试题 一、选择题 1 android虚拟设备的缩写是(AVD) 2 Android SDK目前支持的操作系统(DOS) 3 Android开发工具插件(ADT)没有提供的开发功能(自动更新) 4Android SDK提供一些开发工具可以把应用软件打包成Android格式文件(APK) 5 Android当中基本的所有的UI都是由(view)或者其子类实现的 6以下不是Android中调试项目的正确步骤(测试用例) 7下列不是Activity的生命周期方法之一的是(OnResume) 8以下可以做EditText编辑框的提示信息是(adroid:hint) 9以下不是Activity启动的方法是(gotoActivity) 10以下不是手机操作系统的是(windows vista) 二、填空题 1 Android平台由操作系统,中间件,用户界面和应用软件组成的。 2 Android平台提供了2D,3D的图形支持,数据库支持SQLite,并且集成了浏览器 3目前已知的可以用来搭建Android开发环境的系统有windows,Linux,Mac 等4开发中推荐使用的IDE开发组合为IDE,eclipse,ADI来开发 5 Android SDK主要以java语言为基础 6创建工程时需要填写的信息名称有工程名,包的名字,Activity的名字还有应用的名字
7 Android.jar是一个标准的压缩包,其内容包含的是编译后的class,包含了全部的API 三、简答题 1 Android SDK中API的包结构的划分?至少五个 android.util,android.os,android.content,android.view,android.graphics,android.text 2 Android软件框架结构自上而下可分为哪些层? 应用程序(Application)、应用程序框架(Application Framework)、各种库(Libraries)和Android运行环境(RunTime)、操作系统层(OS) 3 Android应用程序的4大组件是什么? Activity、Broadcast Intent Receiver、Service、Content Provider 4 Android应用工程文件结构有哪些? 源文件(包含Activity),R.java文件,Android Library,assets目录res目录,drawble目录,layout目录,values目录,AndroidManifest.xml 5 Android开发应用程序最有可能使用到的应用框架部分是哪些? 一组View(UI)组件,Content Providers,Resource Manger,Notification Manger,Activiy Manger 6 Android底层库包含哪些? 系统C库,媒体库,Surface Manager,LibWebCore,SGL 四、编程 1实现点击一个按钮,结束当前Activity并将需要返回的数据放置并关闭当前窗体请编写核心代码 Bundle bundle = new Bundle ( ); Bundle.putString(“store”,”数据来自Activity1”) ;
《Android 程序设计课程》课程教学大纲 一、课程基本信息 二、理论教学内容及基本要求
1 Android 操作系统 本章主要对Android 的发展、特点、环境搭建和体系结构进行简要介绍。并且讲解了JDK、Eclipse、Android SDK 软件的下载及安装的基本知识。对Android 应用程序进行解析,提高读者对程序的创建、目录的结构、资源的管理以及对程序权限的理解。最后讲解如何调试Android 程序。 2 Android 生命周期与组件通信 本章主要讲述了Android 生命周期和组件之间的通信。生命周期主要讲述了Android四大组件之一的Activity 生命周期, 包括生命周期函数、栈结构和基本状态三方面。组件的通信靠Intent 实现, 以及Intent 基本构成。 3 Android 用户界面设计 本章主要从Android 用户界面开发出发, 讲述了开发过程中经常使用到的控件, 包括菜单、常用基础控件、对话框与消息框。界面中控件的结构及位置等需要通过有效的界面布局控制, Android 中提供了5 种界面布局格式, 即线性布局、相对布局、表格布局、绝对布局和框架布局。界面中还有一种必要的操作处理———外部操作的响应, 通过有效的事件机制完成。 4 Android 数据存储与交互 本章主要讲述了Android 数据存储与交互方面的内容, 系统中数据交互主要通过五种方式实现, 共享优先数据机制、SQLite 数据库、File 文件机制、内容提供器控件和网络存储。其中在应用程序中最常用也是最有效的数据交互方式是使用SQLite 数据库。 5 Android 后台服务与事件广播 本章主要讲述了Android 后台服务、事件广播和常驻程序。后台服务由系统提供的Service 组件实现, 可分为本地服务和远程服务。事件广播机制主要依靠BroadCast Reciver 组件实现。常驻程序AppWidget又称为窗口小部件, 是在HomeScreen上显示的小部件, 开发时常用AppWidgetProvider 和AppWidgetProviderInfo 类实现。 6 媒介与网络 本章介绍了Android 平台下通过程序实现音频、视频播放等操作。分别介绍了从源文件播放、文件系统播放和流媒体播放等方式。并且介绍了Android 图形绘制与特效, 包括图形的平移、旋转及缩放等操作, 保存指定格式图形文件。编写专业的绘图或控制图形动画的应用程序。以及如何使用Android 手机中内置的高性能WebKit 内核浏览器浏览网页, 使用HTTP 和URL 获得网络资源等内容。 7 Android NDK 本章介绍了Android NDK 的相关知识, 从NDK 的简单介绍到开发环境的
android常用控件大全 在Android中使用各种控件(View) DatePicker-日期选择控件 TimePicker-时间选择控件 ToggleButton-双状态按钮控件 EditText-可编辑文本控件 ProgressBar-进度条控件 SeekBar-可拖动的进度条控件 AutoCompleteTextView-支持自动完成功能的可编辑文本控件 MultiAutoCompleteTextView-支持自动完成功能的可编辑文本控件,允许输入多值(多值之间会自动地用指定的分隔符分开) ZoomControls-放大/缩小按钮控件 Include-整合控件 VideoView-视频播放控件 WebView-浏览器控件 RatingBar-评分控件 Tab-选项卡控件 Spinner-下拉框控件 Chronometer-计时器控件 ScrollView-滚动条控件 在Android中使用的Layout FrameLayout:里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角 LinearLayout:里面可以放多个控件,但是一行只能放一个控件
TableLayout:这个要和TableRow配合使用,很像html里面的table AbsoluteLayout:里面可以放多个控件,并且可以自己定义控件的x,y的位置 RelativeLayout:里面可以放多个控件,不过控件的位置都是相对位置 (Android界面布局好像还可以直接引用一些view,如ScrollView等) 常用控件: 1,EditText 主要函数:setText/getText设置/获取文本内容,setHint设置缺省显示内容; 2,RadioGroup,RadioButton RadioButton的isChecked()判断是否被选中 获取选中RadioButon的ID:设置 RadioGroup.setOnCheckedChangeListener方法 publiconCheckedChanged(RadioGroupgroup,intcheckedId)//checkedId 是选中RadioButton的ID 3,CheckBox isChecked()判断是否被选中 setOnCheckedChangeListener方法监视选中状态改变情况 4,Spinner a,显示数据 1),硬编码加载 通过setAdapter方法设置类型为 ArrayAdapter(Contextcontext,inttextViewResId,String[]objects) textViewResourceId:显示内容的ViewID默认设置为 https://www.sodocs.net/doc/811057081.html,yout.simple_spinner_item
安卓实训总结报告 安卓实训的总结与体会【1】 不知不觉中为期三周的实训已经接近尾声。 虽然时间很短,不过我确实学到了一些我觉得有用的东西,并且是平时上课学不到的东西。 三周的实训,时间很短,确实很短。 原本刚开始,乃至之前听说有为期三周的实训的时候,都觉得,这样的实训不过就是走过场罢了,只有三周的时间,能学到什么东西呢?所以一开始也没当回事。 就这样,带着这样的心态,开始了实训。 安卓实训。 因为第一天周一上午没有课,下午,才算是正式开始了三周的实训。 一开始听老师讲课的时候,感觉很舒服啊,噼里啪啦一讲一堆,不过我就喜欢这样的,听着爽啊。 平时老师上课的时候都是讲一句顿一顿,或者一句话反复琢磨半天,这样的话,虽然老师的出发点是好的,是为了让学生更容易理解,但这样的话,教学的整体进度就下来了。 而且就算是一个知识点反复讲,也不见得能就精通了这个东西,或者说对这个有多么理解。 反而容易让学生产生一种懈怠的情绪。 一、第一件事:说话做事要有真凭实据
而这样一开始,老师就给我一种耳目一新的感觉:这老师上课带劲啊!不过也就仅此而已了。 老师花了一下午的时间着重介绍了老师所在的公司,以及我们接下来三周的实训计划。 接下来一周实训之后,这个实训在老师的刻意营造下,尽量模仿公司的氛围。 而让我感受最受的就是:凭事实说话。 就是无论要下什么结论的时候,都要拿得出能够说服人的数据。 这是我在第一周中感受最深的一件事。 也是我学到的第一件事。 说话下结论要有真凭实据。 二、第二件事:专业技术的不断学习 在这一周中,老师着重讲了如何进行系统构架。 因为之前也跟老师做过项目,所以对进行系统构架的理解要稍微深入些,对其重要性的了解也要多一些。 这样,在老师的讲解下,再和我以前的理解相互验证,感觉就像武功高手,在前辈的点拨下顿悟了一样。 这就是我学到的第二件事,是在专业技能方面的收获。 三、第三件事:学会寻找动力 然后在接下来的一周中,这样的学习中老师让我们每组一个白板,然后把每天的任务完成情况着实记录。
选择题 1. 下面不是Android四大组件之一的(B ) A. Activity B.Intent C. Service D. ContentProvider 2. 下面关于广播叙述错误的是(A) A. 广播是Android四大组件之一 B. BroadcastReceiver有两种注册方式,静态注册和动态注册 C. 静态注册需要在Mainfest.xml中配置 D. 动态注册需要在应用退出时候接触广播的注册。 3. 下面关于BroadcastReceiver错误的是(B): A. BroadcastReceiver有两种注册方式,静态注册和动态注册。 B. BroadcastReceiver必须在AndroidMainfest文件中声明 C. BroadcastReceiver的使用,一定有一方发送广播,有一方监听注册广播,onReceive方法才会被调用。 D. 广播发送的Intent都是隐式启动。 4. 下面关于谁先接收广播顺序错误的是(B) A. 有序广播,优先级高的先接收 B. 有序广播,同优先级的动静态广播接收器,静态优先于动态。 C. 有序广播,同优先级的动态广播接收器,先注册的大于后注册的。 D. 普通广播时,无视优先级,动态广播接收器优先于静态广播接收器 5. 下面关于广播说法错误的是(B) A. 广播分为有序广播和无序广播 B. 使用abortBroadcast方法可以中断所有广播的传递。 C. 广播注册方式分为动态和静态
D. sendOrderBroadcast用来向系统广播有序事件,sendBroadcast()是用来广播无序事件。 6. 下列关于Intent启动组件说法错误的是(C) A.startActivity( ) B. startService( ) C. startBroadcastReceiver() D.startActivityForResult() 7. 对于广播的发送,Intent的启动方式是(B) A.显式启动 B. 隐式启动 C. A和B都可以 D. 以上说法都不正确。 8. 下面关于Notification的说法正确的是(D): A. NotificationManager man = new NotificationManager(); B. PendingIntent contentIntent= new PendingIntent(); C. RemoteViews contentView = new RemoteViews(); D. Notification notification = new Notification(); 9. 关于ContenValues类说法正确的是( A ) A、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的 名是String类型,而值都是基本类型 B、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的 名是任意类型,而值都是基本类型 C、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的 名,可以为空,而值都是String类型 D、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是String类型,而值也是String类型 10.在手机开发中常用的数据库是(A) A,SQLite3 B,Oracle C,Sql Server D,Db23
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.sodocs.net/doc/811057081.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.sodocs.net/doc/811057081.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基础》课程标准 一、课程定位 本课程是计算机专业基于Java方向的Android应用层程序开发的一门专业核心课程。作为Java程序设计、数据库原理与应用等课程的后续课程,主要在于培养学生应用Android技术进行Android应用程序开发的能力,并培养其良好的编程规范和职业习惯。 二、课程目标 通过案例驱动的学习和综合训练,熟练掌握Android应用程序开发的基本知识和技能,并能结合Android中的常用控件和四大系统组件进行Android应用程序的开发,并为后续Android高级知识的学习做下铺垫。在课程的学习中,培养诚实、守信、坚韧不拔的性格,培养善于沟通表达、善于自我学习、具备团队协作的能力。并养成规范的编码、按时交付软件等良好的工作态度。 (一)知识目标 1.掌握Android开发环境的搭建;熟悉Android应用的基本框架,了解Activity、layout的关系; 2.指导学生进行需求分析报告的拟定以及实训报告的编写; 3.熟练掌握Android常用的UI组件的用法,熟练使用Android的UI组件来搭建用户界面;掌握Android 中用户事件处理的基本方法; 4.掌握APP系统分层架构的搭建; 5.熟练掌握AdapterView相关UI组件以及Adapter模式、常见Adapter的定义; 6.熟悉Activity、Service和BroadcastReceiver的生命周期方法,熟练掌握它们的用法 7.熟悉Intent的用法,熟练使用Intent的诸多属性用途及用法; 8.熟练掌握Service与广播机制的使用和工作原理,为应用开发打下基础; 9.掌握SQLite的语法,熟练掌握Android SQLite 数据库的使用。能够用多种方式实现数据存储和数据 共享; 10.掌握Android的异步加载机制; 11.了解自定义控件的实现原理并掌握自定义技巧。 12.了解Android应用程序的屏幕适配、国际化方式及APP上架流程和盈利方式。 (二)职业能力目标
项目总结 时间过的好快,为期三个月的实训生活即将结束了,每一次的实训我们都受益匪浅,我 们学到的不仅仅是课内还有课外,实训让我们的课内知识得到了巩固,专业知识、编程水平 都有很大的提高,我们非常感谢这次实训。 刚开始二周的高强度的课程安排让我们受益匪浅;接下来的项目实训又让我们可以巩固 了课程。这让我觉得实习生活充实而有意义。 乐淘购物项目和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)
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.sodocs.net/doc/811057081.html,ng.RuntimeException: Unable to instantiate activity ComponentInfo{com.test/com.test.CanvasActivitys}: https://www.sodocs.net/doc/811057081.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方法来设置提示框文本