添加依赖

    implementation 'com.github.lovetuzitong:MultiImageSelector:1.2'

权限

 <uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.CAMERA" /><!-- 允许程序设置内置sd卡的写权限 --><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><!-- 允许程序访问WiFi网络信息 --><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><!-- 允许程序读写手机状态和身份 --><uses-permission android:name="android.permission.READ_PHONE_STATE" /><!-- 允许程序访问CellID或WiFi热点来获取粗略的位置 --><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

application下添加配置(不用改)

 <activityandroid:configChanges="orientation|screenSize"android:name="me.nereo.multi_image_selector.MultiImageSelectorActivity" />

主页面(可以走MVP逻辑自己写一下吧)

public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Intent intent = new Intent(this, MultiImageSelectorActivity.class);intent.putExtra(MultiImageSelectorActivity.EXTRA_SHOW_CAMERA, true);intent.putExtra(MultiImageSelectorActivity.EXTRA_SELECT_COUNT, 9);intent.putExtra(MultiImageSelectorActivity.EXTRA_SELECT_MODE, MultiImageSelectorActivity.MODE_MULTI);startActivityForResult(intent, 100);}@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);if (requestCode == 100) {if (resultCode == RESULT_OK) {// Get the result list of select image pathsList<String> path = data.getStringArrayListExtra(MultiImageSelectorActivity.EXTRA_RESULT);Map<String, String> map = new HashMap<>();map.put("commodityId", "1");map.put("content", "this is test");List<File> fileList = new ArrayList<>();for(String str : path) {File file = new File(str);fileList.add(file);}RetrofitUtil.getInstance().postMoreImage("请求地址", map, fileList, new RetrofitUtil.ICallBack() {@Overridepublic void successData(String result) {Log.i("dj", "setSuccess is " + result);}@Overridepublic void failureData(String error) {Log.i("dj", "SetField is " + error);}});}}}
}

网络轻轻封装接口里

 @POST@MultipartObservable<ResponseBody> postMoreImage(@Url String url//接口地址, @QueryMap Map<String, String> map //入参数, @Part MultipartBody.Part[] parts);//图片地址

网络轻轻封装类里

 //多图片上传public void postMoreImage(String url, Map<String, String> params, List<File> list, ICallBack callBack) {MultipartBody.Part[] parts = new MultipartBody.Part[list.size()];int index = 0;for (File file : list) {RequestBody requestBody = RequestBody.create(MediaType.parse("multipart/form-data"), file);MultipartBody.Part filePart = MultipartBody.Part.createFormData("image", file.getName(), requestBody);parts[index] = filePart;index++;}mObservedApis.postMoreImage(url, params, parts).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(getObserver(callBack));}

Retrofit+RxJava简单使用(GET、POST):网络封装类简单使用

原git地址:MultiImageSelector

Android仿微信上传图片发朋友圈相关推荐

  1. 微信hook发朋友圈

    微信hook发朋友圈其实就是发送xml 我已经找到了xml文本,但是找不到发送call 太难了. 现将朋友圈xml分享出来. 有能力的人自己找发朋友圈的call吧.找到了,分享一下. 朋友圈XML: ...

  2. Python Adb Shell UiAutomator -- 微信自动发朋友圈/点赞/...

    自动点击特定元素 通过python调用adb命令实现用元素名称.id.class定位元素 http://blog.csdn.net/gb112211/article/details/33730221 ...

  3. 微信朋友圈怎么发文字?微信怎么发朋友圈只发文字?

    微信朋友圈怎么发文字?微信我们玩的多了,现在微信不仅仅只是为了聊天,甚至大部分人打电话也是在微信的语音通话上实现了,而且对应QQ空间的朋友圈也是每天必须逛一逛的地方之一. 要说朋友圈的话,我们看的多, ...

  4. 微信自动发朋友圈源码

    目前微信营销行业主要有两大神器,云控和群控,对于群控大家可能多少有些了解.总所周知,群控就是一种通过系统,实现一台PC控制百台手机微信的新媒体的一种营销软件,而云控系统核心功能与群控大致一样,主要区别 ...

  5. android 自动加微信群,如何完美实现微信自动发朋友圈自动添加好友等等

    wechat 背景 要实现微信自动化,大致有这么几种办法 基于Web微信API的框架 如 # 基于xposed 插件开发 ,通过广播方式和sdk 交互,只要发送广播就可以自动发送朋友圈,但是实现难度相 ...

  6. uniapp可以封装组件嘛_uniapp聊天App实例|vue+uniapp仿微信界面|红包|朋友圈

    一.功能阐述 今天给大家分享的是基于UniApp+Vue+Vuex+swiper+uniPop等技术开发的仿微信原生App聊天室|仿微信聊天界面实例项目uniapp-chatroom,实现了发送图文消 ...

  7. imchat视频聊天室 linux,基于Nuxt+Vant聊天模板|nuxt.js仿微信界面|红包|朋友圈

    项目说明 > [NuxtIMChat项目]是基于vue.js+nuxt.js+vuex+webpack+vant-ui开发的仿微信聊天实例.实现了消息发送.图片/视频预览.下拉刷新/长按弹窗.朋 ...

  8. android实现微信分享、朋友圈分享功能

    相信做app的都遇到要分享朋友圈,或者把东西分享给别人的这个功能,下面就是实现这个功能的代码. 要是遇到什么问题,在评论区留言,我会在第一时间回复哦!!! 1.第一步添加依赖 implementati ...

  9. android qq微信分享到朋友圈,android实现微信朋友圈和微信好友分享功能

    今天的这篇文章是基于上一篇微信登录的基础实现的.可以先看看我的微信登录的实现. 废话不多说,先看运行效果 首界面,点击微信登录,弹出分享菜单,楼主比较懒,图片和按钮文字都没换,希望大家不要介意 点击微 ...

最新文章

  1. Android selector
  2. 一个简单的路由映射,让你的树莓派通过SSH外网可访问
  3. leetcode347 - Top K Frequent Elements - medium
  4. SoaBox 1.1.6 GA 发布,SOA 模拟环境
  5. PG SQL数据库读写分离的思路
  6. JS开源框架Stimulus:让web应用在移动端达到原生体验!
  7. 有钱可以多任性?OpenAI提出人肉模型训练,文本摘要全面超越人类表现!
  8. 19软件班专业英语学期总结
  9. VMware vSphere Documentation(产品文档)
  10. 如何使用go读写excel
  11. CCF201412-4 最优灌溉(解法二)(100分)【废除!!!】
  12. update set命令用来修改表中的数据
  13. 人工智能 图片识别 图像识别
  14. Could not find a version that satisfies the requirement pytz (from django)
  15. Newcoder lxh裁木棍 (不开long double见祖宗 ceil前不加long long也去
  16. 看小伙如何跟反爬抗争到底
  17. linux装回win10系统无法开机,ghost win10系统安装后无法启动怎么办
  18. 2022中国开发者影响力年度榜单揭晓,华为、阿里、腾讯等入选年度开源贡献企业 | 美通社头条...
  19. 优胜劣汰,WiFi会被5G淘汰吗?
  20. OCJP 考试题之七

热门文章

  1. FLStudio21中文版本全部新功能讲解
  2. 图解刘谦如何手穿玻璃桌(详细图文说明)
  3. android系统应用开发常用的adb命令个人收藏集锦(不断更新)
  4. 修图教程:为照片增加云雾效果
  5. WordPress博客系统搜索引擎优化seo全攻略-新华站长网
  6. pptpd linux centos7,centos7配置pptpd
  7. 美丽离岛兰屿印象图集
  8. java文件乱码_java文件读取出现乱码解决方法
  9. Win10下的一些常用快捷键
  10. 曲面积分的投影法_第二型曲面积分的投影法与对称性