(开题报告)基于Android的日程表管理系统设计与实现--

时间:2024.3.31

基于Android的日程表管理系统设计与实现

一.课题的意义

    Android是由Andy Rubin创立的一个手机操作系统,后来被Google公司收购。Google公司希望与各方共同建立一个标准化、开放式的移动电话软件平台,从而在移动产业内形成一个开放式的操作平台。

目前使用Android系统的手机的数量已经超越iPhone,Android系统已经成为全球使用量最大的手机系统。

相关数据显示:1.Android用户已经达9亿,不就会达到10亿;

              2.仅有10%的国家没有被Android覆盖

              3.人才需求仍然巨大。智能招聘网站上每天大约有2000多个Android人才招聘。

Android的原意为“机器人”,Google将Android的标志设计为绿色机器人,不但表达了字面意思,而且表达Android系统是一个符合环保概念、轻薄短小、功能强大的移动系统,意在使其成为第一个真正为手机打造的开放并且完整的系统。

随着智能移动设备和物联网的快速发展,对于智能手机的发展前景,人们更希望将大部分生活所需的直接用一部智能手机就可以搞定。比如:各种支付,手机开锁,手机当遥控器等等。

以往,我们都是用备忘录来记录我们的日程安排,在这个注重效率和便利的快节奏社会,这或多或少给我们生活带来了些不便。手机日程管理系统可以为人们日常生活提供方便,而且能让我们更充分的利用时间,规划我们的生活,让我们的生活有条不紊。我们知道,传统的备忘录大多数是用便签纸或者笔记本来记录,其带来了些不便,如易丢失、携带不便以及容易损坏等。 而手机,我们却往往是生活必备品,联系好友、上网冲浪以及视频娱乐等,我们都可 以用手机实现。因此,手机日程管理将代替传统备忘录。我们可以随时随地拿出手机 查看我们的日程安排,而且手机日常管理系统,还提供到点提醒功能,让我们能够准时完成我们的日程安排。手机日程管理系统就显得很有必要,如果有一个很好的手机日常管理软件,就可以大大方便人们的生活。

    This barrier to application development began to crumble in November of 20## when Google, under the Open Handset Alliance, released Android. The Open Handset Alliance is a group of hardware and software developers, including Google, NTT DoCoMo, Sprint Nextel, and HTC, whose goal is to create a more open cell phone environment. The first product to be released under the alliance is the mobile device operating system, Android. (For more information about the Open Handset Alliance, see www.openhandsetalliance.com.)

    With the release of Android, Google made available a host of development tools and tutorials to aid would-be developers onto the new system. Help files, the platform software development kit (SDK), and even a developers’ community can be found at Google’s Android website, http://code.google.com/android. This site should be your starting point, and I highly encourage you to visit the site.

二. 基本概况及发展趋势

目前, 安卓应用程序发展十分迅速, 各种各样的应用程序都能在安卓市场中找到, 日程管理软件业随处可以见。其中,日程管家、日程表、日程备忘以及课程表在安卓市场上都有相当大的使用量,甚至很多知名企业也参与开发此类应用程序,如影响力比较大360公司开发的 360 课程表。此类软件在网上都有相当多的好评,可见,其对人们生活的带来了相当大的便捷。

虽然,该类应用有很多,但没有专门针对大学生开发的具有明显特色的一款软件。在大学生中,沉重的学习压力,凌乱的作息安排,上课地点的不断更换,临时课程的添加,让我们没有多余的心思去记那繁琐的教室、课程。因此,对于日程管理系统的开发和应用的改善就显得尤为重要。因此设计一个多元化,功能全面的日程管理系统尤为重要。日程管理系统是否实用直接影响其的使用量, 通常,日程可分为日程安排、 日历、 课程表三大类。日程安排,大学生可能用的不多,但日后成为上班族就会用的频繁。日历,在生活中也是不可或缺的。课程表,适应于对学生做学习计划及上课课程提醒,便于学生合理利用时间。本项目旨在设计一个将日程安排,日历和课程表完美结合的日程管理系统,大大提高用户交互性及系统完善性。

三.课题要求及设计方案

3.1 设计主要内容:

设计并实现一个基于Android的个人日程表管理系统,能提示日程安排,点到提醒,能显示日历,并在日历上添加日程任务安排,能显示学生的当周的课表,能实现日程安排、日历和课程表之间的相互切换。要求系统界面友好,具有良好的用户体验效果。

3.2 完成的主要任务及要求:

1. 日程安排:记录用户每天的日程安排, 并显示近日( 昨天、今天、明天) 的计划、安排, 让用户方便获知信息,并有到点提醒功能。

2. 日历:显示当月日历,并可查阅指定日期的日历,同时,还可以在日历上添加日程安排,并有到点提醒功能。

3. 课程表:显示当周学生的课程表,并有到点提醒功能。

4. 小控件可以实现日程安排、日历、课程表切换功能,以便显示用户需要的界面。

5. 系统测试与调试

3.3 初步设计方案:

    3.1界面设计(分为三个界面):

       3.1.1.日程表界面:标题可写为“近期日程”,进入之后显示当天日程,在“近期日程”标题栏添加两个方向按钮,向左可查看昨天的日程,向右可查看明天的日程。类似于:

  

3.1.2.日历界面:使用带农历和万年历的日历界面。类似于:

3.1.3.课程表界面:显示当周课程,类似于:



备注:通过学习,想到用ViewPager控件来实现日历,日程表,课程表之间的切换

  3.2 界面功能设计:

      3.2.1日历界面:

      日历使用可以查看中国农历的日历,对于习惯农历的人们来说可以方便根据农历来制定近期的日程。选定某天日期,点击直接切换到日程表界面来查看所选日期的计划。

      3.2.2日程表界面:

      日程表界面如上面显示,包含日程计划的类型以及提醒次数,日程提醒的时间选择以及一个日程计划编辑框。同时准备在“近期日程”标题栏添加两个方向按钮,向左按钮显示前一天日程,和在日历界面点击前一天日程的效果一样。向右按钮显示明天日程计划,同样也可以通过日历来显示。日程类型有会议、约会、生日、电话、纪念日、课程、其他。

      3.2.3课程表界面:

     课程表只显示周一到周五的课程包括选修课,每节课显示课程名称和上课地点,代课老师可以自行在课程名称后面或者上课地点后面添加。有一些选修课会安排在周末上课,但是比较少,所以不幸选择的同学可以在日程表中添加,这样还可以提醒,以免周末太高兴给忘记了。

备注:通过ViewPager控件,在每个界面的最上方添加一栏,显示日历,日程表,课程表,点击即可切换到相应的界面。效果跟微博的切换效果一样

Viewpager的相关介绍:ViewPager - onCreateView is not always called

   I have a ViewPager with 10 pages. When I start the last (10th) page onCreateView() method of my fragment is called. When I swipe to the 9th page onCreateView() is called also. But when I back to the 10th page onCreateView() isn't called. What's wrong?

   That is because a FragmentPagerAdapter keeps in memory every fragment. Hence, when you visit the first time the fragment, onCreate will be invoked but the second time Android will looking for in memory, so it not need invoke onCreate.

  If you need run the code in OnCreate every time fragment is displayed, you should move it to getItem(int id)

四.任务时间安排:

  1. 第1-4周,英文翻译,毕业设计调研,完成文献检索,撰写开题报告。

 2. 第5-10周,完成代码设计。

 3. 第11-12周,系统测试及调试,完善代码。

 4. 第13-14周,撰写本科毕业论文。

 5. 第15周,做好答辩前的所有准备工作,并参加答辩。

五.参考文献:

1. 孙士保,ASP.NET数据库网站设计教程(C#版),电子工业出版社,20##年8月

2. 徐婉珍,JSP动态网站开发项目教程,电子工业出版社,20##年11月

3. 方欣,赵红岩,Android程序设计教程,电子工业出版社,20##年5月

4. 吴清秀,PHP网站开发,机械工业出版社,20##年8月

5. 王卫红,Android应用开发基础教程,机械工业出版社,20##年12月

6.林建素,孟康健.Eclipse开发学习笔记[M].北京:电子工业出版社,2008. 

7.范春梅,王新刚,张卫华.XML基础教程[M].北京:人民邮电出版社,2009. 

8.Erik T.Ray[美]. XML入门[M].译者:卓小涛.北京:中国电力出版社,2001. 

9.梅尔斯T[美],奈克莫夫斯基 A[美].Java XML 编程指南[M]. 译者: 王辉等.电子工业出版 社,2001. 

10.麦克劳林 B[美]. JAVA与XML[M]. 译者: 孙照林等. 北京:中国电力出版,2001.  

11.威尔顿P[美],科尔比J[美].SQL入门经典 [M].译者:敖富江. 北京:清华大学出版社,2006. 

12.王虔.Flash矢量设计[M].北京:清华大学出版社,2007. 

13.管贻生.Java高级实用编程[M].北京:清华大学出版社,2006. 

14.姚昱曼.Android的架构与应用开发研究[J].计算机系统应用,2008,17(11):110~113. 

15.王会进,方锦亮.基于JAVA的自定义空间应用技术研究[J].微型机与应用,2005

                  指导教师(签名):                       

                                                                      年    月      日


第二篇:基于android的手机日程管理系统详细设计说明书


基于Android的手机日程管理系统的设计

与实现

详细设计说明书

学生姓名: 王炜

学 号: 09110514034

指导教师: 刘雪梅 课题类型: AXP

专 业: 软件工程

学 部 : 信息学部 审核组长:

北京城市学院

2013 年 2月 19日

I

II

基于android的手机日程管理系统详细设计说明书

目录

1、引言 ....................................................................................................... 1

1.1、编写目的........................................................................................................ 1

1.2、背景说明........................................................................................................ 1

1.3、定义................................................................................................................ 1

1.4、参考资料........................................................................................................ 1

2、程序系统的结构 ................................................................ 2

3、功能模块设计说明 ............................................................. 2 3.1、程序描述 ................................................................................. 2

3.2、功能 ........................................................................................ 3

3.3、性能 ........................................................................................ 4

3.4、输人项 .................................................................................... 4

3.5、输出项 .................................................................................... 4

3.6、算法 ........................................................................................ 4

3.7、接口 ........................................................................................ 6

3.8、限制条件 ................................................................................. 6

4、界面设计说明 .................................................................... 6

4.1、程序描述 ................................................................................. 6

4.2、功能 ........................................................................................ 6

4.3、性能 ........................................................................................ 6

4.4、输人项 .................................................................................... 6

4.5、输出项 .................................................................................... 6

4.7、限制条件 ................................................................................. 8

5、安全设置设计说明 ............................................................. 8 5.1、程序描述 ................................................................................. 8

5.2、功能 ........................................................................................ 8

5.4、输人项 .................................................................................... 9

5.5、输出项 .................................................................................... 9

5.6、算法 ........................................................................................ 9

5.7、接口 ....................................................................................... 10

5.8、限制条件 ................................................................................ 10

5.9、尚未解决的问题 ..................................................................... 11

6、其他需求设计 .................................................................. 11

III

1、引言

1.1、编写目的 本文档用于说明本软件开发的详细过程,使毕业设计审核组了解软件的

内部结构,从而对本日程管理系统有更深入的了解,便于审核。

1.2、背景说明 待开发软件系统的名称:基于Android的手机日程管理系统

本项目的任务提出者:学校 开发者:王炜

用户:android手机用户

项目开发环境:eclipse、Android系统平台

1.3、定义

Android 手机日程 详细设计

1.4、参考资料

[1]赵亮;张维;;基于Android技术的界面设计与研究[J];电脑知识与技术;20xx年29期.

[2]陈昱;江兰帆;;基于Google Android平台的移动开发研究[J];福建电脑;20xx年11期.

[3]蔡罗成;;Android后台监听实现机制浅析[J];信息安全与通信保密;20xx年06期.

[4]王会进,方锦亮;基于JAVA的自定义控件应用技术研究[J];微型机与应用;20xx年05期.

[5]陈璟;陈平华;李文亮;;Android内核分析[J];现代计算机(专业版);20xx年11期.

[6]姚昱旻;刘卫国;;Android的架构与应用开发研究[J];计算机系统应用;20xx年11期.

[7]方明;田野;户银龙;;基于Android平台的嵌入式软件项目组织方法[J];电脑知识与技术;20xx年34期.

[8]叶炳发;Android操作系统移植及关键技术研究[D];暨南大学;20xx年.

1

[9]岳传真;Android系统移植和应用程序开发[D];复旦大学;20xx年.

[10]刘敏;移动终端的Android移植与应用程序设计[D];西安电子科技大学;20xx年.

[11]胡思捷;基于Android平台的触摸屏系统设计及实现[D];南开大学;20xx年. [12]施金兰;基于Android平台的网络共享研究与实现[D];华东师范大学;20xx年. [13]李凯;Android操作系统分析与移植[D];华南理工大学;20xx年.

[14]刘瑞顺;基于Android平台的智能手机输入法研究与设计[D];汕头大学;20xx年.

2、程序系统的结构

手机日程管理系统结构设计如下:

基于android的手机日程管理系统详细设计说明书

3、功能模块设计说明

3.1、程序描述

主要功能:用于用户的可视化界面操作,有助于用户快速熟悉软件。 可扩展性:能够适应应用要求的变化和修改,具有灵活的可扩充性。

2

3.2、功能

基于android的手机日程管理系统详细设计说明书

图2 设置课程程序流程图

通过点击课程表界面,用户可以输入课程名和地点。设计每天天共有8节课程和一节选修课,用户可输入星期一到星期五的所有课程安排信息。

基于android的手机日程管理系统详细设计说明书

查看课程:

用户可查看输入的课程信息,设计只要左右滑动界面就可以查看星期一到星期五的所有课程信息。

基于android的手机日程管理系统详细设计说明书

新增日程:

点击新增日程,就跳转用户可输入的新增日程界面,通过点击下拉菜单可选择日程类型是会议还是约会,在内容框里输入日程信息,输入所花时间,点击评分就是日程的优先级。

查看日程:

基于android的手机日程管理系统详细设计说明书

3

图5 查看日程程序流程图 用户点击查看日程后,输入正确密码,程序自动调用系统内部的日历模块,即显示日历,点击今天的日期,即可查看今天的日程安排,点击今天的日程信息,即可跳转编辑此次日程信息界面。

3.3、性能

当用户选择菜单时能够快速反应,以满足用户的要求。

3.4、输人项

设置课程:

课程名和地点

查看课程:

用户通过点击输入操作命令

新增日程:

类型、内容、耗时、评分(日程优先级)

查看日程:

密码

3.5、输出项

设置课程:

查看课程:

课程表信息,课程名和地点

新增日程:

查看日程:

密码、类型、内容、耗时、评分(日程优先级)

3.6、算法

//定义菜单类,用于接收用户的单击消息。

public class MainActivity extends Activity

//设计4个按钮用于接收按钮消息,并将它们初始化:

super.onCreate(savedInstanceState);

setContentView(R.layout.main_activity);

Button btn = (Button)findViewById(R.id.btnSetSallybus); btn.setOnClickListener(onBtnSetSallybusClickListener); 4

btn = (Button)findViewById(R.id.btnAddNote);

btn.setOnClickListener(onBtnAddNoteClickListener);

btn = (Button)findViewById(R.id.btnViewSallybus);

btn.setOnClickListener(onBtnViewSallybusClickListener); btnViewNote);

btn.setOnClickListener(onBtnViewNoteClickListener);

在OnClick函数中对响应进行处理:

1跳转设置课程表界面

public View.OnClickListener onBtnSetSallybusClickListener = new View.OnClickListener(){

@Override

public void onClick(View view) {

Intent intent=new Intent(MainActivity.this, ScheduleInsert.class);

MainActivity.this.startActivity(intent);

}

} ;

2跳转新增日程界面

public View.OnClickListener onBtnAddNoteClickListener = new View.OnClickListener(){

@Override

public void onClick(View view) {

//To change body of implemented methods use File | Settings | File Templates.

Intent intent=new Intent(MainActivity.this, DiaryNew.class); MainActivity.this.startActivity(intent);

}

} ;

3跳转查看课程表界面

public View.OnClickListener onBtnViewSallybusClickListener = new View.OnClickListener(){

@Override

public void Intent intent=new Intent(MainActivity.this, ScheduleShow.class);

MainActivity.this.startActivity(intent);

}

5

} ;

4跳转查看日程界面

具体在安全设计中介绍

3.7、接口

API函数

3.8、限制条件

无明显限制条件

4、界面设计说明

因概要设计中有具体页面效果图,这里只举一例说明

4.1、程序描述

主要功能:用于为用户提供可视化的操作界面,增加了程序的可读性。 可扩展性:能够适应应用要求的变化和修改,具有灵活的可扩充性。

4.2、功能

显示主界面、课程表界面、日程界面、日历界面、密码界面。

4.3、性能

能够快速的显示用户所需要的操作界面

4.4、输人项

无输入

4.5、输出项

操作界面

6

4.6、页面布局代码

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="/apk/res/android" android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:layout_gravity="center_vertical"

>

<LinearLayout android:orientation="horizontal"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_weight="1"

android:layout_gravity="center" android:gravity="center">

<Button

android:layout_width="120dp"

android:layout_height="120dp"

android:id="@+id/btnSetSallybus"

android:layout_gravity="center"/>

<Button

android:layout_width="120dp"

android:layout_height="120dp"

android:id="@+id/btnViewSallybus"

android:layout_gravity="center"/>

</LinearLayout>

<LinearLayout android:orientation="horizontal"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_weight="1" android:gravity="center" android:layout_gravity="center">

<Button

android:layout_width="120dp"

android:layout_height="120dp"

android:id="@+id/btnAddNote"

android:layout_gravity="center"/>

7

<Button

android:layout_width="120dp"

android:layout_height="120dp"

android:id="@+id/btnViewNote"

android:layout_gravity="center"/>

</LinearLayout>

</LinearLayout>

4.7、限制条件

无明显限制条件

5、安全设置设计说明

5.1、程序描述

主要功能:当用户点击查看日程时需输入安全密码才可查看信息,起到保护用户信息的功能。

可扩展性:能够适应应用要求的变化和修改,具有灵活的可扩充性。

5.2、功能

安全设置程序流程图:

基于android的手机日程管理系统详细设计说明书

图4 安全设置程序流程图图

5.3、性能

能够让用户输入密码,并保存进内部数据库。

8

5.4、输人项

用户输入密码。

5.5、输出项

5.6、算法

public View.OnClickListener onBtnViewNoteClickListener = new View.OnClickListener(){

@Override

public void onClick(View view) {

if(!Security.Logined)

{

LayoutInflater inflater = getLayoutInflater();

final View inputView = inflater.inflate(R.layout.input_string,(ViewGroup)findViewById(R.id.etInputString));

new AlertDialog.Builder(MainActivity.this).setTitle("请输入查看日程密码")

.setView(inputView)

.setNeutralButton(R.string.ok, new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialogInterface, int i) {

EditText etPwd = (EditText) inputView.findViewById(R.id.etInputString);

String strInputPwd = etPwd.getText().toString();

SharedPreferences prefs = getSharedPreferences("user_info",MODE_PRIVATE); String strPwd = prefs.getString("password","");

if(!strPwd.equals("") )

{

if(strPwd.equals(strInputPwd)) {

Security.Logined = true;

9

}

}

else{

Security.Logined = true;

}

if(!Security.Logined){

new

AlertDialog.Builder(MainActivity.this)

.setTitle("提示")

.setMessage("密码不正确")

.setPositiveButton("确定", null) .show();

return;

}

}

})

.show();

return;

}

if(!Security.Logined){

new AlertDialog.Builder(MainActivity.this)

.setTitle("提示")

.setMessage("密码不正确")

.setPositiveButton("确定", null)

.show();

return;

}

Intent intent=new Intent(MainActivity.this, CalendarActivity.class);

MainActivity.this.startActivity(intent);

}

} ;

5.7、接口

API函数

5.8、限制条件

无明显限制条件

10

5.9、尚未解决的问题

不能进行密码重置,当用户忘记密码时,只能内部查看。当查看日程时输入一次密码后,必须在此点击查看日程按钮才能查看日程。

6、其他需求设计

详见需求规格说明书。

11

更多相关推荐:
Android课程设计报告模板

移动互联网开发课程设计报告学生姓名学号专业计算机科学与技术班级设计题目学年学期季学期指导教师张华目录示例一二三1234四五设计题目1设计目的1设计原理及方案1使用的软件工具和环境1需求分析与概要设计1数据库设计...

android课程设计报告

目录1概述12项目设计与实现121欢迎界面1211界面布局1212功能实现222登陆界面2221界面布局2222功能实现223微信显示界面4231界面布局4232功能实现424主界面5241界面布局5242功能...

安卓android课程设计报告

湘潭大学课程设计报告课程课题指导名称手机安卓开发名称天气预报APP老师周唯姓名黄柳学号20xx600719班级12计2班小组棒棒糖时间20xx年1月26日一需求分析一引言1编写目的11为用户提供一个显示天气预报...

android课程设计报告

软件学院课程设计报告20xx学年第二学期学院软件学院专业软件测试班级1班姓名汤微任课老师欧阳文臣2目录1课程设计概况12上课笔记摘取13课程设计34心得总结8课程设计概况此次的课程设计的主要任务是设计andro...

Android课程设计报告

移动应用技术课程设计报告题目基于Android的金源书店库存管理系统的开发与设计学生姓名专业信息管理与信息系统班级指导教师信息管理与工程系20xx年5月28日信息管理与工程系课程设计基于Android的金源书店...

基于android的简单用户注册系统课程设计报告

实验报告课程名称Android应用程序设计实验名称简单的用户注册登录系统学院电子信息工程学院专业计算机科学与技术班级姓名学号时间1目录第一章设计背景11引言312设计目的313设计要求314开发运行环境3第二章...

Android课程设计论文

基于android平台的二维码识别软件的设计与实现目录1绪论311研究背景以及意义312Android平台特点313Eclipse简介314AndroidSDK简介315ADT简介42软件设计421系统概要设计...

网络编程课程设计报告-Android Socket 聊天室

网络编程课程设计报告课程名称题目AndroidSocket聊天室专业班级组长副组长组员指导教师1目录1设计目的32开发工具和开发环境33设计原理331实现思想332服务器端工作流程333客户端工作流程34系统流...

《Android开发技术》课程项目报告模板

Android开发技术课程项目报告兰州交通大学Android开发技术课程项目报告项目名称专业班级小组成员完成日期计算机科学与技术学生姓名学生学号学生姓名学生学号学生姓名学生学号学生姓名学生学号Android开发...

基于Android手机平台的记事本设计课程设计

题目基于Android手机平台的记事本设计系名信息工程系专业移动通信学号姓名指导老师20xx6281目录第一章引言11课题研究的目的12课题研究的意义13课题的可行性分析第二章开发环境的安装和配置21开发包及其...

张润萌 Android课程设计报告 华北水利水电大学

中州大学项目名称基于Android平台的自动闹钟学院名称信息工程学院班级名称电子信息工程组员姓名陈士涛20xx27010123张润萌20xx27010122王松立20xx27010116指导教师赵建勋项目要求项...

王家林的彻底精通Android应用程序开发课程设计

王家林Android架构师高级工程师咨询顾问培训专家通晓AndroidHTML5Hadoop迷恋英语播音和健美致力于Android和HTML5软硬云整合精通Android安全国内最早20xx年从事于Androi...

android课程设计报告(18篇)