web端参见:Springboot 技术整合--笔记11--集成Guns--8集成七牛云-对象存储
build.gradle导入七牛
implementation 'com.qiniu:qiniu-android-sdk:7.5.0'
获取web端返回的token
上传文件
if (WechatAndHostParam.qiNiuUploadToken !=null){//web端返回的token
try {
Configuration config = new Configuration.Builder() //https://developer.qiniu.com/kodo/sdk/1236/android
.chunkSize(512 * 1024)
.putThreshhold(1024 * 1024)
.connectTimeout(30)
.useHttps(true)
.responseTimeout(60)// 服务器响应超时。默认60秒
//.zone(FixedZone.zone0) // 设置区域,不指定会自动选择。指定不同区域的上传域名、备用域名、备用IP。
.zone(FixedZone.zone2) // 设置华南区域,指定不同区域的上传域名、备用域名、备用IP。 https://segmentfault.com/q/1010000008596429
.build();
UploadManager uploadManager = new UploadManager(config);
uploadManager.put("/sdcard/czgDownload/voice/voice001.amr"
, UUID.randomUUID().toString().replace("-", "") + ".amr", WechatAndHostParam.qiNiuUploadToken
, new UpCompletionHandler() {
@Override
public void complete(String key, ResponseInfo info, JSONObject response) { //response ={"error":"incorrect region, please use up-z2.qiniup.com"}
//res包含hash、key等信息,具体字段取决于上传策略的设置 回调中key:36d5895cba64403faf8b3ef8ea7c8cb0.amr
if (info.isOK()) {
Log.i("qiniu", "Upload Success"); //正确的:{"hash":"Ft-886ksoUqzTBhiUewWITF_mcnB","key":"14e357c7239b439188065d507b25bd1f.amr"}
//http://q349xx31l.bkt.clouddn.com/14e357c7239b439188065d507b25bd1f.amr
} else {
Log.i("qiniu", "Upload Fail");
//如果失败,这里可以把info信息上报自己的服务器,便于后面分析上传错误原因
}
Log.i("qiniu", key + ",\r\n " + info + ",\r\n " + response);
}
},null);
}catch (Exception e){
Log.e(TAG,"上传到七牛云失败");
}
}
七牛云对象存储/空间管理/文件管理
image.png image.png image.png#访问url = 域名+上传返回的key
http://q349xx31l.bkt.clouddn.com/14e357c7239b439188065d507b25bd1f.amr
注意问题:
如果没用指定好区域返回错误如下
response ={"error":"incorrect region, please use up-z2.qiniup.com"}
//————http上传,指定zone的具体区域——
//Zone.zone0:华东
//Zone.zone1:华北
//Zone.zone2:华南
//Zone.zoneNa0:北美
//———http上传,自动识别上传区域——
//Zone.httpAutoZone
//———https上传,自动识别上传区域——
//Zone.httpsAutoZone
网友评论