diff --git a/library/src/main/java/com/qiniu/android/collect/Config.java b/library/src/main/java/com/qiniu/android/collect/Config.java index 0bb7d39f5..0e2707f76 100644 --- a/library/src/main/java/com/qiniu/android/collect/Config.java +++ b/library/src/main/java/com/qiniu/android/collect/Config.java @@ -37,6 +37,15 @@ public final class Config { * 默认使用当前应用的缓存目录: getCacheDir() */ public static String recordDir = null; + + static { + try { + recordDir = ContextGetter.applicationContext().getCacheDir().getAbsolutePath(); + } catch (Throwable e) { + e.fillInStackTrace(); + } + } + /** * 记录上传信息文件最大值,单位:字节。 *
@@ -62,14 +71,6 @@ public final class Config { */ public static int interval = 10; - static { - try { - recordDir = ContextGetter.applicationContext().getCacheDir().getAbsolutePath(); - } catch (Throwable e) { - e.fillInStackTrace(); - } - } - /** * 当网络切换到 wifi 下,切换到此设置 */ diff --git a/library/src/main/java/com/qiniu/android/collect/UploadInfoCollector.java b/library/src/main/java/com/qiniu/android/collect/UploadInfoCollector.java index 47ec4a835..4d40626c5 100644 --- a/library/src/main/java/com/qiniu/android/collect/UploadInfoCollector.java +++ b/library/src/main/java/com/qiniu/android/collect/UploadInfoCollector.java @@ -1,6 +1,5 @@ package com.qiniu.android.collect; - import com.qiniu.android.http.UserAgent; import com.qiniu.android.storage.UpToken; @@ -198,7 +197,7 @@ public void run() { singleServer.submit(taskRecord); // 少几次上传没有影响 - if (Config.isUpload && upToken != UpToken.NULL) { + if (Config.isUpload && !UpToken.isInvalid(upToken)) { Runnable taskUpload = new Runnable() { @Override public void run() { diff --git a/library/src/main/java/com/qiniu/android/http/ResponseInfo.java b/library/src/main/java/com/qiniu/android/http/ResponseInfo.java index 964130bc8..7fa75d06b 100644 --- a/library/src/main/java/com/qiniu/android/http/ResponseInfo.java +++ b/library/src/main/java/com/qiniu/android/http/ResponseInfo.java @@ -127,7 +127,7 @@ public static ResponseInfo create(final JSONObject json, final int statusCode, f final String ip = _ip.substring(Math.max(0, _ip.indexOf("/") + 1)); ResponseInfo res = new ResponseInfo(json, statusCode, reqId, xlog, xvia, host, path, ip, port, duration, sent, error, upToken, totalSize); - if (Config.isRecord || upToken != null) { + if (Config.isRecord) { final String _timeStamp = res.timeStamp + ""; UploadInfoCollector.handleHttp(upToken, // 延迟序列化.如果判断不记录,则不执行序列化 diff --git a/library/src/main/java/com/qiniu/android/storage/UpToken.java b/library/src/main/java/com/qiniu/android/storage/UpToken.java index 770db3cab..82ec58926 100644 --- a/library/src/main/java/com/qiniu/android/storage/UpToken.java +++ b/library/src/main/java/com/qiniu/android/storage/UpToken.java @@ -49,6 +49,10 @@ public static UpToken parse(String token) { return new UpToken(obj.optString("returnUrl"), token, t[0]); } + public static boolean isInvalid(UpToken token) { + return token == null || token == NULL; + } + public String toString() { return token; } diff --git a/library/src/main/java/com/qiniu/android/storage/UploadManager.java b/library/src/main/java/com/qiniu/android/storage/UploadManager.java index a1b1d3f9c..517b4c678 100644 --- a/library/src/main/java/com/qiniu/android/storage/UploadManager.java +++ b/library/src/main/java/com/qiniu/android/storage/UploadManager.java @@ -55,7 +55,7 @@ private static boolean areInvalidArg(final String key, byte[] data, File f, Stri ResponseInfo info = null; if (message != null) { info = ResponseInfo.invalidArgument(message, decodedToken); - } else if (decodedToken == UpToken.NULL || decodedToken == null) { + } else if (UpToken.isInvalid(decodedToken)) { info = ResponseInfo.invalidToken("invalid token"); } else if ((f != null && f.length() == 0) || (data != null && data.length == 0)) { info = ResponseInfo.zeroSize(decodedToken); @@ -82,7 +82,7 @@ private static ResponseInfo areInvalidArg(final String key, byte[] data, File f, return ResponseInfo.invalidArgument(message, decodedToken); } - if (decodedToken == UpToken.NULL || decodedToken == null) { + if (UpToken.isInvalid(decodedToken)) { return ResponseInfo.invalidToken("invalid token"); }