在前面有一章已经分析过怎么用官方的demo分享微信信息了,在这里我就不再多说,其中关于在自己应用分享说得很简单,本文作者也是经过一番折腾才弄成功,为了以后让大家都少走弯路,决定在这里从头到尾介绍怎么在自己的应用中分享功能

!!注意:顺序不能乱!!

1、建立自己的应用 TestShareWX

(1)应用包名是com.freeson.test,然后建立一个测试Activity,名字为TestActivity,里面有一个Button和EditText

(2)运行程序,请记住此时你编译运行的时候,用的是android默认的debug.keystore签名的。

2、到官网http://open.weixin.qq.com/download/?lang=zh_CN下载开发工具包,解压,将libammsdk.jar复制到libs中,并将其add到build path中。

3、到官网http://open.weixin.qq.com/agreement登记你的应用,

这里省去前面那些基本的操作 ,这里要注意以下的步骤。

其中有一步是要用个签微信那名的apk工具对我们程序进行签名的,因为我们的程序已经安装了,所以直接下载安装,然后在手机里面的那个框框输入包名(我这里是com.freeson.test,包名不能填错哦),点击生成按钮,这时候会生成一个md5值,将其输入到登记页面的框中(此时我们注意,如果我们的应用程序还没有安装到手机中的话,签名工具会提示没有找到相关包说明的,这时候我们有意识到什么了吗?)

再接下来输入包名(我这里是com.freeson.test,包名不能填错哦),然后提交审核。接下来就是等微信的MM进行审核了。

4、在步骤三中我们已经拿到了appid,按照sdk Demo里面的提供方法在我们的TestActivity测试,OK一切成功,是否有感觉成就感呢。

5、码农的日子还真TM难过啊,我加班码啊码啊,日子一天天过去,项目开发到最后了,经过测试,一切正常,用正式签名的文件对来正式打包。然后再测试。OH,my god,What Happened!!!,为什么刚刚还能分享微信的,现在点击居然没有反应了。顿时陷入惶恐中。。。。不要怕,我来告诉你为什么会这样。

6、其实在第一步的时候,就已经说了,我们在官网申请的AppId的时候填写应用程序签名也是就是用debug.keystore生成的。然而我们此时在手机里面运行的apk是用我们自己生成的签名(xxx.keystore)进行签名的,两个签名都不一致,所以很理所当然会导致分享失败。因为微信要对我们应用进行一个验证,就是通过这个签名来认证的。

7、别担心,还有补救的方法,用我们正式那个签名文件xxx.keystore对程序进行正式的打包,然后安装到手机中,然后再次运行微信那个签名apk工具,讲我们的包名输入到里面,重新生成一个MD5的签名,然后到官网http://open.weixin.qq.com/agreement,找到你之前等级那个应用,拉到最后,点击修改,将刚刚生成的那个签名输入到里面,然后保存重新提交审核。

8、做完上面的事情之后,所要做的就是等刚刚重新提交的修改通过审核,要不然你的微信就不能分享成功。

9、某一天,登记的那个应用通过审核了,运行我们打包的程序,点击微信,oh ,yes。发现能分享了,终于可以喘一口气了。

备注:

在弄分享过程中,本文作者也遇到了很多问题,在这里和大家说说,让大家以后稍微注意。

1、还是签名问题,一个项目,几个人完成的话,如果大家都是用各自默认的debug.keystore进行运行的话,在debug版本,微信分享功能肯定只有在申请的微信appid的那台机器生产的apk才能正常。

2、关于微信分享信息结果反馈,这个要注意的是以下两点,要不要肯定是不会收到分享反馈的。

(1)这个Activity的名字一定是WXEntryActivity

(2)WXEntryActivity这个类一定是建立在 应用包名+wxapi包下(比如上述的工程,这时候包名应该是com.freeson.test.wxapi)

写到这里,终于到结束了,本文作者也是折腾了蛮久才明白微信的认证原理的。一句话,理解签名很重要。

Android 微信SDK分享功能中的最全过程步骤分析相关推荐

  1. android sdk引入 微信分享_Android 微信SDK分享功能中的最全过程步骤分析

    在前面有一章已经分析过怎么用官方的demo分享微信信息了,在这里我就不再多说,其中关于在自己应用分享说得很简单,本文作者也是经过一番折腾才弄成功,为了以后让大家都少走弯路,决定在这里从头到尾介绍怎么在 ...

  2. Android微信App 分享功能调整,Android 微信SDK分享功能(1)

    转于:http://blog.csdn.net/freesonhp/article/details/10296141 ----------------------------------------- ...

  3. 【vue/uni-app】微信sdk分享功能在vue中开发中的一些个人纪录

    在vue开发微信sdk分享功能中的一些个人纪录 先登录微信公众平台进入"公众号设置"的"功能设置"里填写"JS接口安全域名". 我这里用的是 ...

  4. android 微博 4.1sdk,Android新浪微博SDK分享功能接入

    集成前准备 1. 申请APP_KEY 第三方需要接入微博SDK必须在微博开放平台上对应用进行注册,并获取APP_KEY,添加 应用的授权回调页面(Redirect URI) 2. 注册应用程序的包名和 ...

  5. 关关于android 微信sdk 分享 图片 到 朋友圈 的问题

    sceneSwitch.setDrawingCacheEnabled(true);//sceneSwitch是一个自定义的VIewBitmap bmp = Bitmap.createBitmap(sc ...

  6. 微信自定义分享功能实现

    微信自定义分享功能实现 微信自定义分享功能实现 一.实现的关键 1.后端的任务 2.前台的任务 二.实现具体步骤 1.js安全域名配置(被分享的网址必须实现) 2.添加服务器配置(成为开发者) 3.生 ...

  7. php 微信分享功能_基于thinkPHP实现的微信自定义分享功能

    这篇文章主要介绍了基于thinkPHP实现的微信自定义分享功能,结合实例形式分析了thinkPHP调用微信接口实现自定义分享功能的相关操作技巧,需要的朋友可以参考下 本文实例讲述了基于thinkPHP ...

  8. 微信分享源码PHP版JS-SDK接口_微信JSSDK分享功能图文实例详解

    本文实例讲述了微信JSSDK分享功能.分享给大家供大家参考,具体如下: 这里以微信分享到朋友圈,分享给微信好友为例为参考,进行调用测试,想添加其他的功能,自行查看开发人员文档即可 工欲善其事,必先利其 ...

  9. Android 实现微博分享功能

    Android 实现微博分享功能的实现,通过发送下面的intent: Intent intent = new Intent(Intent.ACTION_SEND); //启动分享发送的属性 inten ...

最新文章

  1. Nginx学习笔记(一) Nginx架构
  2. CSDN-markdown编辑器
  3. HDU - 1051 Wooden Sticks
  4. android gridview 间隔线,Android开发之RecyclerView的间隔线处理
  5. leetcode696. 计数二进制子串
  6. java ldap userpassword 解密_Spring Boot中使用LDAP来统一管理用户信息
  7. vant-UI组件初使用:浅谈 - 解说篇
  8. python之os模块的基本使用
  9. ONVIFclient搜索设备获取rtsp地址开发笔记(精华篇)
  10. mysql innodb_data_file_path_应急预案:专有云V3环境中RDS MySQL5.7实例修改innodb_temp_data_file_path参数的方法...
  11. 如何利用云流送(Cloud Streaming)构造一个全三维、沉浸式的数字化虚拟景区
  12. 2020年计算机夏令营总结
  13. 对透明表、簇表的理解
  14. CCD相机模数转换芯片时序简介
  15. 厚物科技定制三屏加固便携机HW-8700TS
  16. 手机如何优雅地自动化登录校园网?
  17. ~ 按位取反运算解析
  18. Cortex、ARMv8、arm架构、ARM指令集、soc?Cortex A8、A9都是ARMv7a 架构;Cortex M3、M4是ARMv7m架构;前者是处理器(内核)后者是指令集的架构(架构)
  19. [强化学习-3] Devil 课程第二章解析+ 学生马尔可夫决策过程代码
  20. 看这里 一步学会ubuntu 16.04 安装windos的应用, 使用sscom串口工具来调试

热门文章

  1. MyBatis官方文档-日志
  2. 大一下学期微积分期末预习(3):定积分的应用-求旋转体的体积
  3. iphone已停用解锁大概多少钱_iPhone已停用怎么办 iPhone已停用解决方案汇总
  4. 水塘抽样(Reservoir sampling)
  5. iPad断触问题,iPencil正常,手指断触11个简便解决方法
  6. 雅思大作文 城市 练习+词汇
  7. Windows下压缩和解压命令
  8. Java静态多态和动态多态
  9. 快鱼吃慢鱼:浪潮服务器未来五年要争全球第一的背后
  10. Vue生命周期(图示详解)