记录七牛云上传图片
1、首先在七牛云注册,实名开发者账号 https://portal.qiniu.com/kodo/bucket?shouldCreateBucket=true
2、绑定二级域名 https://developer.qiniu.com/fusion/kb/1322/how-to-configure-cname-domain-name
1、在自己已有的域名为一级域名(比如阿里云服务器购买的已经备案成功的域名),在七牛云添加二级域名:
如在一级域名前面增加 cdn 等
如:现有一级域名:xxx
点击绑定域名 创建七牛云二级域名:cdn.xxx
添加完后在自己域名对应的工作台,比如阿里云服务,找到域名,进行解析
主机记录:二级域名前缀 如:cdn
记录类型:选择 CNAME
线路:默认
记录值:七牛云域名对应CNAME值上即可点击复制
保存即可配置完成
2、参考SDK文档 https://developer.qiniu.com/kodo/1236/android
接入上传的图片的代码
//七牛 implementation 'com.qiniu:qiniu-android-sdk:8.0.+' implementation 'com.qiniu:qiniu-java-sdk:7.4.+'
import android.util.Log; import com.qiniu.android.common.FixedZone; import com.qiniu.android.storage.Configuration; import com.qiniu.android.storage.UploadManager; import com.qiniu.util.Auth; import java.io.File; import java.util.ArrayList; public class QunitHelp { // 设置需要操作的账号的AK和SK private static final String ACCESS_KEY = "七牛云的ACCESS_KEY "; private static final String SECRET_KEY = "七牛云的SECRET_KEY "; // 要上传的空间名 private static final String bucketname = "七牛云自己的空间名称"; // 密钥 private static final Auth auth = Auth.create(ACCESS_KEY, SECRET_KEY); private static String upToken = auth.uploadToken(bucketname); /** * 上传 * //指定 zone 的具体区域 * //FixedZone.zone0 华东机房 * //FixedZone.zone1 华北机房 * //FixedZone.zone2 华南机房 * //FixedZone.zoneNa0 北美机房 * //自动识别上传区域 * //AutoZone.autoZone */ public static void upload(File file, ArrayList<String> files) { Configuration config = new Configuration.Builder() .zone(FixedZone.zone0) .build(); UploadManager uploadManager = new UploadManager(config); // data = <File 对象、或 文件路径、或 字节数组> uploadManager.put(file, file.getName(), upToken, (key, info, res) -> { //res 包含 hash、key 等信息,具体字段取决于上传策略的设置 if (info.isOK()) { Log.i("qiniu", "Upload Success"); files.add(key); } else { Log.i("qiniu", "Upload Fail"); //如果失败,这里可以把 info 信息上报自己的服务器,便于后面分析上传错误原因 } Log.i("qiniu", key + ",\r\n " + info + ",\r\n " + res); }, null); } }