android实习报告.docx

上传人:b****8 文档编号:27665478 上传时间:2023-07-03 格式:DOCX 页数:35 大小:49.31KB
下载 相关 举报
android实习报告.docx_第1页
第1页 / 共35页
android实习报告.docx_第2页
第2页 / 共35页
android实习报告.docx_第3页
第3页 / 共35页
android实习报告.docx_第4页
第4页 / 共35页
android实习报告.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

android实习报告.docx

《android实习报告.docx》由会员分享,可在线阅读,更多相关《android实习报告.docx(35页珍藏版)》请在冰豆网上搜索。

android实习报告.docx

android实习报告

android实习报告

实习报告

实习目的:

生产实习是计算机科学与技术专业重要的实践性教学活动,其目的是使学生们进一步加深对所学知识的理解,理论联系实际,巩固所学有关计算机基础理论知识和基本技能,学习有关计算机最新技术方面的应用,增强学生对计算机在社会生活,社会生产中应用的感性认识,深入了解计算机在各个领域中的应用状况,学生在实习的同时,进行一定的社会实践与调查活动,对于提高学生的综合能力和全面素质具有重要意义。

实习内容:

Android主要有四大组件,分别为:

Activity活动、Service服务、Broadcastreceivers广播接受者、ContentProvider内容提供者。

还有上激活组件Intent。

1.Activity

Activity就是一个用户可以直接接触并看到的窗口,当新建一个AndroidProject后可以

看到在工程文件下的src中有一个已建好的java类FirstActivity,系统也会自动为他配备一个布局文件main.xml,并在AndroidManifest中对此Activity进行注册。

用户想要自己创建一个Activity,首先创建一个java类继承自Activity,可以为他配备一个布局文件用来显示Activity创建后的布局。

最后在主配置文件manifest.xml中对创建的Activity进行注册,这一步是必不可少的,没有注册Activity无法运行。

在manifest.xml中会有许多的Activity,但系统一次只能运行一个Activity,因此必须修选定一个最先运行的Activity。

在注册Activity是加入

可指定当前的Activity为主Activity最先被执行。

其他Activity可借助激活组件Intent

进行启动。

通过Intent还可实现来了两个Activity之间传递数据

Activity具有生命周期,他有三种状态:

运行状态、暂停信息和停止状态。

运行态是在屏幕台前位于当前任务堆栈的顶部,即获取焦点的Activity。

暂停信息是指失去了焦点但对于用户仍可见,此状态下当程序处于低内存是仍有可能被消除。

停止状态是指完全被另一个Activity覆盖,但他仍然保留所有的信息与状态。

2.Android图形设计UI

AndroidUI控件一般写在布局文件中,此次实习所学控件主要有:

TextView,EditText

Button、AlertDialog、RadioButton、CheckBox、Spinner和TableRow等。

将这些控件及相应的属性写在layout下的布局文件中就可在与其绑定的Activity中显示相应的对话框,文本框,按钮等。

Android的界面布局是为了使控件能够更友好的呈现在用户的眼中。

主要有:

绝对布局Absolutelayout、线形布局LinearLayout、框架布局FramLayout、相对布局RelativeLayout和

表格布局TableLayout。

其中框架布局适合于单张图片的显示。

3.Service服务

Service事实运行在后台的一段代码。

他与Activity一样有相似的生命周期,但不同的是他不能自己运行,必须通过某一个Activity或者其他的Context对象来调用。

Service可通过调用Context.StartService()启动,还可以通过ServiceConnection来访问Service。

可以将其他的组件绑定到Service上。

4.数据存储

Activity提供了openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在J2SE环境中保存数据到文件中是一样的。

openFileOutput()方法的第一参数用于指定文件名称,不能包含路径分隔符“/”,如果文件不存在,Android会自动创建它。

创建的文件保存在/data/data//files目录,如:

/data/data/cn.itcast.action/files/itcast.txt,通过点击Eclipse菜单“Window”-“ShowView”-“Other”,在对话窗口中展开android文件夹,选择下面的FileExplorer视图,然后在FileExplorer视图中展开/data/data//files目录就可以看到该文件。

openFileOutput()方法的第二参数用于指定操作模式,有四种模式android有一套自己的安全模型,当应用程序(.apk)在安装时系统就会分配给他一个userid,当该应用要去访问其他资源比如文件的时候,就需要userid匹配。

默认情况下,任何应用创建的文件,sharedpreferences,数据库都应该是私有的(位于/data/data//files),其他程序无法访问。

除非在创建时指定了Context.MODE_WORLD_xxxxE或者Context.MODE_WORLD_xxxxLE,只有这样其他程序才能正确访问。

实习流程:

2月18——2月27日,老师对于xxxx开发进行了详细的讲解,其内容包括:

xxxx的背景介绍,发展过程,自身的优势与不足.Android的控件、布局、Activity、Service等一系列基础知识,对整个Android的开发有了大致的了解

2月28日——3月2日:

学生自己开发xxxx3GABS项目,老师答疑及验收

实习心得:

时间过的飞快,半个月的实习就要结束了,在这次实习中我们不仅学习了相关的

专业知识而且让我对Android系统又有了一个更加深入的了解,它也是我们计算机专业的一个新的方向并且发展很迅速,为了今后的发展我们还需不断努力学习!

我国的信息产业还很落后,随着社会的发展和国家的支持,手机上网是社会发展的趋势,到时候手机上网将无处不在!

之前我对Android系统的了解之停留在应用的层次上,对于更深层次的了解是很少的,通过这次实习,让我对Android系统有了一个更深层次的了解,同时它页使我意识到无论朝哪个方向发展,主要还是要扎实深刻地学习,同时也得不断努力探索!

IT业发展速度一直都是相当惊人的,不想被社会淘汰,我们就得必须不断地学习,现在的社会不再是一劳永逸,其他行业也是如此,我们必须不断地拿知识来武装自己,不然被淘汰那是肯定的!

现在就业难原因其实在于竞争的家具,为了在竞争中得到成功,我们必须时时刻刻学习,还学到了很多做人做事的道理,不仅懂得了要想在计算机这一行立足必须具备扎实的技术理论知识,还必须学会与人沟通,合作的能力,同时更懂得了尝试的重要性,很多事情不是听说是困难的它就是困难的,只有亲自去做亲自去体会才知道,其实它并没有那么困难,这就是实践的重要性!

无论做什么事情都必须要坚持,只有坚持下去,才会成功!

事在人为,就怕不做!

我们不能怕失败,关键是要从失败中总结经验,带着勇气,带着自信,坚持不懈,踏踏实实。

这一次的实习是短暂的,但我收获良多。

回顾以前所走过的路,太多的无奈和迷茫,这次实习就像是我人生道路上的航标,为我指明了前景的方向,是我对自己的前途充满了信心,我不仅知道了在人生的岔道口更适合朝哪个方向前进!

更知道了在今后的道路上怎么去武装自己!

实习结果:

实习时间:

学院:

专业名称:

学号:

姓名:

指导老师:

实习地点:

Xxxxxx大学

专业实习报告

——201X.XX.XX

xxxxXXXX学院计算机通信

信息技术有限公司201X.XX.XxxxxXXXXXXXXXXXxxxxX一、实训地点

xxxxX信息技术有限公司是一家隶属于xxxxX集团主要从事软件开发、技术咨询与服务、IT教育投资、大学生实习实训等业务的民营科技型企业。

二、实训目的

实习是把理论与实际结合通过对理论知识的理解领悟从而运用到生活实际巩固所学的知识提高对实际生活的认识积累经验。

同时生产实习也是大学生以学生身份到工作者身份的一个重要过度阶段。

在此期间学生能够初次体会到实际生产中的种种技能与经验。

完成一项项项目能体现出独立思考能力。

Android生产实习对目前应用现状进行了分析与比较进而研究分析了Android平台的系统架构和组件模型在此基础上基于Android平台设计和开发实现对android编程的理解与应用特别是在对于控件的应用产生很深的理解。

Android平台是目前最普遍的手机应用平台android实习可以让我们与时代最新最广泛的软件开发联系起来锻炼我们的学习能力并且让我们可以更加人性化清晰的为用户考虑

目的:

1、培养学生运用所学课程Java语言程序设计的理论知识和技能,分析解决计算机实际应用中的问题的能力。

培养学生在Java语言程序设计的基础上,开发Android应用程序的思想和方法。

培养学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。

通过课程设计,要求学生在指导教师的指导下,独立完成课程设计的全部内容包括:

1、确定开发的程序,收集和调查有关技术资料。

2、按软件工程步骤进行程序设计。

3、对完成的程序进行测试和完善。

4、完成课程设计报告。

三、实训内容

学习实训的内容主要包括如下:

开发环境:

了解了android的起源与发展,学习安装Eclipse插件(ADT)学习AndroidSDK包含了开发Android应用所依赖的jar文件、运行环境及相关工具

Android项目结构:

src/java原代码存放目录gen/自动生成目录gen目录中存放所有由Android开发工具自动生成的文件。

目录中最重要的就是R.java文件。

这个文件由Android开发工具自动产生的。

res/资源(Resource)目录在这个目录中我们可以存放应用使用到的各种资源,如xml界面文件,图片或数据。

aets资源目录Android除了提供/res目录存放资源文件外,在/aets目录也可以存放资源文件。

AndroidManifest.xml项目清单文件。

基础开发

一、1.Activity:

是Android系统中的四大组件之一。

2.Activity生命周期:

voidonCreate(BundlesavedInstanceState)voidonStart()voidonRestart()voidonResume()voidonPause()voidonStop()voidonDestroy()这七个方法定义了Activity的完整生命周期

二、Intent:

Intent对他要完成操作的一种抽象描述,我们可以用intent来启动一个activity,发起一个broadcast和启动或绑定一个service。

Intent使应用程序代码在运行时动态绑定成为可能,这也降低了不同代码之间的耦合性。

Intent最常使用的方法是用来启动一个activity。

Intent封装了他要执行动作的属性,这些属性最常见的是action和dataIntent主要有以下四个重要属性:

dAction:

Action属性的值为一个字符串,它代表了系统中已经定义了一系列常用的动作。

通过setAction()方法或在清单文件AndroidManifest.xml中设置。

默认为:

xxxx。

Data:

Data通常是URI格式定义的操作数据。

例如:

tel:

//。

通过setData()方法设置。

Category:

Category属性用于指定当前动作(Action)被执行的环境。

通过addCategory()方法或在清单文件AndroidManifest.xml中设置。

默认为:

xxxxY_xxxx。

Extras:

Extras属性主要用于传递目标组件所需要的额外的数据。

通过putExtras()方法设置。

三、Service四大主键职业,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序。

要完成比较耗时的任务;

不需要用户界面;

四、BroadcastRecever生命周期

1.在广播到达接收者时调用onRecever();方法

2.注册广播的几种方式包括:

代码注册;项目清单注册;五、Handler1.Handler、Meage、MeageQueue和Looper之间的关系的关系,Handler的作用:

Handler(一个线程可以有多个Handler但是只能有一个Looper),关系:

向消息对列(MeageQueue封装在Looper中)发送消息,Handler在创建时就会关联以个Looper默认关联当前Looper.作用:

发送消息(Handler在主线程启动一个子线程,在子线程调用SendMaager(),发送到主线程的HandlerMeage()方法);处理消息(调用HandlerMeage()方法处理)。

数据存储

一、Sharepreference:

保存应用系统的配置信息等的键值存储机制。

(使用键值机制:

BundleContentValuesMapJSONObjecdt)二、存储方式1)是一种键值存储方式,可以持久化存储变量的值(Sharepreference存储的值都是基本类型的数据)存储的数据是以xml文件的形式存在,存储在/data/data/packagename/shared_prefs目录中文件存储

I/O存储,主要是用于大文件的数据的存取,比如视频、图片等,该中存储方式在使用的过程当中更新比较困难。

文件存储的使用:

Activity提供了openFileOutput(name,mode)方法和openFileInput()方法,用于读写文件数据.第一个参数name中不能包含路径分隔符“/”三、Sqlite

自定义一个数据库的操作类,该类要extendsSQLiteOpenHelper类

publicclaMyHelperextendsSQLiteOpenHelper{//类没有实例化,是不能用作父类构造器的参数,必须声明为静态

privatestaticfinalStringname=\"china\";//数据库名称privatestaticfinalintversion=1;//数据库版本publicMyHelper(Contextcontext){//第三个参数CursorFactory指定在执行查询时获得一个游标实例的工厂类,设置为null,代表使用系统默认的工厂类

super(context,name,null,version);}publicvoidonCreate(SQLiteDatabasedb){

//该方法是在第一次实例化数据库操作对象的时候被调用

//可以在其中做一些初始化的工作,比如创建数据库表等

}publicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion){

//在数据库的版本发生改变的时候会被调用

}}

四、ContentProvider实现不同应用之间数据的访问和共享:

1)通过实现一个ContentProvider的抽象借口,将本应用的数据完全暴露出去,其中数据是以表的形式暴露的,暴露数据的时候要提供公共的URI。

2)其它应用通过android提供的ContentResolver接口访问ContentProvider暴露的数据。

五、网络存储一、通过网络提供的存储空间来上传或者是下载那些存储在网络空间的数据信息。

网络编程:

分为两种1)基于Socket的网络编程:

该网络编程使用的协议主要是TCP和UDP协议

面试题:

TCP和UDP区别:

TCP:

面向连接可靠延时长效率低UDP:

面向无连接不可靠延时短效率高Socket+ServerSocket+TCP(套接字)UDP+DatagrarmSocket+DatagramPackage(数据报)2)基于Http的网络编程:

该网络编程使用的协议是面向Http协议;

该网络编程是以xml/json格式的数据为载体,来进行相互通信数据;

Android基于http协议的网络编程,使用的标准接口有两个:

HttpURLConnection以及apatch的接口HttpClientHttp协议通信分为两种方式:

get请求方式和post请求方式六、Xml格式数据解析Json格式数据解析:

Dom解析:

dom解析一般是把xml文档转换成一棵文档节点树,存储在内存中

优点:

xml文档树在内存中完整存储,可以直接对该文档树的数据和结构进行修改;

可以通过解析器去访问节点树上的任何一个节点;

Dom解析的API使用简单方便。

缺点:

当xml文档比较大的时候,该解析方式消耗内存资源Sax解析:

优点:

对内存的要求较低,方便解析xml的部分;

缺点:

当xml文档结构复杂的采用SAX解析,编码过程比较复杂Pull解析:

sdk提供的内置解析方式,解析过程类似于sax解析,节省内存资源,而且比sax解析更加简单方便。

JSON格式数据:

(1)key-value键值对象(无序的)

(2)数组(有序的)

用到的内容包含:

4个类一个异常

JSON格式数据的解析可以使用Google提供的gson解析工具问题:

xml格式数据解析和JSON格式数据解析的比较

四、实训心得:

1通过几个月的android实习,基本掌握了Android应用程序开发的一般流程。

对常用控件基本掌握其用法,对其事件的监听方法也基本掌握。

学习Android不仅是对前沿开发技术的了解,也是对编程知识的一次提升。

2通过学习Android的控件、布局、Activity、Service等一系列基础知识,对整个Android的开发有了大致的了解。

例如:

要的布局(或者控件),在学习界面中,我发现Android为我们提供了很好的类似反射机制,通过Layout文件夹下的配置文件,可以快速的形成界面,在配置文件可以设置属性或者样式都是很快捷方便。

对比较特殊的界面也可以通过处理嵌入到指定的界面,同样你可以通过java代码直接创建View进行添加,不过这种方式比较复杂。

对一些点击、选中、按键等处理的事件,界面之间的

跳转Intent管理,通过Bundle对数据在界面之间进行传输。

4在手机交互式通信服务中,学习了Android手机之间进行短信发送、广播、对广播的监听、服务等,在Service类中没有context,可以通过Handler来每秒反复运行,自动送出系统广播信息,同时在这里我们也知道可以设计一个常用的变量类,设计一个当前的CurrentActivity这个变量进行控制,进行处理。

在Android编程过程中巩固熟悉了Java的编程。

由于Android应用程序的开发离不开Java的支持,所以基础的Java知识是必须的。

Android系统是基于Linux的手机操作系统平台,要深入系统的学习Android,不仅仅是有Java和Android应用开发,必须要具备Linux,C/C++高级编程才能深入的涉及AndroidFramework和Android内核开发。

成为Android开发的高素质人才。

所以,在后续对Android的学习中可能会看一些较底层的书籍。

本科生毕业实习报告

标题:

关于在“******公司”从事Andorid开发程序员实习的报告

实习单位:

********有限公司实习时间:

2021.3.2实习岗位:

Android开发程序员学生姓名:

学号:

院系:

专业:

年月日

题目:

关于在“*****有限公司”从事Andorid开发程序员实习的报告

一、实习单位及岗位简介

(一)实习单位的简介*******有限公司是一家刚刚成立的私营公司,在职员工大部分为80后软件精英,主营软件开发(Java方向),电子产品批发零售,信息系统集成服务,公司行业主要是互联网、电子商务、计算机软件、计算机硬件等。

公司地址在*********,现共有员工大概50人。

主要有Web开发部、Jsp开发部、Android开发部等。

经过不断地学习和实战,每个部门都有其实力强硬的带头人,整体上是一个积极向上,团结奋进的创业型企业。

企业文化:

人才是企业最大的财富,优秀的产品,良好的服务是企业价值的体现;

爱祖国、爱人民、爱事业和爱生活是企业凝聚力的源泉;

尊重知识、集体奋斗、艰苦创业是企业发展的要求;

责任意识、创新精神、敬业态度和精诚合作是企业文化的精髓;

实事求是是企业的行为准则。

(二)实习岗位的简介

我所在的实习岗位是一个所属Android部的程序开发岗位,主要工作是配合组长,做一些力所能及的东西。

同时组长会针对性的给我一些网站或者资料,让我学习,这些资料主要是和他现在做的项目相关的技术实现。

我自己看一边做个基本的了解,同时对这些技术和框架有个大体的认识。

然后他会再结合他的项目,有针对性的给我讲解这些技术的应用,是怎样在他的项目里实现的。

然后会给我分配一个小任务,让我拿来练手的同时,又一遍温习和巩固先前学到的技术。

我的实习工作从一个APP的界面开始,慢慢熟悉这个APP的框架结构,然后把组长写好的核心算法放进框架中,实现其功能。

总的来说,我在这个团队中主要担任辅助的工作,将其他人写好的模块放进项目框架中,从中不断学习Amdroid开发的技巧和别人的代码风格。

二、实习内容及过程

时间一晃而过,转眼间到公司已经两个多月了。

这是我人生中弥足珍贵的一段经历。

在这段时间里各级领导在工作上给予了我极大的帮助,在生活上给予了我极大的关心,让我充分感受到了领导们“海纳百川”的胸襟,感受到了大发人“不经历风雨,怎能见彩虹”的豪气。

在对公司各级领导肃然起敬的同时,也为我有机会成为公司的一份子而自豪。

在段时间里,在领导和同事们的悉心关怀和指导下,通过自身的努力,各方面均取得了一定的进步。

来这个公司虽然才短短两个月,收获挺多的,由对项目的一窍不通到现在对它的流程以及相关的技术都有所了解,也让我深深体会到了沟通自学的重要性。

所以我们每一步都有要集中注意力,争取把每一步都做好。

刚开始我们做这个程序的时候,大家都比较盲目,只是负责人说了一下,我们就开始进行编了在这个过程之种我们吃了许多的苦,有时候凌晨三四点我们还在加班,可最后做出的作品是输入速度太慢,我们的主管于是带领我们到他们一

楼的微机室是去看他们以前编写的程序;

不看不知道,一看吓了我们一大跳,以前我们那有这样想过呀,只要能做出来,没有错误就行了,可是速度呢?

人家一个小时输入的东西,我们的程序可能需要一个早晨,看完之后主管对我们说:

这样的程序送你,你会用吗?

那个打击呀,辛苦了几天几夜,最终却是这样的一个结果。

可打击归打击,我们又得重新来做!

相对而言,我们这次要比以前有经验了,一次比一次成熟起来了,在经历了又一个一天一夜的奋战,我们终于又有新希望了,可是心情刚好,那么又传来了消息,说他们的数据又发生的变动,有了新的调整,这在以前我们也想过这个问题,也想好好的做,可是我们又一想工厂不是要实用吗?

这方面变化的可能性很小,于是为了方期间我将有变量写进了代码之中,这一变,无疑宣布我要失败了。

和我在一起的几个同事也是这种情况,所以我们这些没有开发过软件的充当软件高手的新手们又得重新面对新的问题了.失败,又一次被打败!

几天之后我们又做出了程序,很辛苦,此时我们才明白程序员的不易了,编程是一

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 调查报告

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1