当前位置:文档之家› 基于Android平台的手机应用软件设计与实现毕业论文设计

基于Android平台的手机应用软件设计与实现毕业论文设计

基于Android平台的手机应用软件设计与实现毕业论文设计
基于Android平台的手机应用软件设计与实现毕业论文设计

(此文档为word格式,下载后您可任意编辑修改!)

安阳工学院

计算机科学与工程学院

JAVA程序设计课程综合项目报告

项目题目:基于Android平台的手机应用软件设计与实现

专业班级:计算机科学与技术(信息技术)11-1

学生姓名:吕鹏

学生学号:201103010042

指导教师姓名:许研

2013年12月

摘要

随着IT技术的发展,移动开发已被广泛的应用于社会的各个领域,成为推动社会发展的技术动力。而在移动开发中,Android开发近些年来突飞猛进的发展,在智能手机领域中的市场份额以及超过80%。同样,基于安卓平台的手机应用开发也达到前所未有的高度,各种安卓手机应用软件竞相出现。本次的JAVA 课程设计将基于安卓的平台,因为安卓开发主要基于JAVA语言和XML语言。本次所做的手机应用软件,可实现系统的登录、计算器、打电话、发短信、上网等简单功能实现。在此系统的实现过程中不仅提高了JAVA语言编程,而且加入了Android的成分,提高了软件设计的兴趣性。

关键词:手机应用软件开发,Java程序设计语言,Android开发。

目录

摘要 (2)

第1章系统目标 (4)

第2章系统功能介绍 (4)

2.1系统功能总框图 (5)

2.2 模块功能介绍 (5)

2.2.1 登录模块功能介绍 (5)

2.2.2 等待模块功能介绍 (6)

2.2.3系统主界面模块功能介绍 (7)

2.2.4短信和拨号模块功能介绍 (7)

2.2.5计算器模块功能介绍 (8)

2.2.6网上冲浪模块功能介绍 (9)

第三章系统功能实现 (10)

3.1 系统登录模块设计 (10)

3.1.1 登录框布局设计 (10)

3.1.2 登录对话框设计 (12)

3.2 等待模块设计 (14)

3.3 系统主界面模块设计 (15)

3.3.1 主界面XML布局设计 (15)

3.3.2 主界面背景图片设计 (17)

3.3.3 主界面功能实现设计 (17)

3.4 短信和拨号模块设计 (19)

3.4.1短信功能实现设计 (19)

3.4.2 拨号功能实现设计 (21)

3.5 计算器模块设计 (21)

3.5.1 计算器界面设计 (21)

3.5.2 计算器功能实现设计 (21)

3.6 网上冲浪模块设计 (23)

3.6.1 网上冲浪模块XML布局设计 (23)

3.6.2 网上冲浪功能设计 (24)

第四章系统设计总结 (27)

参考文献 (28)

第1章系统目标

实现简单的手机界面操作,包括密码登陆,多个Activity的界面切换和调用,包括等待界面、主界面、发短信界面、拨号界面、计算器界面、音乐播放器、视频播放器、网上冲浪等界面。实现手机界面的一般操作。在此过程中,会熟练掌握Action事件,按钮事件、事件驱动程序、窗口设计。在布局方面,将采用xml语言和java语言混合布局。现将登录界面截图如下:

在登录界面输入正确密码后,进入等待界面十秒等待后,进入系统主界面,点击ImageButton按钮进入各自的功能实现界面,实现各自的具体操作。

第2章系统功能介绍

2.1系统功能总框图

图书馆管理系统功能总框图,如图2-1所示。

图2-1 系统功能框架图

2.2 模块功能介绍

2.2.1 登录模块功能介绍

此模块主要采用java语言实现,使用AlertDialog.builder类实现登录对话框。利用此类的方法进行实现登录对话框的标题以及内容。输入登录名和密码后即可检测,密码或者登录名输入错误后就后退出程序,然后重新登录。输入错误后,可以单击“重置”按钮就行清空密码或者登录名,然后重新输入密

码和用户名。由于知识有限,本此登录设计采用固定密码和用户名,是本次课程设计的一个不小的遗憾!

图2-2 系统登录界面

2.2.2 等待模块功能介绍

此模块的设计目的是为了使用Splash Activity窗口设计而特意添加的功能,主要内容包括个人信息介绍。此界面采用RelativeLayout和TableLayout 布局实现手机窗口。在此界面使用Runnable类实现了10秒钟的等待时间,以便于进行信息的阅读,十秒过后,界面自动切换到系统主界面,当前界面关闭。

图2-3 Splash界面

2.2.3系统主界面模块功能介绍

系统主界面采用XML语言进行手机界面的布局,通过添加多个ImageButton进行事件驱动设计。包括发短信、打电话、上网、计算器、音乐播放器(未实现)和视频播放器(未

实现)。通过单击相应的按钮,可以跳转到想用的功能界面。

图2-4 系统主界面

2.2.4短信和拨号模块功能介绍

短息和拨号两个界面的界面设计采用XML语言实现,而具体功能采用JAVA语言实现。在发短息界面,输入手机号码和短息内容,即可直接发信要发送的对象。在拨号界面,输入手机号即可进行直接拨号,另外,也可单击“间接拨号按钮”调用手机系统拨号程序进行拨号。此两项功能实现较为简单,没有使用价值,只有学习参考价值。

图2-4 短信和拨号界面

2.2.5计算器模块功能介绍

计算器模块是本次课程设计中最复杂的部分,计算器模块同样采用上述布局方法和实现方法,可实现普通数据运算和复杂的科学运算以及三角函数的运算。在计算器中添加了MC智能提示按钮,可对计算器按键进行智能提示,用户可以知道复杂的按钮的具体操作,提高计算器的可行性和实用性。

图2-5计算器界面

2.2.6网上冲浪模块功能介绍

网上冲浪界面是本次课程设计最有使用的一个方面,通过ImageButton,添加事件处理程序,可以快速访问互联网。主要连接一些自己比较常用的网站,比如安工贴吧、安阳工学院教务管理系统、计算机科学与信息工程学院首页、百度首页、新浪微博和我的QQ空间等。通过这些可以快速进入我经常访问的网页。但此设计没有做成自己的浏览器,而是调用系统浏览器,是这次程序设计

的不足之处。

图2-5网上冲浪界面

第三章系统功能实现

3.1 系统登录模块设计

软件应用系统应该有自己的系统登录管理,这也是出于系统安全方面的考虑,设置用户名和密码登录,就必须设置一个系统登录功能模块。系统登录采用的是固定密码和用户名登录,是本课程设计一个遗憾,缺乏使用价值。

3.1.1 登录框布局设计

使用XML程序设计创建login.activity.xml文件,使用相对布局,加入EditText控件和TextView控件,实现登录框和密码框的设计。其代码如下:

android:id="@+idAccountEditText"

android:layout_width="wrap_content"

android:layout_.activity布局,即将此布局加载到对话框的的里面。在登录对话中可以显示布局里面的内容,运行结果如图2-2 所示,具体实现代码如下:

protected void onCreate(Bundle savedInstanceState) { TODO Auto-generated method stub

super.onCreate(savedInstanceState);

AlertDialog.Builderbuilder=new

AlertDialog.Builder(MAIN_ACTIVITY.this);

View view=LayoutInflater.from(MAIN_ACTIVITY.this).inflate (https://www.doczj.com/doc/686422076.html,yout.login_dialog, null);

Final EditText Username=(EditText)view.findViewById (R.id.AccountEditText);

final EditText Password=(EditText)view.findViewById(

R.id.PasswordeditText);

builder.setView(view);

builder.setTitle("登錄對話框");

builder.setPositiveButton("确定", new DialogInterface. OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

TODO Auto-generated method stub

String

username=Username.getText().toString().trim();

String

password=Password.getText().toString().trim();

String currentuname="吕鹏";

String currentpassword="201103010042";

try {

if("".equals(username)||"".equals(password)){

Toast.makeText(MAIN_ACTIVITY.this, "用户名或者密码不能为空", 1).show();

MAIN_ACTIVITY.this.finish();

}

if(!currentuname.equals(username)||!currentpassword.eq uals(password)){

Toast.makeText(MAIN_ACTIVITY.this, "用户名或者密码错误", 1).show();

MAIN_ACTIVITY.this.finish();

}

if

(currentuname.equals(username)&¤tpassword.equals(pa ssword)) {

Intent intent=new Intent

(MAIN_ACTIVITY.this, Splash_Activity.class);

Toast.makeText(MAIN_ACTIVITY.this, "登陆成功!", 1).show();

startActivity(intent);

MAIN_ACTIVITY.this.finish();

}

} catch (Exception e) {

TODO:

Toast.makeText(MAIN_ACTIVITY.this, "出现异常", 1).show();

}

}

});

builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

TODO Auto-generated method stub

MAIN_ACTIVITY.this.finish();

}

});

builder.show();

}

3.2 等待模块设计

此模块的设计目的为的是练习使用Splash Activity,用于显示个人信息。在XML布局方面,没有采用才布局,主要采用的是JAVA语言布局。在此模块实现了规定时间的延时操作,时间到后,即可通过Intent实现跳转下一个界面。其实现代码如下:

public class Splash_Activity extends Activity{ private final int SPLASH_DISPLAY_LENGHT=1000;延时时间

@Override

protected void onCreate(Bundle savedInstanceState) { TODO Auto-generated method stub

super.onCreate(savedInstanceState);

TableLayout tableLayout=new TableLayout(this);使用TableLayout布局

setContentView(tableLayout);加载此布局

TableRow tableRow1=new TableRow(this);

TableRow tableRow2=new TableRow(this);

TextView name=new TextView(this);

name.setText("\n JAVA课程设计\n\n"+"姓名:吕鹏\n\n"+"学号:201103010042\n"+ "\n班级:11计科信息");设置显示信息

name.setTextColor(Color.BLACK);

name.setTextSize(18);

TextView textView1=new TextView(this);

textView1.setText(" 10秒钟等待.......");

textView1.setTextColor(Color.RED);

textView1.setTextSize(20);

ImageView imageView=new ImageView(this);

imageView.setImageResource(R.drawable.me);加载图片

tableRow1.addView(imageView);

tableRow1.addView(name);

tableRow2.addView(textView1);

tableLayout.addView(tableRow1);

tableLayout.addView(tableRow2);

new Handler().postDelayed(new Runnable() {

@Override

public void run() {

TODO Auto-generated method stub

Intent mianIntent=new Intent

(Splash_Activity.this, MainActivity.class);

实现窗口之间的调用

Splash_Activity.this.startActivity(mianIntent);开启下一个Activity

Splash_Activity.this.finish();关闭当前的Activity

}

}, SPLASH_DISPLAY_LENGHT);

}

3.3 系统主界面模块设计

3.3.1 主界面XML布局设计

主界面的XML布局非常的简单,只需添加几个ImageButton即可。在工程目录下的layout 文件夹下,新建activity_main.xml文件,在可视化的布局界面,添加5个ImageButton按钮,并加载与功能相关的图片。相关代码如下:activity_main.xml

android:layout_width="wrap_content"

android:layout_

android:id="@+idmessage"

android:layout_width="wrap_content"

android:layout_

android:id="@+idnet"

android:layout_width="wrap_content"

android:layout_

android:id="@+idcalculator"

android:layout_width="wrap_content"

android:layout_

android:id="@+idmusic"

android:layout_width="wrap_content"

android:layout__activity">

name="android:windowBackground">@drawablemianactivity