最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android 使用 okhttp3和retrofit2 進(jìn)行單文件和多文件上傳

 更新時(shí)間:2022年10月27日 10:48:14   作者:_MWY  
這篇文章主要介紹了Android 使用 okhttp3和retrofit2 進(jìn)行單文件和多文件上傳,開發(fā)項(xiàng)目中需要進(jìn)行單文件多文件的上傳功能,下面演示的ApiResponse是自己分裝的返回值,要根據(jù)自己的項(xiàng)目來(lái)完成,需要的朋友可以參考下

前言

開發(fā)項(xiàng)目中需要進(jìn)行單文件多文件的上傳功能,下面演示的ApiResponse是自己分裝的返回值,要根據(jù)自己的項(xiàng)目來(lái)完成。使用的mvvm框架,kotlin協(xié)程。

看下大體思路和傳參形式,僅供參考

一、單文件上傳

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())

總結(jié)

 記錄總結(jié),要根據(jù)自己的框架進(jìn)行參考改造。

到此這篇關(guān)于Android 使用 okhttp3和retrofit2 進(jìn)行單文件和多文件上傳的文章就介紹到這了,更多相關(guān)Android 單文件和多文件上傳內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

孟津县| 莱州市| 宜君县| 民丰县| 东丰县| 抚松县| 鄂托克前旗| 西昌市| 信阳市| 柯坪县| 潮安县| 大关县| 红桥区| 柳江县| 龙南县| 龙游县| 富宁县| 祥云县| 汽车| 怀来县| 万安县| 遵义市| 介休市| 彭泽县| 上犹县| 新巴尔虎左旗| 酉阳| 宝山区| 绵竹市| 称多县| 珠海市| 香河县| 德格县| 永清县| 永州市| 彭山县| 郯城县| 九台市| 定州市| 双桥区| 阜平县|