危化品速查APP--Android Project

摘要:
此项目中使用的Android数据库是Sqlite。Sqlite是安卓平台上的一种轻量级嵌入式关系数据库产品。以下是一些主要介绍:Sqlite通过文件保存数据库。默认情况下,Sqlite创建的数据库文件保存在/data/data//databases/文件夹中。文件是数据库。在Android平台上操作数据库的相关类:SQLiteOpenHelper抽象类。它用于创建和管理数据库和版本。需要创建子类继承。此类封装了数据库操作的基本方法,易于使用。

开发环境

Android studio 2.3.1

功能描述

  1. 集成多种查询方式,查看本地数据库中危险化学品的信息;
  2. 按照中文拼音和英文首字母,对化学品进行查询;
  3. 按照UN号或者CAS号查询相应的化学品;
  4. 按照化学品特性描述的关键词检索化学品;
  5. 查看产品手册以及使用说明文档;

Github 地址

git@github.com:guoyaohua/Chemicals.git

功能介绍

一、主界面和欢迎界面

危化品速查APP--Android Project第1张

程序打开时,会最先进入Welcome界面,此时程序会在后台初始化数据库,对相关工具进行初始化, 初始化结束后,会自动跳转到主界面。

危化品速查APP--Android Project第2张

程序包含四大功能模块:

  1. 名称检索
  2. 特性检索
  3. 编号检索
  4. 实用手册
    点击图标即可进入相应功能界面。

二、名称检索

危化品速查APP--Android Project第3张

进入名称搜索模块,在搜索框中输入化学品的中文名、中文拼音、英文名,点击查询即可检索到所对应的化学品。

危化品速查APP--Android Project第4张

程序具备联想功能,用户可以输入部分化学品名称(包括:中文名、拼音、英文名),点击查询,程序会将数据库中跟关键字相关的化学品都检索出来,例如如果我们想查询到“乙烯”,只需要键入“乙”即可在结果中查询到“乙烯”。

三、编号检索(UN/CAS)

危化品速查APP--Android Project第5张

进入编号搜索模块,系统默认展示化学品编号(UNCAS)搜索框、搜索按钮、UN号、CAS号切换按钮。

搜索框支持UN号、CAS号输入,可通过输入框右下方单选按钮,切换UN/CAS搜索模式。

同样,程序可以自动识别不完整输入,选中切换按钮-UN号检索,此时用户输入化学品的UN号码(以乙酸为例,2789),进行部分输入,输入值“27”,结果列表自动匹配出相应的化学品。

危化品速查APP--Android Project第6张

四、特征检索

危化品速查APP--Android Project第7张

在特征检索模块,程序提供了强大的模糊搜索功能。

用户只需要在搜索框中输入危化品的特征,或者身处现场时对位置化学品的物理状态,化学气味等特征,键入到搜索框中,程序便会将有相关特性的化学品检索显示出来。

例如:用户可以输入“刺激性气味”这个关键词,程序会检索出所有包含刺激性气味这个属性的危化品。

五、实用手册

危化品速查APP--Android Project第8张

在本模块中,程序提供了多种危化品手册,以PDF形式打包在程序中,用户点击图标即可打开相应手册,PDFView模块引用了PDF plug框架,使浏览PDF手册更加流畅,且功能强大,大大节省手机RAM空间。

危化品速查APP--Android Project第9张

六、化学品详细信息

在化学品信息的详细页面下,用户可以看到基本信息、理化性质及用途、危险性、应急处置、防护建议、检测方法六个功能类别,此时可以拖动中上部的横向按钮滚动条,也可以横向滑动屏幕,达到功能切换的目的。

危化品速查APP--Android Project第10张

基本信息模块包含了化学品名称、英文名、别名、UN号、CAS号、危险货物编号、GHS分类标签的具体信息。整个页面根据化学品的信息量而定,信息量大的情况下,用户可以拖动页面向下滑动,查看全部信息。

危化品速查APP--Android Project第11张

理化性质及用途模块包含了化学品理化特性参数、用途等基本信息,整个页面根据化学品的信息量而定,信息量大的情况下,用户可以拖动页面向下滑动,查看全部信息。

危化品速查APP--Android Project第12张

危险性类别模块包括危险性类别、燃烧及爆炸危险性、健康危害等详细信息,整个页面根据化学品的信息量而定,信息量大的情况下,用户可以拖动页面向下滑动,查看全部信息。

危化品速查APP--Android Project第13张

应急处置模块包含了急救、灭火等详细信息,整个页面根据化学品的信息量而定,信息量大的情况下,用户可以拖动页面向下滑动,查看全部信息。

危化品速查APP--Android Project第14张

防护建议模块列出了对从业人员的防护建议。

数据库

一、SQLite数据库

APP中包含的化学品信息保存在本地数据库,在用户下载应用安装包时一并存储在移动终端的存储设备,用户可以在软件更新时查看到最新的完整版本危险化学品信息。
课题用到的Android数据库为Sqlite。Sqlite是android平台的一款轻量级的、嵌入式的、关系型数据库产品,以下是一些主要介绍:

  1. Sqlite通过文件保存数据库,创建的数据库文件默认存在/data/data//databases/的文件夹下,一个文件就是一个数据库。
  2. 一个数据库包含多个表格,一个表格包含不同的字段,字段类型等等,这与SQL数据库相似。
  3. Sqlite记录没有顺序的概念,不存在第一第二类的概念,通过查询获取满足条件的记录。

android平台下操作数据库的相关类:

  1. SQLiteOpenHelper抽象类,用于创建和管理数据库以及版本,需要创建一个子类继承,该类封装了对数据库操作的基本方法,使用方便。
  2. SQLiteDatabase数据库访问了,主要是对数据库的增删改查等常用操作,功能比SQLiteOpenHelper丰富,比如事务管理,分页等等。
  3. Cursor游标类,主要用来返回返回查询记录结果

二、数据库操作示例

数据库文件为db格式,数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结构独立于使用它的应用程序,对数据的增、删、改、查由统一软件进行管理和控制。采用navicat for SQLite软件打开

危化品速查APP--Android Project第15张

安装完成之后,进入软件,首先点击“新建连接”

危化品速查APP--Android Project第16张

在“新建连接”窗口之中输入“连接名”(可自行命名,如“test”),选择类型“现有的数据库文件”,然后在数据库文件中查找db文件的位置,选项如下图所示

危化品速查APP--Android Project第17张

然后即可在软件左侧的栏目中找到刚刚建立的连接名“test”,在“表”中找到对应的表格以及文件信息,

危化品速查APP--Android Project第18张

数据库中收录了多达百种危险化学品。下图显示了最新录入情况,

危化品速查APP--Android Project第19张

危化品速查APP--Android Project第20张

免责声明:文章转载自《危化品速查APP--Android Project》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇OpenMediaVault 5 进阶配置(一) 启用 SSL/TLS浏览器工作原理和实践(三)——页面下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mysql主从复制、redis基础、持久化和主从复制

一、mysql(mariadb)基础 1、基础命令(centos7操作系统下) 1.启动mysql systemctl start mariadb 2.linux客户端连接自己 mysql -uroot -p -h 127.0.0.1 -u 用户 -p 密码验证 -h 连接的主机地址 3.远程链接mysql服务端 mysql...

禁用wordpress自动保存为草稿

wordpress有个很讨厌的功能,叫Post Revisions,保存博文日志的不同版本,同样的内容多次占用数据库,多人用户维护一个blog用这个有用处,单一维护的blog基本是数据库浪费空间。禁用Post Revisions的方法是,在wp-config.php文件中增加一行 define(‘WP_POST_REVISIONS’, false); 那么...

开发者使用JasperReport——通过数据源生成报表

前言 前两篇都是介绍了如何查询数据库,但是都是通过报表模版跟数据库进行交互的,也就是说我们的查询语句和参数的定义都写死在模版里面了,所以有时候会不太方便,所以今天就来跟大家介绍下通过Servlet与数据库进行交互,模板只负责显示。 正题 跟之前的一样,我们要生成报表需要以下几个步骤: 1.引入jar包,请看《静态文本报表》 。 2.新建报表模版: 由于...

Jmeter工具笔记-Jmeter+influxdb+grafanas设置性能监控过程

1、下载 1)influxdb下载链接:https://portal.influxdata.com/downloads 2)grafanas下载链接:https://grafana.com/grafana/download 将上面下载好的influxdb和grafanas文件,无须安装,直接解压到目录即可   Influxdb模块 需要修改配置(E:...

sqlite3 数据类型 批量插入

内容来自sqlie的官网(http://www.sqlite.org/datatype3.html)大部分SQL数据库引擎使用静态数据类型,数据的类型取决于它的存储单元(即所在的列)的类型。 SQLite3采用了动态的数据类型,存储值的数据类型和数值本身相关,而不是由它的字段的类型决定。SQLite3的动态数据类型能够向后兼容其它数据库普遍使用的静态类型,...

使用Database Control访问数据库问题解决了

OracleDBConsoleorcl 服务因下列错误而停止: 系统找不到指定的路径。   问题解决了,可以通过EM dbconsole访问数据库了 原因主要还是更改了主机名导致的问题,更改了相应的文件名:D:\oracle\product\10.2.0\db_1\oc4j\j2ee\OC4J_DBConsole_colin重命名为D:\oracle\...