【项目记录】-液化气配送app android版
15年底参与过甲方呼叫中心平台开发。液化气配送app android版要求1个月开发完成。开发此项目以前我只有过一周android的开发经验。(与甲方签署过保密协议,遵循职业道德有些敏感信息不能写。)
甲方提供资料如下:
应用场景说明
- 呼叫中心收到定气信息后,将定气/维修信息发送给指定送气工手机
- 送气工配送完成后在手机上扫描回收气瓶条码\发送气瓶条码\维修条码码,并填写定单配送完成相应信息并打印配送/维修完成定单.
- 呼叫中心统一向所有送气工手机发送通知信息
提供的参考界面(有些敏感信息的就不放出记录了)

xarue设计的界面

开发相关
开发完的相关界面(没有配备美工,参考美团配色和样式)

开发功能主要有:
- 数据接口甲方开发配合测试。
- 液化气配送接单、退单、完成操作。气瓶信息操作,可以增删
- 维修、接单、退单、完成操作。
- 通知查看。
- 蓝牙打印小票。
- 自动检测升级
最低支持android4.0+
app数据要求存在本地,每次根据送气工最后一次操作app单据时间作为更新标记。
获取数据时间节点
第一次获取数据为2000-01-01 00:00:00,后面就取本地数据库中最大的时间
订单、维修单
从服务器获取订单、维修单数据,根据唯一标识判断本地数据库中是否存在,不存在新增,存在则更新。
通知
从服务器获取通知数据,根据唯一标识判断本地数据库中是否存在,不存在新增,存在则更新。
自动升级
升级登录后自动检测版本,提示是否升级。【我的】界面,点击检测版本,提示是否升级。
清理缓存
清除7天前的完成订单。
数据存储主要是用了sqlite和SharedPreferences进行存储
订单、维修单、通知数据存储。通过协议获取数据,存入sqlite数据库,数据查询数据从本地sqlite数据库中查询。
项目中使用到的其他组件。(注:项目使用的组件均为开源组件)
pulltorefresh下拉刷新组件
fastjson-1.1.21.jar阿里json操作组件
xUtils-3.1.22.jar安卓开发框架,项目中使用了控件注解获取引用,本地数据库sqlite操作。
Zxing.jar摄像头扫扫码组件(使用的过程中遇到个识别速度慢的问题,后来将识别的图框调小后,速度快了不少。)
结语
项目2016-6月开始8月完成交接,中途增加通知功能,数据接口有过调整。发现项目开始甲方总是会很急,当看到东西后就不会那么急了。
安卓开发我也是边学边用,调样式费了不少时间,开发过程中间遇到不少问题。算是自己独立完成的第一个安卓app,好多都是现学现用,遵守职业道德项目代码就不能提供了。
【项目记录】-液化气配送app android版的更多相关文章
- 通过扫码打开IOS的App Store下载APP(Android版暂时没找到解决方法)
项目需求:扫码根据不同平台下载不同版本的APP.主要是ios和Android. 网上找了很多,前面判断平台的代码很容易找到,但是后面的就有些坑了.有的人的是根本跑不通.有的是代码补全. 下面是 微信扫 ...
- Ionic实战 自动升级APP(Android版)
Ionic 框架介绍 Ionic是一个基于Angularjs.可以使用HTML5构建混合移动应用的用户界面框架,它自称为是"本地与HTML5的结合".该框架提供了很多基本的移动用户 ...
- Android版-支付宝APP支付
此项目已开源 赶快来围观 Start支持下吧 [客户端开源地址-JPay][服务端端开源地址-在com.javen.alipay 包名下] 上一篇详细介绍了微信APP支付 点击这里 此篇文章来详细介绍 ...
- 原生Android App项目调用Untiy导出的Android项目
背景:采用Google VR SDK for Unity 开发3D场景功能,然后导出Android项目,合并到一个Android App里面,供其它Activity调用. 用Google VR for ...
- Android版-微信APP支付
首发地址: Android版-微信APP支付 欢迎留言.转发 微信极速开发系列文章(微信支付.授权获取用户信息等):点击这里 目录 1.注册账号.开发者认证 2.添加应用 3.申请微信支付 4.技术开 ...
- 分享我开发的网络电话Android手机APP正式版,图文详解及下载
分享我开发的网络电话Android手机APP正式版,图文详解及下载 分享我开发的网络电话Android手机APP正式版 实时语音通讯,可广域网实时通讯,音质清晰流畅! 安装之后的运行效果: 第一次安装 ...
- React Native App设置&Android版发布
React Native系列 <逻辑性最强的React Native环境搭建与调试> <ReactNative开发工具有这一篇足矣> <解决React Native un ...
- [APP] Android 开发笔记 002-命令行创建默认项目结构说明
接上节:[APP] Android 开发笔记 001 4. 默认项目结构说明: 这里我使用Sublime Text 进行加载.
- Android版App的控件元素定位
前言 如何获取页面上各控件元素,无论是Web自动化还是App自动化,此步骤都是非常关键的! Web页面的控件元素可通过开发者选项(Chrome浏览器的F12)来协助定位,App端也是有相应的工具来协助 ...
随机推荐
- 12306官方火车票Api接口
2017,现在已进入春运期间,真的是一票难求,深有体会.各种购票抢票软件应运而生,也有购买加速包提高抢票几率,可以理解为变相的黄牛.对于技术人员,虽然写一个抢票软件还是比较难的,但是还是简单看看123 ...
- Chrome出了个小bug:论如何在Chrome下劫持原生只读对象
Chrome出了个小bug:论如何在Chrome下劫持原生只读对象 概述 众所周知,虽然JavaScript是个很灵活的语言,浏览器里很多原生的方法都可以随意覆盖或者重写,比如alert.但是为了保证 ...
- 高性能Javascript--脚本的无阻塞加载策略
Javascript在浏览器中的性能,可以说是前端开发者所要面对的最重要的可用性问题. 在Yahoo的Yslow23条规则当中,其中一条是将JS放在底部 .原因是,事实上,大多数浏览器使用单进程处理U ...
- Linux 添加新磁盘,在线扩充空间
CentOS 7开发环境中的home 目录空间满了,需要增加空间 到虚拟机上执行"ls /sys/class/scsi_host",然后重新扫描SCSI总线来添加设备.如右图.然后 ...
- .net Elasticsearch 学习入门笔记
一. es安装相关1.elasticsearch安装 运行http://localhost:9200/2.head插件3.bigdesk插件安装(安装细节百度:windows elasticsear ...
- Node.js:理解stream
Stream在node.js中是一个抽象的接口,基于EventEmitter,也是一种Buffer的高级封装,用来处理流数据.流模块便是提供各种API让我们可以很简单的使用Stream. 流分为四种类 ...
- Visual Studio 2012远程调试中遇到的问题
有的时候开发环境没问题的代码在生产环境中会某些开发环境无法重现的问题,或者需要对生产环境代码进行远程调试该怎么办? Vs已经提供给开发者远程调试的工具 下面简单讲讲该怎么用,前期准备:1.本地登录账户 ...
- MongoDB集群配置
本文演示:(一个主服务器,一个备份服务器,三个仲裁服务器) 官方推荐副本集的成员数量为奇数,最多12个副本集节点,最多7个节点参与选举. 本文演示基于本机,用端口区分服务(每个服务器下新建db文件夹用 ...
- VC中的MFC到底是什么?
1. 微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows API ...
- keepalive的不足,如何处理
MySQL(或者其它服务)的keepalived高可用监控脚本 开发脚本需求:我们知道,keepalive是基于虚拟ip的存活来判断是否抢占master的机制的,但是如果我们做了MySQL的keepa ...