Skip to content

Commit 36dc7fa

Browse files
author
ricken
committed
first publish
0 parents  commit 36dc7fa

File tree

601 files changed

+81648
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

601 files changed

+81648
-0
lines changed

CHANGELOG.md

Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
## V5.5.3
2+
1. 重构 host 逻辑,支持用户自定义 host 格式
3+
2. 支持通过 uri 上传
4+
3. 默认签名所有的 header 和 path
5+
6+
## V5.5.2
7+
1. fix TransferManager 上传时动态修改分片大小的 bug.
8+
2. 增加是否使能 DNS 缓存的接口
9+
3. 支持创建多 AZ 存储桶
10+
11+
12+
## V5.5.1
13+
14+
1. 支持图片处理
15+
2. 支持全球加速上传
16+
3. 支持用户自定义 Content-Type 和 Host 头部
17+
4. COSXMLUploadTask 增加 pauseSafely() 接口,之前的 pause() 接口在进度 100% 时暂停并恢复时可能会报错。
18+
19+
## V5.5.0
20+
21+
1. 增加 DNS 缓存
22+
2. 优化重试逻辑
23+
24+
25+
## V5.4.32
26+
27+
1. 优化上传逻辑
28+
29+
## V5.4.31
30+
31+
1. 优化上传监控逻辑
32+
2. 修复部分情况下发送错误时,ServiceException 为空
33+
34+
## V5.4.30
35+
36+
1. 统一 cosxml 和 mtaUtils、logUtils 的版本
37+
2. 修复部分请求的 xml 解析错误
38+
39+
## V5.4.29
40+
41+
1. 修复 foundation 内部线程池处理
42+
43+
## V5.4.28
44+
45+
1. 修复暂停上传下载任务后,恢复任务失败问题
46+
2. 优化 TransferManager 线程池处理
47+
48+
## V5.4.25 ~ V5.4.27
49+
50+
1. 修复偶现 NullPointerException 问题
51+
2. 修复签名时间校验多线程问题
52+
53+
54+
## V5.4.24
55+
56+
1. 修复了下载没有回调问题
57+
58+
## V5.4.23
59+
60+
1. 修复 putobject 上传大文件计算MD5 报错
61+
2. 支持[100k, 1M)内分片续传
62+
63+
64+
## V5.4.21 ~ V5.4.22
65+
66+
1. fix bugs
67+
68+
## V5.4.20
69+
70+
1. 增加了Object操作传入key为空的校验;
71+
2. logServer 增加判空处理;
72+
3. 其他一些优化;
73+
74+
## V5.4.19
75+
1. TransferManager 提供了上传字节数组 和 字节流方法
76+
2. SDK 内部针对签名部分进行了再次优化
77+
3. Okhttp 需要使用3.9及以上版本
78+
4. 修复其他一些bug
79+
80+
## V5.4.18
81+
1. 修正了SDK签名算法, 默认签所有参数和头部字段,增加了安全性,如果是采用 jar 包集成的方式,qcloud-foundation jar 也需要同步更新;
82+
2. 废弃了设置签名时间的接口,签名过期时间默认和密钥过期时间一样;
83+
3. 修正了 PostObject 在主线程获取密钥的 bug;
84+
4. 重构了设置域名的接口,增加了多种设置方式;
85+
5. 增加了接口获取请求性能参数;
86+
6. 修复了上传请求不会触发本地超时机制的bug;
87+
7. 修复了其他一些bug;
88+
89+
## V5.4.17
90+
91+
1. CosClientException中增加了errorcode,用于区分CosClientException类型
92+
2. 修复了使用TransferManager上传、下载、复制遇到不能抛出异常错误的bug问题
93+
3. 为了满足Android 版本兼容性,更改了日志显示控件,使用ListView替代RecycleView
94+
4. 更改了mta依赖问题,使用gradle方式替代jar包形式
95+
96+
## V5.4.14 ~ V5.4.16
97+
98+
1. 修复了遇到的bug
99+
2. 增加了查询日志显示功能
100+
3. CosXmlService 支持 QCloudSigner 方式鉴权。
101+
102+
## V5.4.13
103+
104+
1. 添加COSXMLUploadTask 代替 UploadServer
105+
2. 添加COSDownloadTask 代替 Downloader
106+
3. 添加COSXMLCopyTask 代替 CopyServer
107+
4. 引入腾讯 mta检测
108+
109+
## V5.4.13
110+
111+
1. 修复 bug。
112+
113+
## V5.4.12
114+
115+
1. gradle 集成由 aar 包变为 jar 包;
116+
2. 给 CosSimpleService 添加 addVerifiedHost() 接口,不对特定的 host 校验 HTTPS 证书。
117+
118+
## 5.4.11
119+
120+
1. 修复 QCloudTask executeNow() 方法在特殊情况下的偶发 NullPointerExcetion;
121+
2. CosXmlSimpleService 缓存信息路径由 getExternalCacheDir() 变更为 getFilesDir()。
122+
123+
## V5.4.8 ~ 5.4.10
124+
125+
1. 修复特殊情况计算签名的bug。
126+
2. 支持动态加速,包括普通上传和 UploadService 上传;
127+
3. 支持 SSEC 和 SEE-KMS 加密。
128+
129+
## V5.4.7
130+
131+
1. 增加 bolts-tasks 库。
132+
133+
## V5.4.6
134+
135+
1. 修复 UploadService 上传 bug。
136+
137+
## V5.4.5
138+
139+
1. 修复 bug。
140+
141+
142+
## V1.3
143+
144+
缩小了包的体积大小;
145+
146+
147+
## V1.2
148+
149+
1. 所有 Request API, 均只提供了带参数的构造方法;
150+
2. 支持 CAM方式 获取临时密钥,具体请查看 `com.tencent.qcloud.core.network.auth.LocalSessionCredentialProvider`

LICENSE

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
2+
Copyright (c) 2017 腾讯云
3+
4+
Permission is hereby granted, free of charge, to any person obtaining a copy
5+
of this software and associated documentation files (the "Software"), to deal
6+
in the Software without restriction, including without limitation the rights
7+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8+
copies of the Software, and to permit persons to whom the Software is
9+
furnished to do so, subject to the following conditions:
10+
11+
The above copyright notice and this permission notice shall be included in all
12+
copies or substantial portions of the Software.
13+
14+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20+
SOFTWARE.

QCloudCosXml/.gitignore

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
*.iml
2+
.gradle
3+
/local.properties
4+
/.idea/workspace.xml
5+
/.idea/libraries
6+
.DS_Store
7+
/build
8+
/captures
9+
myapplication
10+
myapplication2

QCloudCosXml/Jenkinsfile

Whitespace-only changes.

QCloudCosXml/build.gradle

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
// Top-level build file where you can add configuration options common to all sub-projects/modules.
2+
3+
buildscript {
4+
// ext.kotlin_version = '1.3.41'
5+
apply from: './version.gradle'
6+
7+
repositories {
8+
mavenLocal()
9+
google()
10+
jcenter()
11+
}
12+
dependencies {
13+
classpath 'com.android.tools.build:gradle:3.4.1'
14+
classpath "com.github.dcendents:android-maven-gradle-plugin:2.0"
15+
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.0'
16+
17+
// NOTE: Do not place your application dependencies here; they belong
18+
// in the individual module build.gradle files
19+
// classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
20+
}
21+
}
22+
23+
allprojects {
24+
repositories {
25+
mavenLocal()
26+
google()
27+
jcenter()
28+
29+
// maven {
30+
// url "https://dl.bintray.com/tencentqcloudterminal/maven"
31+
// }
32+
}
33+
}
34+
35+
task clean(type: Delete) {
36+
delete rootProject.buildDir
37+
}
38+
39+
tasks.withType(JavaCompile) {
40+
options.encoding = "UTF-8"
41+
}
42+
43+
tasks.withType(Javadoc) {
44+
options.addStringOption('Xdoclint:none', '-quiet')
45+
options.addStringOption('encoding', 'UTF-8')
46+
options.addStringOption('charSet', 'UTF-8')
47+
}

QCloudCosXml/cosext/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/build

QCloudCosXml/cosext/build.gradle

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
apply plugin: 'com.android.library'
2+
3+
android {
4+
compileSdkVersion 28
5+
6+
defaultConfig {
7+
minSdkVersion 19
8+
targetSdkVersion 28
9+
versionCode sdkVersionCode
10+
versionName "5.5.1"
11+
12+
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
13+
14+
}
15+
16+
buildTypes {
17+
release {
18+
minifyEnabled false
19+
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
20+
jniDebuggable = false
21+
}
22+
debug {
23+
jniDebuggable = true
24+
renderscriptDebuggable = true
25+
}
26+
}
27+
28+
flavorDimensions "production"
29+
30+
productFlavors {
31+
normal { dimension "production" }
32+
}
33+
compileOptions {
34+
sourceCompatibility = '1.8'
35+
targetCompatibility = '1.8'
36+
}
37+
38+
39+
}
40+
41+
dependencies {
42+
implementation fileTree(dir: 'libs', include: ['*.jar'])
43+
44+
compileOnly 'com.android.support:appcompat-v7:27.1.1'
45+
testCompileOnly 'junit:junit:4.12'
46+
androidTestImplementation 'com.android.support.test:runner:1.0.2'
47+
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
48+
49+
api project(path: ':cosxml')
50+
51+
implementation "androidx.work:work-runtime:2.2.0"
52+
annotationProcessor "androidx.room:room-compiler:2.1.0"
53+
implementation "androidx.concurrent:concurrent-futures:1.0.0"
54+
}
55+
56+
project.extensions.add('artifactId', 'cosxml-ext')
57+
project.extensions.add('packageName', 'QCloudCosXmlExt')
58+
project.extensions.add('artifactProduct', 'normal')
59+
project.extensions.add('artifactDesc', 'the tencent cloud cosxml-ext android sdk')
60+
61+
apply from: '../../publish.gradle'
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Add project specific ProGuard rules here.
2+
# You can control the set of applied configuration files using the
3+
# proguardFiles setting in build.gradle.
4+
#
5+
# For more details, see
6+
# http://developer.android.com/guide/developing/tools/proguard.html
7+
8+
# If your project uses WebView with JS, uncomment the following
9+
# and specify the fully qualified class name to the JavaScript interface
10+
# class:
11+
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12+
# public *;
13+
#}
14+
15+
# Uncomment this to preserve the line number information for
16+
# debugging stack traces.
17+
#-keepattributes SourceFile,LineNumberTable
18+
19+
# If you keep the line number information, uncomment this to
20+
# hide the original source file name.
21+
#-renamesourcefileattribute SourceFile
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
package com.tencent.cos.xml;
2+
3+
import android.content.Context;
4+
import android.support.test.InstrumentationRegistry;
5+
import android.support.test.runner.AndroidJUnit4;
6+
7+
import org.junit.Test;
8+
import org.junit.runner.RunWith;
9+
10+
import static org.junit.Assert.*;
11+
12+
/**
13+
* Instrumented test, which will execute on an Android device.
14+
*
15+
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
16+
*/
17+
@RunWith(AndroidJUnit4.class)
18+
public class ExampleInstrumentedTest {
19+
@Test
20+
public void useAppContext() {
21+
// Context of the app under test.
22+
Context appContext = InstrumentationRegistry.getTargetContext();
23+
24+
assertEquals("com.tencent.cos.xml.test", appContext.getPackageName());
25+
}
26+
}
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
2+
package="com.tencent.cos.xml" />

0 commit comments

Comments
 (0)