基于Android的记事本的设计与开发(实验报告+源代码)

这是一份关于Android记事本应用的开发报告,详细介绍了如何使用Android四大组件实现记事本的各项功能,包括数据存储、Activity数据传递、内容提供者、广播接收者和服务。报告涵盖了项目的背景、需求分析、系统流程图、开发环境和预期目标,同时分享了团队成员的心得体会。
摘要由CSDN通过智能技术生成

说明: 大三下学期和小组成员一起写的一个安卓项目
项目比较简陋,但是这个项目把Android中四大组件的功能都实现了哦!!
先放几张图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
目 录
1 项目分析 1
1.1 项目背景 1
1.2 项目开发目的及意义 1
1.3 需求分析 2
1.3.1 功能需求分析 2
1.3.2 功能模块概述 2
1.3.3 系统流程图 3
1.4 开发及运行环境 4
2 预期目标 5
2.1 性能需求 5
2.2 记事本功能 5
2.3 构成模块 5
3 项目实施 7
3.1 关键程序步骤 7
3.1.1 Activity数据传递 7
3.1.2 数据存储 8
3.1.3 内容提供者 12
3.1.4 广播接收者 15
3.1.5 Service 17
3.2 实验结果 20
4 心得体会 25
4.1 心得体会一 25
4.2 心得体会二 25
5 附录 27
5.1 小组成员 27
5.2 成员分工 27
5.3 源程序 27
参考文献 32

1 项目分析
1.1项目背景
(略,因为和网上比较雷同所以就不放出来了,比较简单,自己百度哦)
1.2项目开发目的及意义
(略,比较简单,自己百度哦)

1.3需求分析
1.3.1功能需求分析
此次记事本开发希望能够开发一款符合用户生活工作习惯的应用,能够满足用户的各方面需求,要求功能完善丰富,具有良好的用户界面和交互体验。针对记事本软件的功能进行详细的分析,功能总体设计如图1-1所示。
使用数据库对记事进行增加,查看,修改和删除。
使用Activity数据传递实现界面跳转及数据传递(存入和取出)。
使用内部存储实现对登录信息(账号和密码的实现)的存储。使用shared Preference保存数据实现对编辑界面标题的存储。
使用内容提供者提供接口实现数据库中数据共享(外部应用程序能对记事进行增删改查等操作)。
使用广播接收者实现开机自启功能。
使用Service实现开启背景音乐功能。
图1-1 记事本的功能需求分析

1.3.2功能模块概述
(1)记事本基本操作
记事本基本操作是该应用程序的核心部分,提供了添加、查看、修改、删除记事本信息的功能,提供记事本动态更新的功能。
(2)记事本主界面列表展示
用户可能需要创建很多条记事本信息,并且需要对这些记事本信息进行基本操作,例如删除、修改等功能。记事本的列表展示能使用户界面更加简洁清晰,并带给用户使用方便。
(3)记事本数据存储实现
记事本的最重要功能就是记录和保存用户容易遗忘的日期和事件,为了持久地将用户的记事本信息保存下来,需要将这些信息存储在数据库中。记事本需要保存的信息有编号(ID)、记事标题(Title )、记事内容(Content)、记事时间(Time)。
图1-2显示了记事本的功能模块信息。
图1-2 记事本功能模块图

1.3.3系统流程图
在运行记事本时,首先需要用户登录,进入记事本主页面,主页面是记事本的每个记事列表,选择新增记事,则进入编辑页面,编辑记事内容,可以添加标题和内容,记事时间则自动生成,编辑完成后,选择保存,结束记事;选择修改记事,进入编辑界面,编辑记事内容,可以修改标题和内容,记事时间则自动生成,修改完成后,选择保存,结束记事;选择查看记事,进入查看界面,显示记事时间、标题和内容;选择删除记事,则删除所选记事。图1-2展示了随心记APP主要系统操作流程。
图1-3 记事本系统流程图

1.4开发及运行环境

  1. 开发平台:win8/win10, Eclipse 及 ADT。
  2. 数据库:SQLite
  3. JDK:1.7 及以上
  4. Android 版本:4.3
  5. 运行设备:android 手机或 android 平板

2 预期目标
时代飞速的发展,使得人们在生活与工作中都忙忙碌碌的,很多时候都会忘记一些事情。早在古代,人们就想出了一些解决方法,但由于思考的不周全,从而让这些方法都成为了泡影。而在科技发达的现代,想要记住一些事情可以很简单。
记事本这款软件的出现,恰好能解决这一问题。记事本可以很方便的帮你管理琐碎的文字记录,通过记事本,使我们的相关日程安排非常清晰。
2.1性能需求
由于android系统本身的资源限制以及用户手机设备的硬件性能问题,该记事本在性能上需要满足以下几点要求
能够兼容低版本的android系统
内存占用尽量少,不能出现内存泄露的问题
CPU资源占用尽量少,各种交互操作响应速度要快,不能出现卡死或者不流畅的问题
2.2记事本功能
因为没有使用过记事本程序,对这方面比较缺乏了解,参考了比较流行的记事本程序设计,然后综合考虑各方面因素,对这个记事本程序的功能设计进行了简化,只实现了基本的记事本功能。
特色功能:
(1)记事本管理(新建、保存、删除、查看、修改内容)
(2)记事本操作(新建、保存、删除、查看、修改内容)
(3)背景音乐
(4)开机自启动记事本
(5)外部应用程序能对记事本进行操作
2.3 构成模块
(1)整个系统大体可以分成两大模块:
一是记事本管理,主要是显示记事本和新建记事本;
二是记事本操作,想要对记事本内容操作时,点击对应的操作按钮即可弹出该界面。
(2)总的系统组织结构图如图2-1所示
图2-1记事本系统组织结构

3 项目实施
3.1 关键程序步骤
3.1.1 Activity数据传递
(1)运用Intent语句实现两个界面的跳转

Intent intent = new Intent(LoginActivity.this,NotepadActivity.class);
startActivity(intent);
finish();

(2)用于Activity之间的通讯intent为A传来的带有Bundle的intent,当然也可以自己定义新的Bundle

intent = new Intent(); 				
startActivityForResult(intent, 1);
setResult(RESULT_OK, intent); 
finish();//此处一定要调用finish()方法

(3)主界面和编辑界面的数据传送

intent.putExtra("id", cursor.getString(cursor.getColumnIndex("_id")));
intent.putExtra("state", ALERT_STATE);
intent.putExtra("title",cursor.getString(cursor.getColumnIndex("title")));
intent.putExtra("time",cursor.getString(cursor.getColumnIndex("time")));
intent.putExtra("content",cursor.getString(cursor.getColumnIndex("content")));
//设置并启动另一个指定的Activity
intent.setClass(NotepadActivity.this, NotepadEditActivity.class);
NotepadActivity.this.startActivity(intent);

(4)获取启动该主界面的intent对象

if(state == ALERT_STATE){//修改状态,赋
评论 36
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值