武汉工程大学计算机科学与工程学院 毕业实习笔记
为了手机信息的隐私及安全,安卓平台要求程序在AndroidManifest.xml中申明所需权
限,或是在进行权限操作之前,显式通过醒目对话框申请相应权限,这样,手机用户可以清楚程序进行了哪些操作。比如声音的控制、屏幕亮度的控制、sd卡文件的存取、数据库的创建及更新、通讯录短信电话的监听等。这对于手机是一种安全保证。Sd卡文件的存取只要申明了读写权限,我们就可以进行相应地读取。菜单的设计,我们添加MenuItem,并编辑内容及相应操作,便可以进行操作。同时,我们也可以通过布局文件进行菜单的设计。我们了解了Toast公用类,只要传入信息、上下文并调用函数,就可以再屏幕下方显示提示讯息,这是个非常有用的功能。
最终综合了这个星期所学到的所有新知识,我们粗略地了解了安卓平台的一些基础用
法,这对以后自己动手的时候,绝对是有着很大的帮助。
2013年3月18日 星期一 晴
时间已经来到了生产实习的最后一周了,今天老师给我们尽量多得休息时间,让我们
提提自己做小程序的过程中遇到的困难,应该是让我们好好总结一下前两周的学习成果吧。
回想过去两周,复习了Java的基础知识,然后在这个基础上,重温数据库,熟悉安
卓平台的五大组件,了解布局文件的设计,了解了监听器,了解了后台服务,了解菜单、SD卡的存取,了解权限、线程。这些知识理论性都很强,理解起来有点困难,只有把它们结合实际的项目,自己动手亲自实践,才能更好的掌握这些技术。无论怎么样,如果没有日复一日的长久练习,是不会学到真正的技能的。
2013年3月19日 星期二 阴
今天老师带领我们熟悉网络编程方面,目前计算机的发展,完全离不开因特网,所以
让我们的手机联网获取信息是必不可少的功能,更何况安卓是3G手机的主流平台之一。
我们在java学习的过程中就了解过网络编程,所以在安卓上时并没有感觉到太多的困难。首先,我们生成HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(url);
HttpResponse response = client.execute(get); HttpEntity entity = response.getEntity();
获取到网络传输的信息,然后显示在手机上。为了便于我们看到效果,老师让我们在
- vi -
武汉工程大学计算机科学与工程学院 毕业实习笔记
网上找一张图片的URL,然后将这个URL贴到代码作为字符串,生成URL,作为参数传入,然后使用输出流显示到图片控件上,这样在手机屏幕中央我们就看到了网上的图片。
接下来老师让我们自己练习,于是我们开始综合自己所学,在网上找到MP3文件的URL,然后得到输出流之后,将它输出到SD卡本地文件中,得到了MP3文件,虽然没有学会自己播放,也算了解了很多,这些都是学校学不到的。真是收获的一天。
不过听老师说我们的实习最后要做一个音乐播放器,很兴奋。
2013年3月20日 星期三 阴
今天是实习的倒数第三天,老师开始带领我们做音乐播放器。
首先,老师告诉我们功能需求,要可以调整音量大小,可以调整播放的进度,要加载
音乐文件到音乐列表,要上一曲、下一曲、播放暂停、停止。然后我们进行相应地分析,音量大小和进度控制我们选择使用两个控制条,然后四个按钮做上下一曲,播放暂停、停止,其中播放暂停使用一个按钮,因为我们一个时候只有一首歌曲在播放,所以跟去当时状态决定此时应该显示的是哪个按钮。然后我们还需要扫描特定文件夹,找到所以可以播放的歌曲的文件名,将它们加载到列表中,并存储它们的完整路径以供播放。
然后裴老师带领我们查资料,看哪些个类是用于播放音乐文件的,并查阅它们的用法。
最后我们找到了MeidiaPlayer类。然后老师让我们设计布局文件,最后老师给了我们一种布局,供我们参考。接下来就要设计的代码编写工作了,今天的三个小时也过去了,老师让我们课下自己去思考应该怎么写代码,并让我们尽量多地写。
2013年3月21日 星期四 雨
转眼之间来到了实习的倒数第二天,我们的播放器项目也进入了一个新的阶段。继昨
天给我们讲解之后,裴老师今天将带领我们实际编写代码。
首先,老师带领我们写文件过滤,实现java.io.fileFilter接口,就可以轻易地实现文件
过滤了。然后activity类中,我们要有字段MediaPlayer,还要有相关字段为列表储存信息,然后是四个按钮盒两个控制条,然后是标记信息,标记播放状态,标记当前播放曲目,记载音量大小,记载歌曲时间长度等。
首先我们编写播放列表加载的模块,我们写过很多次列表,所以难不倒我们。然后是
四个按钮的监听,第一个当然是播放,将MediaPlayer重置然后传入音乐文件路径并开始就行,将MediaPlayer停止即可以停止播放,当然同时要修改同房状态。然后是上下一曲,
- vii -
武汉工程大学计算机科学与工程学院 毕业实习笔记
只要所点按钮可以作用,即上或下一曲还有歌曲,就可以修改当前播放曲目字段,并传入路径并开始播放即可。然后是音量控制,获取系统音量,获取要调整的目标音量,将其修改即可,然后是进度条,每次播放的时候设置进度条长度是歌曲长度,然后获取目标位置,在MediaPlayer中传入变量即可。最后是列表单项的单击,将被点击项目的路径传入MediaPlayer播放即可。
今天老师大部分都是让我们先动手,不会的再教我们,最后留了一点小问题留待明天
解决,明天可是最后一天,想想还真有点不舍。
2013年3月22日 星期五 雨
今天是我们为期三个星期的生产实习的最后一天,过了今天,我们就要开始准备实习
答辩,然后就要开始毕业设计部分了,我们安卓的学习将暂时告一段落。
裴老师先带着我们把昨天最后遗留的一点点问题解决了,然后又给我们总结了三周来
我们的学习过程和学习成果,他再一次提到了他给我们介绍的那些技术,希望我们能好好掌握这些技术,尽管有些可能真的很难理解,但至少有点印象,不会的自己下去好好充电,毕竟希望我们对自己的未来负责。
到了最后的尾声,大家在一片掌声中送别了裴老师,感谢他三个星期以来的谆谆教导,
对我来说,这三个星期应该是比较难忘的,不仅学到了很多平时学不到的知识,同时那些经历对自己以后的成长也是一笔宝贵的财富。感谢那些可爱的同学,感谢敬爱的老师,谢谢。
- viii -