通过友盟sdk集成微博、微信、qq等分享功能时,微博和qq很顺利,但在做微信集成时一直不成功。主要问题还是之前在微信开放平台申请创建移动应用时,对应用签名没有填写对,走了很多弯路现总结出来,加深记忆避免后继弯路。在这里微信开放平台的注册、移动应用的创建就不做说明了,需要注意的是提交申请后腾讯需要一周左右的时间进行审核,所以有着急上线的同学做好时间管理。
在说具体的签名生成之前,我们先看看为啥需要签名。
一、签名的理解
签名是Android系统要求的,签名对于每个应用相当于应用的标识,用签名来和开发者(或者发布应用的企业)建立联系。比如我们在生成签名时需要填写创建者、企业、所在的城市、国家等信息。一个App开发完成后如果没有签名,是不能在Android系统中发布运行的。在开发过程中如果我们不生成自己的签名Android studio会自动创建它,生成签名的秘钥默认在我们系统中的/Documents and Settings/用户名/.android/debug.keystore中。
二、生成签名的apk应用
1、创建.keystore文件
a、通过keytool生成,keytool是jdk自带的工具通过命令行进行创建
其中alias 是别名,validity是有效期,debugmy为文件名称
b、通过Android studio界面在创建签名apk时生成
2、生成签名的apk
可以通过Android studio 提供的界面功能生成,也可以通过keytool、jarsigner、zipalign(签名后apk的优化,不是必须)
通过Android studio的入口如下,过程不复杂,这里就不做赘述了。
三、在开发过程中使用自定义的keystore文件
在build.gradle文件中添加如下代码,其中storeFile 为keystore的文件位置,本例子是直接放在app目录下的,可以根据情况指定具体目录。其它三个参数都是在生成keystore时输入的信息。
signingConfigs {
debug {
storeFile file('debugmy.keystore')
storePassword "android"
keyAlias "androiddebugkey"
keyPassword "android"
}
}
四、在手机或者模拟器中查看应用签名
在查看之前需要生成签名的apk并安装应用后,通过查看签名工具获得应用签名。签名工具可以去微信或者微博开放平台下载,需要输入包名,包名要和AndroidManifest.xml文件中的package相同。,界面如下
五、在微信开放平台上填写或者修改生成的签名
六、问题总结
博主是按照上述步骤一步步生成keystore文件、配置build.gradle文件、下载应用签名查看工具并在开放平台配置应用签名,但是最后调试阶段一直不成功,在反复确认appid、secret、应用签名都无误的情况也是不成功。后来在网上查了很多资料,也没有发现问题。最后怀疑是不是腾讯新的签名生效有时效?带着疑问去睡觉了,一觉醒来后打开手机通过微信分享居然成功。时效问题?也许吧,反正是成功了。

Android集成微信分享功能应用签名生成方法及分享不生效的问题的更多相关文章

  1. php微信支付v3版本签名生成

    前几天需要对接微信支付卡包营销活动需要对接微信新版SDKv3版 签名生成规则,微信的官方文档里面说明的还算可以吧,不过个人觉得不太理想- -.  自己调试的时候调试了半天才找了错误原因. https: ...

  2. 微信jssdk分享功能,jssdk成功调用,分享内容自定义失败

    前提:调用微信jssdk分享功能,通过微信开发者工具调试,调用正常,无任何报错信息. 问题:调用成功,且开发者工具正常显示,但是通过真机调试,分享出去后,自定义内容失效,为微信自动获取的默认内容!截止 ...

  3. 利用WxJava实现网站集成微信登录功能,核心代码竟然不超过10行

    最近网站PC端集成微信扫码登录,踩了不少坑,在此记录下实现过程和注意事项. 本文目录 一.微信开放平台操作步骤1.创建“网站应用”2.获取AppID和AppSecret二.开发指南三.开发实战1.po ...

  4. 利用WxJava实现PC网站集成微信登录功能

    原文地址:https://mp.weixin.qq.com/s/rT0xL9uAdHdZck_F8nyncg 来源:微信公众号:java碎碎念 1. 微信开放平台操作步骤 微信开放平台地址:https ...

  5. 如何在ios中集成微信登录功能

    在ios中集成微信的登录功能有两种方法 1 用微信原生的api来做,这样做的好处就是轻量级,程序负重小,在Build Settings 中这样设置 然后设置 友盟的设置同上,但是要注意,加入你需要的所 ...

  6. Android系统自带分享功能的实现(可同时分享文字和图片)

     /** * 分享功能 * * @param context * 上下文 * @param activityTitle * Activity的名字 * @param msgTitle * 消息标题 ...

  7. Android开发之发送邮件功能的实现(源码分享)

    Android开发中可能会碰到怎样发送邮件的困扰,之前我也查了相关的文档,博友们也分享了不少的发送邮件的办法.总共同拥有3种把,我细致阅读了下,发现有的讲的太过复杂跟麻烦,不够清晰.我今天就来分享下我 ...

  8. 第三方APP集成微信登陆功能详解

    授权后接口调用(UnionID) 通过code获取access_token 接口说明 通过code获取access_token的接口. 请求说明 http请求方式: GET https://api.w ...

  9. Android通过微信实现第三方登录并使用OKHttp获得Token及源码下载

    这里对于App在微信开放平台上申请AppID和secret在这里就略过了,我们微信的授权登录流程,腾讯官网给的流程如下: 1. 第三方发起微信授权登录请求,微信用户允许授权第三方应用后,微信会拉起应用 ...

随机推荐

  1. android Qemu GPS 模块简明分析

    Android 的 gps module 是  gps.default.so 在system/lib/hw/ 文件夹上, 一般提供gps功能的手机应该实现这个module和真实gps硬件交互 Qemu ...

  2. Centos7最小安装下Install Clamav(2017-06-09最后更新)

    If you are installing ClamAV for the first time, you have to add a new user and group to your system ...

  3. 【Python】python扩展

    当python的基本功能无法满足要求.或者是为了保密源码(.py).遇到性能瓶颈时,我们经常要扩展python,扩展语言能够是C/C++.Java.C#等. 为python创建扩展须要三个基本的步骤: ...

  4. pojWindow Pains(拓扑排序)

    题目链接: 啊哈哈,点我点我 题意: 一快屏幕分非常多区域,区域之间能够相互覆盖,要覆盖就把属于自己的地方所有覆盖. 给出这块屏幕终于的位置.看这块屏幕是对的还是错的.. 思路: 拓扑排序,这个简化点 ...

  5. html5 虚拟键盘弹出挡住底部的输入框解决方案

    问题描述: 我们使用 h5 做移动网站开发时,如果文本框在页面的下方,当输入信息弹出的软键盘会将输入框挡住(Android 会有这个问题,IOS会自动将整个页面上移),IOS中软键盘关闭后,页面上移的 ...

  6. struts 模块化

    <struts> <!-- 包含了三个配置文件 --> <!-- 不指定路径默认在src下时的方式 --> <include file="strut ...

  7. Linux/Android——Input系统之InputReader (七)【转】

    本文转载自:http://blog.csdn.net/jscese/article/details/42739197 在前文Linux/Android——Input系统之frameworks层Inpu ...

  8. Web框架 - 开源软件库 - 开源中国社区

    网址:http://www.oschina.net/project/tag/127?lang=194

  9. 【推荐】微服务分布式企业框架Springmvc+mybatis+shiro+Dubbo+ZooKeeper+Redis

              摘要: 主要定位于互联网企业架构,已内置企业信息化系统的基础功能和高效的代码生成工具,包括:系统权限组件.数据权限组件.数据字典组件.核心工具 组件.视图操作组件.工作流组件.代码 ...

  10. bzoj4870

    http://www.lydsy.com/JudgeOnline/problem.php?id=4870 矩阵快速幂... 人话题意:从nk个物品里选模k余r个物品,问方案数模P 那么我们有方程 f[ ...