毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
基于Android系统的图片浏览器开发与设计(6)
(3) 周期短
嵌入式应用程序跟桌面、Web软件的开发流程有很多不同之处,在精简程序的同时,不仅缩减了冗长的代码,也减少了开发的周期,项目周期缩短,相同需求的情况下,自然开发成本就会降低。
3.5.3 系统安全性分析
因为程序的目的专一,并无太多可能的安全问题。但是由于嵌入式交互的用户体验占了很重要的部分,例如Linux下进程之间无法互相通信,产生进程锁时就会出现主UI进程未响应,超过6秒会出现ANR的错误,是会严重影响用户体验、并且不被允许的。在移动设备上运行的程序,大多数都要进行线程的严格化处理和代码的精简,这样才可以做成一个完整的、好的嵌入式应用程序。
4 系统设计
4.1 系统功能结构设计
依据系统的需求设计,按照结构化的系统设计方法,软件的功能结构设计图可以用结构图来进行描述。通过功能的分析,将图画出,如图4.1所示。
图 4.1 软件功能结构图
4.2 文件夹/图片浏览模块设计
实现文件夹/图片组浏览模块,由于他们两个界面的相似性(网格结构),它们共同继承自MainActivity.java。为了提供更好的用户体验,采取了动态、异步加载图片的方法。使用了异步加载AsyncTask,是一个Android内部的异步任务实例。使用AsyncLoadImage进行实现。模块的静态模型图如图4.2所示。
图 4.2 文件夹/图片组浏览模块类图
MainActivity主要实现的是图片的读取和更新List,主要方法如表4.1所示。
表 4.1 MainActivity的主要方法
方法名 返回类型 参数类型 说明
onCreate() void Bundle Activity第一次启动时调用,为入口函数,做通常处理
initGridView() void / 初始化网格布局
loadImages() void / 读取图片数据
getImgIds() ArrayList<Integer> ArrayList<Integer> 获得图片的ID
getTag() String / 获得当前TAG(调试用)
receivedMediaBroadcast() void Intent 获得广播后处理
doFromBroadcast() void boolean, boolean SD卡拔出、SD卡扫描等广播处理
showNoImages() void / 错误处理显示
isBucket() boolean / 返回是否文件夹页面
addImage() void LoadedBitmap... 加入图片并更新
cancelTask() void / 取消异步任务
onStop() void / Activity结束时调用,解绑Broadcast等取消动作处理
其中,因为需要保证界面的完整性,不能使其出现ANR的错误,使用异步加载图片,保证Activity的主线程不被终止。其时序如图4.3所示。
图 4.3 AsyncTask加载图片时序图
4.3 图片浏览模块设计
图片浏览模块的主要功能是对图片的查看、设置为桌面背景,同时对图片进行分享的操作。图片浏览模块使用了工具类中的查询方法,对文件夹下的图片进行了查询,同时需要实现系统的手势操作。他们的静态模型关系如图4.4所示。
图4.4 文件夹/图片组浏览模块类图
Gallery的主要功能是图片浏览、幻灯片播放、设置背景等,如表4.2所示。
共9页:
上一页
1
2
3
4
5
6
7
8
9
下一页
上一篇:
PHP+mysql材料管理系统设计与实现
下一篇:
C#条码仓库管理的设计与开发出入库模块
基于Apriori算法的电影推荐
java+mysql通用试题库系统后台设计与实现
PHP+IOS的会议管理系统的设计+ER图
基于PageRank算法的网络数据分析
基于神经网络的验证码识别算法
基于网络的通用试题库系...
python基于决策树算法的球赛预测
神经外科重症监护病房患...
国内外图像分割技术研究现状
公寓空调设计任务书
承德市事业单位档案管理...
志愿者活动的调查问卷表
10万元能开儿童乐园吗,我...
C#学校科研管理系统的设计
中国学术生态细节考察《...
医院财务风险因素分析及管理措施【2367字】
AT89C52单片机的超声波测距...