最终的效果图,右下角微信多图为自定义调用系统分享,分享到微信。

在你能正常调用share sdk的时候想在原本的基础上加自定义的分享非常的简单。

它的官网已经给出了代码,但是给的不是很清楚。

lz毕竟是新手所以去问了客服(问第一个给我的是错误答案,坑了我。问了第二个才让我写了出来),下面直接上代码。

在源码里面有写好的添加方法,直接调用即可(在OnekeyShare类里)

在你调用分享的类里加上:

//自定义分享,微信多图分享Bitmap enableLogo = BitmapFactory.decodeResource(context.getResources(),R.mipmap.sharepic);Bitmap disableLogo = BitmapFactory.decodeResource(context.getResources(),R.mipmap.sharepic);String label = "微信多图";View.OnClickListener listener = newView.OnClickListener() {

public voidonClick(View v) {

}

};

上面的两个logo是显示的图片,label是下面的名字,再接着下面就是点击你加分享的点击事件了。

上面的写完调用添加自定义分享的方法:

oks.setCustomerLogo(enableLogo,disableLogo,label,listener);// 启动分享GUIoks.show(context);

oks是  OnekeyShare oks = new

OnekeyShare;

这样子就可以在share sdk的原基础上完成你自定义添加的分享了。

下面说调用系统的分享,多图分享到微信:

这个是最终分享的效果图,你还可以自行的添加或删除分享的图片。

微信官网给出的分享只能分享一张图片,想要发多张(微信朋友圈最多只能发九张图片)怎么办呢?每个手机的系统分享可调微信多图分享。 好了不扯了,下面上代码:

private staticRunnable saveFileRunnable= newRunnable(){

@Overridepublic voidrun() {

try{

for(inti = 0;i < 9;i++) {

String[] ss = stringss[i].split("/");booleansaveTrue = MyTools.downloadLyWithName(AppStatic.Url_Base+stringss[i],ss[5],fileName,mContext);}

// 遍历 SD 卡下 .png 文件通过微信分享File file = newFile(Environment.getExternalStorageDirectory() + "/BangMai/images/"+ fileName);File[] files = file.listFiles(newFileFilter() {

@Overridepublic booleanaccept(File pathname) {

if(pathname.getName().endsWith(".jpg")) {

return true;}

return false;}

});Intent intent = newIntent();ComponentName comp = newComponentName("com.tencent.mm","com.tencent.mm.ui.tools.ShareToTimeLineUI");intent.setComponent(comp);intent.setAction(Intent.ACTION_SEND_MULTIPLE);intent.setType("image/*");ArrayList imageUris = newArrayList();for(File f : files) {

imageUris.add(Uri.fromFile(f));}

intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM,imageUris);intent.putExtra("Kdescription","我分享成功啦!!!!!!");// 这里可要可不要,这句话的意思是直接会显示在发表时候的文字mContext.startActivity(intent);} catch(Exception e) {

e.printStackTrace();}

}

};

调用方法:

newThread(saveFileRunnable).start();

在你的OnClick事件里面加上这句就可以了。

因为是调用系统分享的方法,所以你要分享的图片必须要下载到本地分享的时候再从本地取出。try里面的第一个for是我自己写的下载图片的方法,你可以换成你自己写的。

这样子就可以在你的程序中调用系统的多图分享,分享到微信了。

最面是我的图片下载类:

// 保存带名称的图片public staticBoolean downloadLyWithName(String url,String imgName,String fileName,Context mContext) throwsException {

Bitmap bitmap1 = null;byte[] data1 = getImage(url);if(data1 != null) {

bitmap1 = BitmapFactory.decodeByteArray(data1,0,data1.length);// bitmapsaveImgWithName(bitmap1,imgName,fileName,mContext);return true;} elsereturn false;}

public static byte[] getImage(String path) throwsException {

URL url = newURL(path);HttpURLConnection conn = (HttpURLConnection) url.openConnection();conn.setConnectTimeout(5* 1000);conn.setRequestMethod("GET");InputStream inStream = conn.getInputStream();if(conn.getResponseCode() == HttpURLConnection.HTTP_OK) {

returnreadStream(inStream);}

return null;}

//保存图片带名称public static voidsaveImgWithName(Bitmap bitmap,String imgName,String fileName,Context mContext) {

if(bitmap != null) {

File appDir = newFile(Environment.getExternalStorageDirectory() + "/BangMai/");if(!appDir.exists()) {

appDir.mkdirs();}

if(fileName != null){

appDir = newFile(Environment.getExternalStorageDirectory() + "/BangMai/images/"+ fileName);if(!appDir.exists()) {

appDir.mkdirs();}

}

File file = null;file = newFile(appDir,imgName);try{

FileOutputStream fos = newFileOutputStream(file);if(null!= fos) {

bitmap.compress(Bitmap.CompressFormat.JPEG,100,fos);fos.flush();fos.close();}

} catch(FileNotFoundException e) {

e.printStackTrace();} catch(IOException e) {

e.printStackTrace();}

// // 其次把文件插入到系统图库// try {// MediaStore.Images.Media.insertImage(mContext.getContentResolver(), file.getAbsolutePath(), imgName, null);// } catch (FileNotFoundException e) {// e.printStackTrace();// }// // 最后通知图库更新// mContext.sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.parse("file://" + Environment.getExternalStorageDirectory() + "/BangMai/")));}

}

end

android sdk引入 微信分享_android 调用本地微信自定义多图分享朋友圈,可放在share sdk中一起使用...相关推荐

  1. android微信自定义分享代码,android 调用本地微信自定义多图分享朋友圈,可放在share sdk中一起使用...

    最终的效果图,右下角微信多图为自定义调用系统分享,分享到微信. 在你能正常调用share sdk的时候想在原本的基础上加自定义的分享非常的简单. 它的官网已经给出了代码,但是给的不是很清楚. lz毕竟 ...

  2. 个人微信api接口调用-给微信好友或群聊发消息

    个人微信api接口调用-给微信好友或群聊发消息 /*** 给微信好友发消息* @author wechatno:tangjinjinwx* @blog http://www.wlkankan.cn*/ ...

  3. iOS 能实现一键分享多图到朋友圈吗

    需求是能完成调用微信一键分享多图到朋友圈效果如图 转载于:https://www.cnblogs.com/codingStorys/p/5588596.html

  4. 良心福利!微信 Mac 3.0.0电脑版率先开放刷朋友圈了

    良心福利!微信 Mac 3.0.0 电脑版终于可以刷朋友圈了,我身边好多朋友同事尽然还不知道呢. 话不多说,自己也安装了一番,Mac 电脑版刚更新完,就弹出如下界面. 本次微信 Mac 3.0.0 更 ...

  5. 微信之父张小龙:超1亿人朋友圈设置了三天可见

    出品 | AI科技大本营 1 月 9 日,2019 微信公开课在广州开幕,主论坛未露面的腾讯集团高级执行副总裁兼微信事业群总裁张小龙,终于露面,然后一张口就是整整四小时. 提到用户对微信的吐槽,张小龙 ...

  6. 微信Mac 3.1.0版内测!支持发朋友圈、浏览相册!

    6 月 3 日,微信团队发布微信 3.1.0 for Mac 内测版本.本次更新主要功能:可以发表朋友圈:可以浏览朋友圈相册. 此外,还修复了上个版本一些已知的问题,加强了应用的稳定性. 01 支持发 ...

  7. 微信小程序调用php,微信小程序调用PHP后台接口 解析纯html文本

    微信小程序调用php后台接口,解析纯html文本,效果图片预览 1.微信js动态传参: wx.request({ url: 'https://m.****.com/index.php/home/xia ...

  8. 记一次微信分享的特殊需求(文字加图片的朋友圈分享)

    昨天需求需要一个图片加文字的朋友圈分享,看了下微信的官方SDK,发现要么就是只有图片分享,要么就是只有文字分享,刚开始没头绪,一直在网上找资料,今天早上终于在网上找到了.效果图如下 代码主要还是网上的 ...

  9. android p 牛轧糖_Android牛轧糖快速设置图块

    android p 牛轧糖 In this tutorial, we'll learn how to implement our own custom tiles in the quick setti ...

最新文章

  1. vue ui无效_vue开发中,父组件添加scoped之后。解决在父组件中无法修改子组件样式问题。...
  2. kafka java_Kafka 使用Java实现数据的生产和消费demo
  3. Luogu T24242 购物券Ⅰ(数据已加强)
  4. 互联网开发(一) 并发基础知识
  5. 脚本——倒计时,ping,创建用户,作业:ssh并创建用户(未能实现功能)
  6. 简单理解Tomasulo算法与重加载缓冲区
  7. 调用系统相机和相册,并且裁剪成圆形图片(解决6.0,7.0,8.0版本问题)
  8. php中的__FUNCTION__
  9. 结构化分析和面向对象分析的区别 例子_管理游戏测评例子
  10. javascript编译压缩
  11. Centos7使用yum下载rpm包而不执行安装
  12. OSI模型第一层物理层
  13. python实现车牌识别
  14. 2020身高体重标准表儿童_2020儿童身高标准表出炉,10岁长到1米4才合格,你家娃达标了吗...
  15. 读取jpeg图像数据
  16. 程序员的精确思维,左手数学右手编程
  17. C#联合halcon框架实现插件编程 运动控制卡 多工具 测量 九点标定全新
  18. 上海交大团队制备全球最大规模的光量子计算芯片
  19. 【三维概念】【Cesium】 Camera控制-视角-roll,pitch,heading的含义
  20. 微信团队原创分享:iOS版微信的内存监控系统技术实践

热门文章

  1. 年产2000t搅拌型发酵酸奶车间工艺设计
  2. SpringBoot项目配置SSL证书微信小程序jar包
  3. HBase数据结构与基本语法详解
  4. fr4速度 微带线_微带线(microstrip)和带状线(stripline)
  5. 3D技术在数字藏品中的应用
  6. Android 获取经纬度。2018年写
  7. java宠物商店管理系统_Java实现宠物商店管理系统
  8. plt.subplots_adjust(wspace=0.01, hspace=0.01)
  9. php扩容方案,PHP程序员玩转Linux系列-腾讯云硬盘扩容挂载
  10. oop部分,构造方法,this的使用。