欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    Android日程管理系统实训报告.docx

    • 资源ID:13708100       资源大小:209.79KB        全文页数:23页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Android日程管理系统实训报告.docx

    1、Android日程管理系统实训报告安卓项目演习开发实训 基于Android的日程管理系统设计与开发(2016/6/62016/6/23)项目名称基于Android日程管理系统纳米生活院 系计算机与软件学院班 级学 号学生课程老师第1章 绪论 41.1项目背景 41.2项目目标 4第2章 系统开发环境及技术 52.1系统开发环境 5 2.1.1硬件环境 5 2.1.2软件支持 62.2系统开发技术 6 2.2.1 Java 简介 6 2.2.2 Android Studio简介 6 2.2.3 SQLite简介 7第3章 “日程管理”的需求分析 83.1用户需求 83.2功能分析 83.3开发环

    2、境 8 3.3.1 难点 8 3.3.2 易点 8第4章 概要设计 104.1 设计目标 104.2 系统角色 104.3 系统流程图 10第5章 详细设计 12 5.1 设计目标 12 5.2 编码设计 12 5.2.1 splash界面 12 5.2.2 日历界面 13 5.2.3 编辑日程界面 14 5.2.4 查看日程界面 15 5.2.5 删除日程界面 16 5.2.6 闹钟提醒界面 17 5.2.7 倒计时界面 18 5.2.8 日程提醒界面 19 5.2.9 通知栏提醒界面 20第6章 测试 21 6.1 闹钟提醒测试用例 21 6.2 备忘录测试用例 22第7章 小结 23第8

    3、章 参考文献 24第1章 绪论1.1项目背景 随着计算机技术的飞速发展,计算机应用的迅速推广,计算机及技术给人们的日常生活、工作、学习带来了十分巨大的影响,计算机改变了人们的生活,工作的方式。而在使用计算机时有一些好的、实用的软件,将会给使用者提供非常便利的环境。因此我们采用Android技术开发一个实用的个人日程管理系统,以便提醒大家一些重要的事情不要忘记,比如开会,生日什么的事情,有了这款APP,它会按时的提醒你去做该事情,你可以设置提醒一次,每天提醒,每周提醒。1.1 日程管理的起源在没有手机功能齐全的时代,我们的日程安排只能通过手写记录,经常会因为没有及时翻阅记录而错过了重要的日程,随

    4、着手机技术的飞速发展,手机应用的迅速推广,手机改变了人们的生活,工作的方式。日程管理就是将每天的工作和事务安排在日期中,并做一个有效的记录,方便管理日程的工作和事务,达到工作备份的目的。同时也具有对日常工作进行指导、监督的作用。1.2 项目目标1.通过关于本系统管理系统的实现,使个人的日程管理更加完善。2.可以编辑日程事务,了解行程。3.可以提醒备忘事项,大大提高了办事效率。4. 完善的日程查询功能,方便使用者的生活第2章 系统开发环境及技术2.1 系统开发环境 2.1.1 硬件环境处理器Pentium IV及以上;存容量 4G以上;存储容量 50G以上; 2.1.2软件支持操作系统: Mac

    5、 OS X 10.11.5编程语言:JAVA数据库: SQLite开发工具: Android Studio 2.2 系统开发技术 2.2.1 java 简介背景:Java是一种应用分布式网络环境中的程序设计语言,由sun公司开发,Java语言广为人知,得益于Internet的迅猛发展。人们开始了解并使用这种神奇的语言,一般的应用程序、Applet、web服务器乃至手机的嵌入式系统,Java都足以胜任。Java对网络提供了强有力的支持,这也是这种奇妙语言的魅力所在。特点: (1) 面对对象 (2)可移植性(universality) (3)安全性(security) (4)多线程(thread)

    6、 (5)多态 (6)解释执行 (7)分布性2.2.2 Android Studio简介Android Studio 是一个Android开发环境,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。 2013年5月16日,在I/O大会上,谷歌推出新的Android开发环境Android Studio,并对开发者控制台进行了改进,增加了五个新的功能。Android Studio是谷歌推出了新的Android开发环境,开发者可以在编写程序的同时看到自己的应用在不同尺寸屏幕中的样子。谷歌对开发者控制台进行

    7、了改进,增加了五个新的功能,包括优化小贴士、应用翻译服务、推荐跟踪、营收曲线图、用版测试和阶段性展示。1、优化小贴士:在主体中打开你的应用,点击小贴士,会得到这样的建议:为你的应用开发平板电脑版本。2、应用翻译服务:允许开发者直接在开发主体中获得专业的翻译。上传你的需求,选择翻译,其会显示翻译方和价格,并在一周发回译本。3、推荐跟踪:允许开发者找出最有效的广告4、营收曲线图:向开发者展示其应用营收,以国家进行划分5、试用版测试和阶段性展示:开发者可以对应用进行测试,然后向测试用户推出,测试结果不会对外公布。当一个版本的测试结束,开发者可以向特定比例用户推出。Android Studio这款开发

    8、工具被首次公布,这也是为了方便开发者基于Android开发。首先解决的一个问题是多分辨率。Android设备拥有大量不同尺寸的屏幕和分辨率,根据新的Studio,开发者可以很方便的调整在各个分辨率设备上的应用。同时Studio还解决语言问题,多语言版本(但是没有中文版本)、支持翻译都让开发者更适应全球开发环境。Studio还提供收入记录功能。最大的改变在于Beta测试的功能。Studio提供了Beta Testing,可以让开发者很方便试运行。2015年5月29日,在谷歌I/O开发者大会上,谷歌发布AndroidStudio 1.3版,支持C+编辑和查错功能。Android Studio 1.

    9、3版开发码代码变得更加容易,速度提升,而且支持C+编辑和查错功能 。2.2.3 Sqlite简介SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000

    10、年5月。 至今已经有13个年头,SQLite也迎来了一个版本 SQLite 已经发布。SQLite是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。不像常见的客户-服务器例,SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。所以主要的通信协议是在编程语言的直接API调用。这在消耗总量、延迟时间和整体简单性上有积极的作用。整个数据库(定义、表、索引和数据本身)都在宿主主机上存储在一个单一的文件中。它的简单的设计是通过在开始一个事务的时候锁定整个数据文件而完成的。 第3章 “日程管理”设计与分析3.

    11、1 用户需求(1)功能需求:本系统完成对自己昨天的日程进行记录,今天、明天的日程安排以及查看修改工作。(2)权限需求:用户管理员拥有最高的权限,可以对系统中所有的数据进行查看、添加、修改和删除等操作;普通用户只可以对自己的行程进行查看、修改、删除和删除等操作。 (3)系统安全性需求:一是用户进入系统时必须进行口令校验;二是连接数据库是使用windows身份验证。3.2功能分析(1)用户登录、用户注册:用户通过登录的方式进行口令校验安全进入在线日程管理系统:用户注册是用户为进入该系统时将个人信息提交到数据库中。(2)人员管理:系统管理员可以对用户进行修改,其中对用户密码进行修改,对一些长期没有用

    12、的人员进行删除操作,以减少系统压力。(3)个人日程管理:其中使用TabControl 控件,对某一天或某段时间的日程进行查看,和对某个日程的地点、开始时间、重要性及联系进行修改,更新等操作。3.3 难易点分析3.3.1、难点本程序在设计方面存在很大困难,这与我们目前所学习到的知识有关,用个可能不太恰当的比喻就是:刚刚学习了一点什么是空气动力学的概念知识,就让我们去造一架会飞的飞机出来。困难是存在的,但是实训的成果和报告是要交的,所以我们要从多方面入手,尽自己的最大努力完成本次实训的目的和效果。3.3.2、易点本程序的很多设计可以从各种日程管理的APP中得到相关参考,程序中的用法有之前上课做的例

    13、作为参照,退一步而言,所以在遇到某些问题时,可以小组讨论解决。也可以通过翻阅不同的资料来得到一定的经验。第4章 概要设计4.1设计目标个人日程管理系统是对已完成的工作进行记录,对未完成的工作进行有效、合理的安排,提高工作效率。每天可以自己安排自己的日程以及查看和修改。通过关于本系统的实现,个人的日程管理更加完善,可以通过笔记日程事务,了解行程,还可以提醒备忘录事项,大大提高了办事效率。4.2系统角色本系统的角色主要包括有:系统管理员(拥有整个系统 的访问权限,可以对本系统的所有数据进行查看、添加、修改、删除的操作),普通用户:进入日程管理系统,查看制定自己的日程安排;查看日程的详细容,对日程安

    14、排提出疑问,通过网络与管理员沟通(拥有次级管理权限,可以进行本人日程管理)。管理人员:进入日程管理系统,查看所有用户日程安排;查看日程的详细容;对日程安排进行调整,制定统一日程的制定;对系统进行维护和管理。4.3系统流程图如图所示: 图4.3 系统流程图日历部分设有三个模块:年份模块,月份模块,日期模块。具体如图所示:图为日历部分流程:图4.4 日历部分流程图第5章 详细设计5.1 设计目标 个人日程管理系统是对已完成的工作进行记录,对未完成的工作进行有效、合理的安排,提高工作效率。5.2 编码设计 5.2.1 splash界面该界面只有在开启本APP时才会出现,起到美观、缓冲的作用。图5.2

    15、.1 欢迎界面核心代码如下:handler.sendEmptyMessageDelayed(1,2500);Boolean isLogin = SharedPreferencesUtils.getValue(SplashActivity.this,Login,isLogin,false);if (isLogin = true) startActivity(new Intent(SplashActivity.this,MainActivity.class); finish();else startActivity(new Intent(SplashActivity.this,LoginActiv

    16、ity.class); finish(); 5.2.2 日期选择界面本界面主要是编辑界面进行选择事件日期。图5.2.2 日期选择界面Calendar calendar = Calendar.getInstance();int year = calendar.get(Calendar.YEAR);int monthOfYear = calendar.get(Calendar.MONTH);int dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);datePicker.init(year, monthOfYear, dayOfMonth, new D

    17、atePicker.OnDateChangedListener() Override public void onDateChanged(DatePicker view, final int year, final int monthOfYear, final int dayOfMonth) if (year currentYear | monthOfYear currentMonthOfYear | dayOfMonth currentDayOfMonth) Toast.makeText(EditActivity.this, 选择日期不能小于当前, Toast.LENGTH_SHORT).s

    18、how(); else dateStr = year + - + (monthOfYear + 1) + - + dayOfMonth;showTimePicker(year, monthOfYear, dayOfMonth);dialog.dismiss();核心代码如下:5.2.3 添加日程界面本界面主要实现日程系统的填写与添加操作。图5.2.3 添加日程界面核心代码如下:public static Boolean insertLog(Context context, String title, String content, String time) Boolean isSuccess

    19、= false; DBHelper dbHelper = new DBHelper(context); SQLiteDatabase dbWrite = dbHelper.getWritableDatabase(); ContentValues values = new ContentValues(); values.put(title, title); values.put(time, time); values.put(content, content); values.put(state,0); if (dbWrite.insert(info, null, values) != -1)

    20、isSuccess = true; dbWrite.close(); dbHelper.close(); return isSuccess;5.2.4 查看日程界面本界面主要实现已存在日程的信息查看。图5.2.4 日程查看界面核心代码如下:private void getInfo() Intent intent = getIntent(); id = intent.getIntExtra(id, -1); mList = DataBaseUtil.queryLogById(this, id); tvTitle.setText(mList.get(0).getTitle(); tvContent

    21、.setText(mList.get(0).getContent(); tvTime.setText(mList.get(0).getTime();5.2.5 删除日程界面本界面主要实现的功能是建好后的日程的删除操作。图5.2.5 日程删除界面核心代码如下: public static void deleteInfoById(Context context, int id) DBHelper dbHelper = new DBHelper(context); SQLiteDatabase dbWrite = dbHelper.getWritableDatabase(); dbWrite.del

    22、ete(info, _id = ?, new StringString.valueOf(id); dbWrite.close(); dbHelper.close(); 5.2.6 闹钟设置界面本界面主要实现的功能是添加日程时时间的选择。图5.2.6 闹钟设置界面核心代码如下:int currentMinute = Integer.valueOf(format1.format(date1);if (year = currentYear & month = currentMonthOfYear & day = currentDayOfMonth) if (hourOfDay = currentHo

    23、ur & minute = currentMinute) Toast.makeText(EditActivity.this, 选择时间必须大于当前时间, Toast.LENGTH_SHORT).show(); return; else dateStr += + hourOfDay + : + minute; tvDate.setText(dateStr); dialog.dismiss(); else dateStr += + hourOfDay + : + minute; tvDate.setText(dateStr); dialog.dismiss();5.2.7 倒计时界面主界面主要实现

    24、的是倒计时的功能,输入倒计时的时间后点击确定按钮,下方的方块即会显示倒计时时间,时间到后手机会震动及振铃。点击方块后取消提醒。图5.2.7 倒计时界面核心代码如下:int hour = 0, minute = 0, second = 0;if (!TextUtils.isEmpty(etHour.getText().toString() hour = Integer.valueOf(etHour.getText().toString();if (!TextUtils.isEmpty(etMinute.getText().toString() minute = Integer.valueOf(e

    25、tMinute.getText().toString();if (!TextUtils.isEmpty(etSecond.getText().toString() second = Integer.valueOf(etSecond.getText().toString();int sum = hour * 1000 * 3600 + minute * 1000 * 60 + second * 1000;if (sum = 0) Toast.makeText(getActivity(), 请输入倒计时时间!, Toast.LENGTH_SHORT).show(); else mc = new M

    26、yCount(sum, 1000); mc.start();etMinute.setText();etHour.setText();etSecond.setText();5.2.8 日程提醒界面主界面主要实现的是“正在提醒”,此时便是日程所设定的时间已到,系统正在提醒。图5.2.8 日程提醒界面核心代码如下:int state = mList.get(position).getState();if (state = 0) holder.tvState.setText(待办);else if (state = 1) holder.tvState.setText(已完成); holder.tvSt

    27、ate.setTextColor(getResources().getColor(R.color.purple);else holder.tvState.setText(正在提醒); holder.tvState.setTextColor(getResources().getColor(R.color.red);5.2.9 通知栏提醒界面主界面主要实现的是在日程提醒的状态下通知栏展示提醒的日程,点击该通知栏后可进入日程查看界面。图5.2.9 通知栏提醒界面核心代码如下:Notification.Builder builder = new Notification.Builder(this);n

    28、otificationManager = (NotificationManager) this .getSystemService(NOTIFICATION_SERVICE);Intent clickIntent = new Intent(NotificationService.this, MyReceiver.class);clickIntent.putExtra(id, id);PendingIntent pendingIntent = PendingIntent.getBroadcast(NotificationService.this, 1, clickIntent, PendingI

    29、ntent.FLAG_CANCEL_CURRENT);builder.setTicker(您有设定日程已到时间).setDefaults(Notification.DEFAULT_VIBRATE).setContentIntent(pendingIntent).setSmallIcon(R.mipmap.android).setContentTitle(日程提示) .setContentText(点击查看日程: + title);Notification notification = builder.build();notificationManager.notify(1, notificat

    30、ion);第6章 测试 6.1 闹钟提醒测试用例用例名称日程提醒用例编号01设计人:梁新宇测试目标基本功能:测试铃声是否正常响起前置条件将铃声响起时间设定为17:00步骤操作描述期望结果1提醒时间到下拉通知栏显示提醒,并且铃声响起2点击关闭铃声点击下拉提醒显示是否关闭铃声对话框3点击是铃声关闭4点击否铃声继续响用例名称日程提醒用例编号02设计人:梁新宇测试目标基本功能:浏览网页时,铃声可以正常响起前置条件将铃声响起时间设定为17:00步骤操作描述期望结果1浏览网页是,铃声响主界面出现闹铃界面,铃声响起2点击关闭铃声闹铃关闭,停留在网页页面6.2 备忘录测试用例用例名称日程提醒用例编号03设计人:梁新宇测试目标基本功能:测试


    注意事项

    本文(Android日程管理系统实训报告.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开