Android R如何将图片到上传OSS
发表于:2025-02-13 作者:千家信息网编辑
千家信息网最后更新 2025年02月13日,这篇文章将为大家详细讲解有关Android R如何将图片到上传OSS,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。首先先初始化oss对象
千家信息网最后更新 2025年02月13日Android R如何将图片到上传OSS
这篇文章将为大家详细讲解有关Android R如何将图片到上传OSS,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
首先先初始化oss对象
// ACCESS_ID,ACCESS_KEY是在[阿里云](https://l.gushuji.site/aliyun)申请的 OSSCredentialProvider credentialProvider = new OSSPlainTextAKSKCredentialProvider(ACCESS_ID, ACCESS_KEY); ClientConfiguration conf = new ClientConfiguration(); conf.setConnectionTimeout(15 * 1000); // 连接超时,默认15秒 conf.setSocketTimeout(15 * 1000); // socket超时,默认15秒 conf.setMaxConcurrentRequest(8); // 最大并发请求数,默认5个 conf.setMaxErrorRetry(2); // 失败后最大重试次数,默认2次 // oss为全局变量,OSS_ENDPOINT是一个OSS区域地址 oss = new OSSClient(getApplicationContext(), OSS_ENDPOINT, credentialProvider, conf);
oss上传图片分为同步和异步
同步的方法
// 构造上传请求PutObjectRequest put = new PutObjectRequest("", " ", " ");// 文件元信息的设置是可选的// ObjectMetadata metadata = new ObjectMetadata();// metadata.setContentType("application/octet-stream"); // 设置content-type// metadata.setContentMD5(BinaryUtil.calculateBase64Md5(uploadFilePath)); // 校验MD5// put.setMetadata(metadata);try { PutObjectResult putResult = oss.putObject(put); Log.d("PutObject", "UploadSuccess"); Log.d("ETag", putResult.getETag()); Log.d("RequestId", putResult.getRequestId());} catch (ClientException e) { // 本地异常如网络异常等 e.printStackTrace();} catch (ServiceException e) { // 服务异常 Log.e("RequestId", e.getRequestId()); Log.e("ErrorCode", e.getErrorCode()); Log.e("HostId", e.getHostId()); Log.e("RawMessage", e.getRawMessage());}
此处这个bucketName是在阿里云平台上配置的 用来储存文件 可以设置私有公有等属性
objectKey为文件的名字 用来从平台上查询图片
FilePath为所选文件的uri路径
异步上传的方法
// 构造上传请求PutObjectRequest put = new PutObjectRequest("", " ", " ");// 异步上传时可以设置进度回调put.setProgressCallback(new OSSProgressCallback () { @Override public void onProgress(PutObjectRequest request, long currentSize, long totalSize) { Log.d("PutObject", "currentSize: " + currentSize + " totalSize: " + totalSize); }});OSSAsyncTask task = oss.asyncPutObject(put, new OSSCompletedCallback () { @Override public void onSuccess(PutObjectRequest request, PutObjectResult result) { Log.d("PutObject", "UploadSuccess"); Log.d("ETag", result.getETag()); Log.d("RequestId", result.getRequestId()); } @Override public void onFailure(PutObjectRequest request, ClientException clientExcepion, ServiceException serviceException) { // 请求异常 if (clientExcepion != null) { // 本地异常如网络异常等 clientExcepion.printStackTrace(); } if (serviceException != null) { // 服务异常 Log.e("ErrorCode", serviceException.getErrorCode()); Log.e("RequestId", serviceException.getRequestId()); Log.e("HostId", serviceException.getHostId()); Log.e("RawMessage", serviceException.getRawMessage()); } }});// task.cancel(); // 可以取消任务// task.waitUntilFinished(); // 可以等待任务完成
一般上传成功时候 客户端需要把文件的objectkey传给后台 后台通过拼接然后把图片的url返回给我们
关于Android R如何将图片到上传OSS就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
图片
文件
最大
任务
内容
后台
平台
文章
方法
是在
更多
知识
篇文章
网络
阿里
同步
服务
不错
成功
信息
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数字政府网络安全管理研究现状
汽车维修线控网络技术
近五年的网络安全事件
网络安全等级保护新国标
农村土地确权数据库
网络技术专业研究生
看网络安全教育公开课观后感
软件开发平台分类
数据库开发后要学点什么
网络安全专家谭晓生视频
宝中国网络技术有限公司待遇
广东三脚猫网络技术公司
信威 软件开发
网络安全手抄报信息栏
服务器改安全端口
我的世界服务器怎么加管理
明日之后服务器鹿野原
天津虚拟主机空间云服务器
服务器功率
哪个网易服务器最好用
pokemmo选哪个服务器
dnf台服数据库修改等级
导致数据库实例关闭
我的世界基岩版定位服务器中
网络安全 电脑设置
虹口区优势网络技术近期价格
连接数据库用什么技术要求
车辆识别软件提示数据库连接失败
简述数据库技术发展简史
国家信息化网络安全管理平台