Skip to content

Commit 0b78b06

Browse files
author
YangSen-qn
committed
Merge branch 'develop' of YangSen-qn:YangSen-qn/android-sdk into develop
2 parents 867e0d0 + be3f3c0 commit 0b78b06

File tree

20 files changed

+167
-53
lines changed

20 files changed

+167
-53
lines changed

.idea/misc.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/modules.xml

Lines changed: 2 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

CHANGELOG.md

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,14 @@
11
#Changelog
2-
## 8.4.2(2022-02-28)
2+
## 8.4.4 (2022-06-02)
3+
* 处理 Dns 预解析内存问题
4+
5+
## 8.4.3 (2022-05-18)
6+
* 修复:解决使用分片上传 v1 偶现上传异常:在多个区域域名之间进行上传重试的场景下空指针异常
7+
* 补充了上传 response status code 注释,详情 [code 注释说明](https://github.com/qiniu/android-sdk/blob/master/library/src/main/java/com/qiniu/android/http/ResponseInfo.java)
8+
9+
## 8.4.2(2022-03-02)
310
* 优化:
4-
* uc query 流程增加新的域名
11+
* 为自动获取上传域名流程增加了一个默认的备份域名。
512

613
## 8.4.1(2022-01-27)
714
* 优化
@@ -20,6 +27,9 @@
2027
* 新增:
2128
* 新增 token.isValidForDuration API,可在上传之前检查 token 是否有效
2229

30+
## 8.3.4(2022-05-10)
31+
* 处理分片 v1 上传偶现异常:多区域重试的断点续传场景偶现空指针异常
32+
2333
## 8.3.3(2021-10-20)
2434
* 日志不再统计手机的信号强度
2535

QiNiu_Android.iml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<module external.linked.project.id="QiNiu_Android" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
2+
<module external.linked.project.id="Qiniu_Android" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" type="JAVA_MODULE" version="4">
33
<component name="FacetManager">
44
<facet type="java-gradle" name="Java-Gradle">
55
<configuration>
6+
<option name="BUILD_FOLDER_PATH" value="$MODULE_DIR$/build" />
67
<option name="BUILDABLE" value="false" />
78
</configuration>
89
</facet>
910
</component>
10-
<component name="NewModuleRootManager">
11+
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="true">
1112
<exclude-output />
1213
<content url="file://$MODULE_DIR$">
1314
<excludeFolder url="file://$MODULE_DIR$/.gradle" />
14-
<excludeFolder url="file://$MODULE_DIR$/build" />
1515
</content>
1616
<orderEntry type="inheritedJdk" />
1717
<orderEntry type="sourceFolder" forTests="false" />

README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ https://github.com/qiniudemo/qiniu-lab-android
3333
| 7.0.7 | Android 2.2+ | android-async-http 1.4.8 |
3434

3535
### 注意
36-
* 推荐使用最新版:8.4.2
36+
* 推荐使用最新版:8.4.4
3737
* 7.6.2 ~ 8.3.2 AndroidNetwork.getMobileDbm()可以获取手机信号强度,需要如下权限(API>=18时生效)
3838
```
3939
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
@@ -628,6 +628,9 @@ import com.qiniu.android.bigdata.pipeline.Pipeline;
628628
...
629629
```
630630

631+
**9).如何理解上传返回 code :**
632+
详情 [code 注释说明](https://github.com/qiniu/android-sdk/blob/master/library/src/main/java/com/qiniu/android/http/ResponseInfo.java)
633+
631634
## 代码贡献
632635

633636
详情参考[代码提交指南](https://github.com/qiniu/android-sdk/blob/master/CONTRIBUTING.md)

library/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ dependencies {
5454
implementation 'com.squareup.okhttp3:okhttp:4.9.1'
5555

5656
// implementation 'com.squareup.okhttp3:okhttp:3.12.+'
57-
implementation 'com.qiniu:happy-dns:1.0.0'
57+
implementation 'com.qiniu:happy-dns:1.0.1'
5858
// for javax.annotation.Nullable use in custom MultipartBody and Headers implements.
5959
// implementation 'com.google.code.findbugs:jsr305:3.0.2'
6060
implementation 'org.conscrypt:conscrypt-android:2.2.1'

library/library.iml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
<option name="ALLOW_USER_CONFIGURATION" value="false" />
2020
<option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" />
2121
<option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" />
22-
<option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res;file://$MODULE_DIR$/build/generated/res/resValues/debug" />
23-
<option name="TEST_RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" />
22+
<option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res" />
23+
<option name="TEST_RES_FOLDERS_RELATIVE_PATH" value="" />
2424
<option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
2525
<option name="PROJECT_TYPE" value="1" />
2626
</configuration>
@@ -88,7 +88,7 @@
8888
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
8989
<excludeFolder url="file://$MODULE_DIR$/build" />
9090
</content>
91-
<orderEntry type="jdk" jdkName="Android API 29 Platform" jdkType="Android SDK" />
91+
<orderEntry type="jdk" jdkName="Android API 30 Platform" jdkType="Android SDK" />
9292
<orderEntry type="sourceFolder" forTests="false" />
9393
<orderEntry type="library" scope="TEST" name="Gradle: junit:junit:4.13@jar" level="project" />
9494
<orderEntry type="library" scope="TEST" name="Gradle: org.hamcrest:hamcrest-core:1.3@jar" level="project" />
@@ -99,8 +99,8 @@
9999
<orderEntry type="library" name="Gradle: org.jetbrains:annotations:13.0@jar" level="project" />
100100
<orderEntry type="library" name="Gradle: com.qiniu:happy-dns:1.0.0@jar" level="project" />
101101
<orderEntry type="library" name="Gradle: org.conscrypt:conscrypt-android:2.2.1@aar" level="project" />
102-
<orderEntry type="library" name="Gradle: android.test.mock-android-29" level="project" />
103-
<orderEntry type="library" name="Gradle: android.test.base-android-29" level="project" />
104-
<orderEntry type="library" name="Gradle: android.test.runner-android-29" level="project" />
102+
<orderEntry type="library" name="Gradle: android.test.mock-android-30" level="project" />
103+
<orderEntry type="library" name="Gradle: android.test.base-android-30" level="project" />
104+
<orderEntry type="library" name="Gradle: android.test.runner-android-30" level="project" />
105105
</component>
106106
</module>

library/src/androidTest/java/com/qiniu/android/TestConfig.java

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,26 +8,23 @@
88
*/
99
public final class TestConfig {
1010
// TODO: 2020-05-09 bad token for testPutBytesWithFixedZoneUseBackupDomains
11-
// 华东上传凭证
11+
// 华东上传凭证
1212
public static final String bucket_z0 = "kodo-phone-zone0-space";
13-
public static final String token_z0 = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:OaOVs0Fx1YljeCSdE3bX7WXIlDE=:eyJzY29wZSI6ImtvZG8tcGhvbmUtem9uZTAtc3BhY2UiLCJkZWFkbGluZSI6MTY0NjYzMzIzNSwgInJldHVybkJvZHkiOiJ7XCJjYWxsYmFja1VybFwiOlwiaHR0cDpcL1wvY2FsbGJhY2suZGV2LnFpbml1LmlvXCIsIFwiZm9vXCI6JCh4OmZvbyksIFwiYmFyXCI6JCh4OmJhciksIFwibWltZVR5cGVcIjokKG1pbWVUeXBlKSwgXCJoYXNoXCI6JChldGFnKSwgXCJrZXlcIjokKGtleSksIFwiZm5hbWVcIjokKGZuYW1lKX0ifQ==";
13+
public static final String token_z0 = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:VSYUpM0l-xwbNtSH0jYzqjqJI5A=:eyJzY29wZSI6ImtvZG8tcGhvbmUtem9uZTAtc3BhY2UiLCJkZWFkbGluZSI6MTY1NzM1Mzc5MSwgInJldHVybkJvZHkiOiJ7XCJmb29cIjokKHg6Zm9vKSwgXCJiYXJcIjokKHg6YmFyKSwgXCJtaW1lVHlwZVwiOiQobWltZVR5cGUpLCBcImhhc2hcIjokKGV0YWcpLCBcImtleVwiOiQoa2V5KSwgXCJmbmFtZVwiOiQoZm5hbWUpfSJ9";
1414
// 华北上传凭证
1515
public static final String bucket_z1 = "kodo-phone-zone1-space";
16-
public static final String token_z1 = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:pz5RzDV5__H0wBtCZk_Eyhi1lzc=:eyJzY29wZSI6ImtvZG8tcGhvbmUtem9uZTEtc3BhY2UiLCJkZWFkbGluZSI6MTY0NjYzMzIzNSwgInJldHVybkJvZHkiOiJ7XCJjYWxsYmFja1VybFwiOlwiaHR0cDpcL1wvY2FsbGJhY2suZGV2LnFpbml1LmlvXCIsIFwiZm9vXCI6JCh4OmZvbyksIFwiYmFyXCI6JCh4OmJhciksIFwibWltZVR5cGVcIjokKG1pbWVUeXBlKSwgXCJoYXNoXCI6JChldGFnKSwgXCJrZXlcIjokKGtleSksIFwiZm5hbWVcIjokKGZuYW1lKX0ifQ==";
16+
public static final String token_z1 = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:wMAHQCA_pTuG4atQqWl6vjqBjQ4=:eyJzY29wZSI6ImtvZG8tcGhvbmUtem9uZTEtc3BhY2UiLCJkZWFkbGluZSI6MTY1NzM1Mzc5MSwgInJldHVybkJvZHkiOiJ7XCJmb29cIjokKHg6Zm9vKSwgXCJiYXJcIjokKHg6YmFyKSwgXCJtaW1lVHlwZVwiOiQobWltZVR5cGUpLCBcImhhc2hcIjokKGV0YWcpLCBcImtleVwiOiQoa2V5KSwgXCJmbmFtZVwiOiQoZm5hbWUpfSJ9";
1717
// 华南上传凭证
1818
public static final String bucket_z2 = "kodo-phone-zone2-space";
19-
public static final String token_z2 = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:f-As7eQSb4bra9wIPD8NtZoLj-I=:eyJzY29wZSI6ImtvZG8tcGhvbmUtem9uZTItc3BhY2UiLCJkZWFkbGluZSI6MTY0NjYzMzIzNSwgInJldHVybkJvZHkiOiJ7XCJjYWxsYmFja1VybFwiOlwiaHR0cDpcL1wvY2FsbGJhY2suZGV2LnFpbml1LmlvXCIsIFwiZm9vXCI6JCh4OmZvbyksIFwiYmFyXCI6JCh4OmJhciksIFwibWltZVR5cGVcIjokKG1pbWVUeXBlKSwgXCJoYXNoXCI6JChldGFnKSwgXCJrZXlcIjokKGtleSksIFwiZm5hbWVcIjokKGZuYW1lKX0ifQ==";
19+
public static final String token_z2 = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:uTnRnSynN9vGVzo8qnYT-QXjKIw=:eyJzY29wZSI6ImtvZG8tcGhvbmUtem9uZTItc3BhY2UiLCJkZWFkbGluZSI6MTY1NzM1Mzc5MSwgInJldHVybkJvZHkiOiJ7XCJmb29cIjokKHg6Zm9vKSwgXCJiYXJcIjokKHg6YmFyKSwgXCJtaW1lVHlwZVwiOiQobWltZVR5cGUpLCBcImhhc2hcIjokKGV0YWcpLCBcImtleVwiOiQoa2V5KSwgXCJmbmFtZVwiOiQoZm5hbWUpfSJ9";
2020
// 北美上传凭证
2121
public static final String bucket_na0 = "kodo-phone-zone-na0-space";
22-
public static final String token_na0 = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:REXUSlE442Vg_J-1tS_JN08stN4=:eyJzY29wZSI6ImtvZG8tcGhvbmUtem9uZS1uYTAtc3BhY2UiLCJkZWFkbGluZSI6MTY0NjYzMzIzNSwgInJldHVybkJvZHkiOiJ7XCJjYWxsYmFja1VybFwiOlwiaHR0cDpcL1wvY2FsbGJhY2suZGV2LnFpbml1LmlvXCIsIFwiZm9vXCI6JCh4OmZvbyksIFwiYmFyXCI6JCh4OmJhciksIFwibWltZVR5cGVcIjokKG1pbWVUeXBlKSwgXCJoYXNoXCI6JChldGFnKSwgXCJrZXlcIjokKGtleSksIFwiZm5hbWVcIjokKGZuYW1lKX0ifQ==";
22+
public static final String token_na0 = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:E_6g6R_SNaik9oepZElktanK8Pc=:eyJzY29wZSI6ImtvZG8tcGhvbmUtem9uZS1uYTAtc3BhY2UiLCJkZWFkbGluZSI6MTY1NzM1Mzc5MSwgInJldHVybkJvZHkiOiJ7XCJmb29cIjokKHg6Zm9vKSwgXCJiYXJcIjokKHg6YmFyKSwgXCJtaW1lVHlwZVwiOiQobWltZVR5cGUpLCBcImhhc2hcIjokKGV0YWcpLCBcImtleVwiOiQoa2V5KSwgXCJmbmFtZVwiOiQoZm5hbWUpfSJ9";
2323
// 东南亚上传凭证
2424
public static final String bucket_as0 = "kodo-phone-zone-as0-space";
25-
public static final String token_as0 = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:KJ5_t8Uz06R7HnajX-aLdDVexdo=:eyJzY29wZSI6ImtvZG8tcGhvbmUtem9uZS1hczAtc3BhY2UiLCJkZWFkbGluZSI6MTY0NjYzMzIzNSwgInJldHVybkJvZHkiOiJ7XCJjYWxsYmFja1VybFwiOlwiaHR0cDpcL1wvY2FsbGJhY2suZGV2LnFpbml1LmlvXCIsIFwiZm9vXCI6JCh4OmZvbyksIFwiYmFyXCI6JCh4OmJhciksIFwibWltZVR5cGVcIjokKG1pbWVUeXBlKSwgXCJoYXNoXCI6JChldGFnKSwgXCJrZXlcIjokKGtleSksIFwiZm5hbWVcIjokKGZuYW1lKX0ifQ==";
26-
// 雾存储华东一区
27-
public static final String bucket_fog_cn_east1 = "test-fog-cn-east-1";
28-
public static final String token_fog_cn_east1 = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:JPPu4hG6dc9AMTBag4eAujK_ldI=:eyJzY29wZSI6InRlc3QtZm9nLWNuLWVhc3QtMSIsImRlYWRsaW5lIjoxNjQ2NjMzMjM1LCAicmV0dXJuQm9keSI6IntcImNhbGxiYWNrVXJsXCI6XCJodHRwOlwvXC9jYWxsYmFjay5kZXYucWluaXUuaW9cIiwgXCJmb29cIjokKHg6Zm9vKSwgXCJiYXJcIjokKHg6YmFyKSwgXCJtaW1lVHlwZVwiOiQobWltZVR5cGUpLCBcImhhc2hcIjokKGV0YWcpLCBcImtleVwiOiQoa2V5KSwgXCJmbmFtZVwiOiQoZm5hbWUpfSJ9";
29-
public static final String invalidBucketToken = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:4y0ZaTdcqRcyMloKt_ujblr-WUA=:eyJzY29wZSI6InpvbmVfaW52YWxpZCIsImRlYWRsaW5lIjoxNjQ2NjMzMjM1LCAicmV0dXJuQm9keSI6IntcImNhbGxiYWNrVXJsXCI6XCJodHRwOlwvXC9jYWxsYmFjay5kZXYucWluaXUuaW9cIiwgXCJmb29cIjokKHg6Zm9vKSwgXCJiYXJcIjokKHg6YmFyKSwgXCJtaW1lVHlwZVwiOiQobWltZVR5cGUpLCBcImhhc2hcIjokKGV0YWcpLCBcImtleVwiOiQoa2V5KSwgXCJmbmFtZVwiOiQoZm5hbWUpfSJ9";
30-
25+
public static final String token_as0 = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:7O_yi3Gju89b_GLN8Ffd5NOvXYQ=:eyJzY29wZSI6ImtvZG8tcGhvbmUtem9uZS1hczAtc3BhY2UiLCJkZWFkbGluZSI6MTY1NzM1Mzc5MSwgInJldHVybkJvZHkiOiJ7XCJmb29cIjokKHg6Zm9vKSwgXCJiYXJcIjokKHg6YmFyKSwgXCJtaW1lVHlwZVwiOiQobWltZVR5cGUpLCBcImhhc2hcIjokKGV0YWcpLCBcImtleVwiOiQoa2V5KSwgXCJmbmFtZVwiOiQoZm5hbWUpfSJ9";
26+
public static final String invalidBucketToken = "dxVQk8gyk3WswArbNhdKIwmwibJ9nFsQhMNUmtIM:MxUCcdbRDl2V67pA6g_whNXejEk=:eyJzY29wZSI6InpvbmVfaW52YWxpZCIsImRlYWRsaW5lIjoxNjU3MzUzNzkxLCAicmV0dXJuQm9keSI6IntcImZvb1wiOiQoeDpmb28pLCBcImJhclwiOiQoeDpiYXIpLCBcIm1pbWVUeXBlXCI6JChtaW1lVHlwZSksIFwiaGFzaFwiOiQoZXRhZyksIFwia2V5XCI6JChrZXkpLCBcImZuYW1lXCI6JChmbmFtZSl9In0=";
27+
3128
// -----------
3229
public static final String ak = "bjtWBQXrcxgo7HWwlC_bgHg81j352_GhgBGZPeOW";
3330

library/src/main/java/com/qiniu/android/collect/ReportConfig.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ public class ReportConfig {
1616
public double interval;
1717

1818
/**
19-
* 记录文件大于 uploadThreshold 会触发上传,单位:字节 默认为4 * 1024
19+
* 记录文件大于 uploadThreshold 会触发上传,单位:字节 默认为16 * 1024
2020
*/
2121
public long uploadThreshold;
2222

2323
/**
24-
* 记录文件最大值 要大于 uploadThreshold 单位:字节 默认为2 * 1024 * 1024
24+
* 记录文件最大值 要大于 uploadThreshold 单位:字节 默认为20 * 1024 * 1024
2525
*/
2626
public long maxRecordFileSize;
2727

library/src/main/java/com/qiniu/android/common/Config.java

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -52,20 +52,13 @@ public final class Config {
5252
* <p>
5353
* 记录文件大于此值后暂停记录上传信息。
5454
*/
55-
public static int maxRecordFileSize = 2 * 1024 * 1024;
55+
public static int maxRecordFileSize = 20 * 1024 * 1024;
5656

5757
/**
5858
* 记录文件大于 uploadThreshold 后才可能触发上传,单位:字节。
59-
* <p>
60-
* 以 200,CwIAAF4znMnpno0U,up.qiniu.com,183.131.7.18,80,383.0,1481014578,262144 为例,
61-
* 100 条,约 7400Byte ;50 条,约 3700; 1024 约 13.8 条
62-
* <p>
63-
* chunkSize = 256 * 1024;putThreshold = 512 * 1024
64-
* 分片上传, 1M,最好情况下 5 个请求;10M,最好情况下 41 个请求
65-
* <p>
6659
* 可依据客户上传频率、文件大小做调整
6760
*/
68-
public static int uploadThreshold = 4 * 1024;
61+
public static int uploadThreshold = 16 * 1024;
6962

7063
/**
7164
* 每次上传最小时间间隔.单位:分钟

0 commit comments

Comments
 (0)