Android 使用 okhttp3和retrofit2 进行单文件和多文件上传
更新时间:2022年10月27日 10:48:14 作者:_MWY
这篇文章主要介绍了Android 使用 okhttp3和retrofit2 进行单文件和多文件上传,开发项目中需要进行单文件多文件的上传功能,下面演示的ApiResponse是自己分装的返回值,要根据自己的项目来完成,需要的朋友可以参考下
前言
开发项目中需要进行单文件多文件的上传功能,下面演示的ApiResponse是自己分装的返回值,要根据自己的项目来完成。使用的mvvm框架,kotlin协程。
看下大体思路和传参形式,仅供参考
一、单文件上传
1、apiService中
@Multipart @POST("xxxx/xxx") suspend fun upload( @Part part: MultipartBody.Part, @Query("code") code: String ): ApiResponse<String>
2、acivity代码
val file = File(it) val requestBody: RequestBody = RequestBody.create(MediaType.parse("image/*"), file) val part = MultipartBody.Part.createFormData("file", file.getName(), requestBody) mViewModel.upload(part)
二、多文件上传
1、apiservice中
@POST("xxx/xxxxs") suspend fun uploads( @Body part: MultipartBody, @Query("code") code: String ): ApiResponse<String>
2、acivity代码
val builder = MultipartBody.Builder() builder.setType(MultipartBody.FORM) getDataList()?.filter { !it.filePath.isNullOrEmpty() }.forEach { val file = File(it.filePath) builder.addFormDataPart( "files", file.getName(), RequestBody.create(MediaType.parse("image/jpg"), file) ) } mViewModel.uploads(builder.build())
总结
记录总结,要根据自己的框架进行参考改造。
到此这篇关于Android 使用 okhttp3和retrofit2 进行单文件和多文件上传的文章就介绍到这了,更多相关Android 单文件和多文件上传内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:
- OkHttp拦截器在Android网络中的使用和工作原理
- Android入门之使用OKHttp多线程下载文件
- Android基于OkHttp实现文件上传功能
- Android使用OKhttp3实现登录注册功能+springboot搭建后端的详细过程
- Android的简单前后端交互(okHttp+springboot+mysql)
- Android Okhttp断点续传面试深入解析
- Android使用OkHttp发送post请求
- Android使用OkHttp进行网络同步异步操作
- Android视频/音频缓存框架AndroidVideoCache(Okhttp)详解
- Android OkHttp实现全局过期token自动刷新示例
- OkHttp原理分析小结
相关文章
Android自定义WaveProgressView实现水波纹加载需求
这篇文章主要为大家详细介绍了Android自定义WaveProgressView实现水波纹加载需求,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-09-09基于Android studio3.6的JNI教程之ncnn之语义分割ENet
这篇文章主要介绍了基于Android studio3.6的JNI教程之ncnn之语义分割ENet的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值 ,需要的朋友可以参考下2020-03-03
最新评论