OpenExpress开源啦

之前有跟友人想过做一个快递的软件,但是毕竟忙,没有完全做好。最近又遇上极客学院在搞一些app的比赛,索性乘这个机会,顺便将这毕竟好用的快递api带给大家。源代码已经在github 上开源。https://github.com/arjinmc/OpenExpress 。我也征求了快递api作者的意见,可以把这个东西开源并且宣传。

本项目使用了开源项目AndroidResideMenu,也就是大家所熟悉手机QQ 5.0的menu效果。还有数据库框架Ormlite。

AndroidResideMenu,它给的例子也比较详细了,很容易用。不懂稍微看一下英文注释也会明白。

Ormlite是否常用,我不是很清楚。但是相对于经常是手写去操作数据库的我来说,Ormlite确实很方便,也不需要自己再去考虑线程安全问题。它所提供的增删改查,事务这些功能都比较全。看到网上有人说Ormlite是不可以进行批量删除的,这个我要澄清一下,Ormlite上有批量删除功能,也有一次性清空表功能。这个方法我已经写在OpenExpress里面,但是参与eoe的时候,我没有在UI上加上这个功能。Ormlite有点麻烦就是需要基于它的OrmliteBaseAcitity,参考了一些网上的做法,我也把这个工具类整理出来,这样就可以不需要在基于OrmliteBaseActitiy就可以轻松使用。

package com.arjinmc.ormlitedemo.utils;

import android.content.Context;

import com.j256.ormlite.android.apptools.OpenHelperManager;

public class DataHelperUtil {
	
	private static DBOpenHeleper databaseHelper = null;
	
	/**
	 * @desciption get database connection
	 * @author Eminem Lu
	 * @email arjinmc@hicsg.com
	 * @create 2015/2/26
	 * @param context
	 * @return
	 */
	public static DBOpenHeleper getHelper(Context context) {
		if (databaseHelper == null) {
			databaseHelper = OpenHelperManager
					.getHelper(context, DBOpenHeleper.class);
		}
		return databaseHelper;
	}

	/**
	 * @desciption release database connection
	 * @author Eminem Lu
	 * @email arjinmc@hicsg.com
	 * @create 2015/2/26
	 */
	public static void releaseHelper(){
		if (databaseHelper != null) {
			OpenHelperManager.releaseHelper();
			databaseHelper = null;
		}
	}
}


说快递,除了快递本身的使用工具,很多人就会想到电商项目。确实电商项目离不开快递,所以,这个才是重点。我用的是 爱查快递的api。之前在做电商项目的时候,有对比过由金碟公司旗下的快递100好一些还是这个爱查询好一些。如果你的项目需要用到快递的推送功能,估计还是用快递100比较好。但是快递100比较坑,会把顺丰,EMS等主流快递列作收费用途,也就是逼你强迫跟他签约,也就是收钱。选爱查询的最主要的原因还是因为免费,而且支持170多家物流公司,测试过api的速度也是非常快的。他的api比较简单,官网就可以看到用法说明。但是要申请这个还是有条件的,首先你得有一个域名,自己的网站,那么就可以申请免费使用了。

http://api.ickd.cn/?id=[]&secret=[]&com=[]&nu=[]&type=[]&encode=[]&ord=[]&lang=[]

参数说明

字段 是否必须 说明
com 必须 快递公司代码(英文),所支持快递公司见如下列表
nu 必须 快递单号,长度必须大于5位
id 必须 授权KEY,申请请点击快递查询API申请方式
在新版中ID为一个纯数字型,此时必须添加参数secret(secret为一个小写的字符串)
secret 必选(新增) 该参数为新增加,老用户可以使用申请时填写的邮箱和接收到的KEY值登录http://api.ickd.cn/users/查看对应secret值
type 可选 返回结果类型,值分别为 html | json(默认) | text | xml
encode 可选 gbk(默认)| utf8
ord 可选 asc(默认)|desc,返回结果排序
lang 可选 en返回英文结果,目前仅支持部分快递(EMS、顺丰、DHL)
注意:使用PHP的json_decode函数时必须使用UTF8的编码,如果出现json_decode失败,请尝试使用UTF8编码。

返回格式

格式: json | text | html | xml
编码: GBK| UTF8
示例:
{"status":"3","message":"","errCode":"0","data":[{"time":"2013-02-23 17:10","context":"辽宁省大连市中山区四部公司 的收件员 王光 已收件"},{"time":"2013-02-24 17:59","context":"辽宁省大连市公司 已收入"},{"time":"2013-02-24 18:11","context":"辽宁省大连市中山区四部公司 已收件"},{"time":"2013-02-26 07:33","context":"吉林省长春市景阳公司 的派件员 张金达 派件中 派件员电话15948736487"},{"time":"2013-02-26 16:47","context":"客户 同事收发家人 已签收 派件员 张金达"}],"html":"","mailNo":"7151900624","expTextName":"圆通快递","expSpellName":"yuantong","update":"1362656241","cache":"186488","ord":"ASC"}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值