无忧范文网小编为你整理了多篇《android实习报告(范文2篇)》范文,希望对您的工作学习有帮助,你还可以在无忧范文网网可以找到更多《android实习报告(范文2篇)》。
第一篇:Android实习总结报告
实习时间:学院:专业名称:学号:姓名:指导老师:实习地点:
Xxxxxx大学
专业实习报告
——201X.XX.XX
XXXXXXXXXXX学院 计算机通信
信息技术有限公司 201X.XX.X XXXXXXXXXX XXXX XXXX XXXXXXXX一、实训地点
XXXXXXXX信息技术有限公司是一家隶属于XXXXXXXX集团主要从事软件开发、技术咨询与服务、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生命周期:void onCreate(Bundle savedInstanceState) void onStart() void onRestart() void onResume() void onPause() void onStop() void onDestroy() 这七个方法定义了Activity的完整生命周期
二、Intent: Intent对他要完成操作的一种抽象描述,我们可以用intent来启动一个activity,发起一个broadcast和启动或绑定一个service。Intent使应用程序代码在运行时动态绑定成为可能,这也降低了不同代码之间的耦合性。Intent最常使用的方法是用来启动一个activity。Intent封装了他要执行动作的属性,这些属性最常见的是action和data Intent主要有以下四个重要属性:dAction:Action属性的值为一个字符串,它代表了系统中已经定义了一系列常用的动作。通过setAction()方法或在清单文件AndroidManifest.xml中设置。默认为:DEFAULT。
Data:Data通常是URI格式定义的操作数据。例如:tel:// 。通过setData()方法设置。
Category:Category属性用于指定当前动作(Action)被执行的环境。通过addCategory()方法或在清单文件AndroidManifest.xml中设置。默认为:CATEGORY_DEFAULT。
Extras:Extras属性主要用于传递目标组件所需要的额外的数据。通过putExtras()方法设置。
三、Service四大主键职业,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序。 要完成比较耗时的任务;不需要用户界面;
四、BroadcastRecever 生命周期
1.在广播到达接收者时调用onRecever();方法
2.注册广播的几种方式包括:代码注册;项目清单注册; 五、Handler 1.Handler、Meage、MeageQueue和Looper之间的关系的关系,Handler的作用: Handler(一个线程可以有多个Handler但是只能有一个Looper), 关系:向消息对列(MeageQueue封装在Looper中)发送消息,Handler在创建时就会关联以个Looper默认关联当前Looper.作用:发送消息(Handler在主线程启动一个子线程,在子线程调用SendMaager(),发送到主线程的HandlerMeage()方法);处理消息(调用HandlerMeage()方法处理)。
数据存储
一、Sharepreference:保存应用系统的配置信息等的键值存储机制。(使用键值机制:Bundle ContentValues Map JSONObjecdt) 二、存储方式 1)是一种键值存储方式,可以持久化存储变量的值(Sharepreference存储的值都是基本类型的数据) 存储的数据是以xml文件的形式存在,存储在/data/data/packagename/shared_prefs目录中文件存储
I/O存储,主要是用于大文件的数据的存取,比如视频、图片等,该中存储方式在使用的过程当中更新比较困难。
文件存储的使用:Activity提供了openFileOutput(name,mode)方法和openFileInput()方法,用于读写文件数据.第一个参数name中不能包含路径分隔符“/” 三、Sqlite
自定义一个数据库的操作类,该类要extends SQLiteOpenHelper类
public cla MyHelper extends SQLiteOpenHelper { //类没有实例化,是不能用作父类构造器的参数,必须声明为静态
private static final String name = \"china\"; //数据库名称 private static final int version = 1; //数据库版本 public MyHelper (Context context) { //第三个参数CursorFactory指定在执行查询时获得一个游标实例的工厂类,设置为null,代表使用系统默认的工厂类
super(context, name, null, version); } public void onCreate(SQLiteDatabase db) {
//该方法是在第一次实例化数据库操作对象的时候被调用
//可以在其中做一些初始化的工作,比如创建数据库表等
} public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
//在数据库的版本发生改变的时候会被调用
} }
四、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的接口HttpClient Http协议通信分为两种方式: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++高级编程才能深入的涉及Android Framework和Android内核开发。成为Android开发的高素质人才。所以,在后续对Android的学习中可能会看一些较底层的书籍。
第二篇:程序员实习总结
六个月的实习时间已经结束,我实习的单位是E科技有限公司,在这段时间里,我的专业技术得到了很大的进步。
刚开始工作的几周,公司给我们培训了ERP平台的使用,通过这次培训使我认识到ERP平台的优势,可以多大提高软件的开发效率。随后我就加入到了“ERP税源控管系统”项目的开发中,称为开发小组中的一员。在项目开发过程中一边是同事们的细心指导,一边是自己反复琢磨与理解,几个月下来大大提高了自己业务和技术两方面的技能,已经能够比较熟悉的掌握基本的工作方法和一些技巧,而且能过独立完成一些模块的开发,通过这个项目不仅学到了很多技术,也了解了整个项目的大概流程,从需求分析、数据库设计、详细设计、代码编写、测试、项目维护等方面,使自己不仅从一个代码编写人员的角度还从一个整体的角度来看整个项目开发,加深了软件开发概念的理解。
现场开发与维护使我不仅从一个开发人员的角度而且从客户的角度去思考问题。在项目的开发后期,也就是项目即将上线的阶段与其他几位同事被派往现场去开发与维护项目。
以前的开发都是根据需求分析来进行的,功能要求一般在分析里面都写的很清楚。但是在现场开发直接面对客户,客户提出的需求一开始只是一个大体的功能描述,如何将这个只是语言描述的功能转化为技术实现需要很强的抽象能力和对业务的深入理解,这个过程打打锻炼了自己的综合能力。在第一时间接触客户的需求,从客户的角度思考问题,只有更了解客户需求才能更合理的设计软件的结构、功能,了解客户,了解需求,转化到技术层面。这个过程得到的经验很难得。