通过友盟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. Jsp标签字典开发_基于Spring+Hibernate

    目录 1. Jsp标签字典开发_基于Spring+Hibernate 1.1. 简述 1.2. 定义DictItem实体 1.3. 定义字典的@interface 1.4. 定义字典缓存类 1.5. ...

  2. Why we have tuple and list in python

    The most notable difference between tuple and list is that tuple is immutable and list is mutable. B ...

  3. 不同VLAN之间相互通信的两种方式

    (单臂路由.三层交换) 试验环境:东郊二楼第三机房 试验设备:Catalyst 2950-24(SW3) Cisco 2611(R2) Catalyst 3750 SERIES (带两个SD接口,S8 ...

  4. 传智播客ADO.Net项目开发教程具体解释

    内容简单介绍: 本教程为传智播客.Net培训课堂的现场录像,请到140623ls" target="_blank">传智播客.Net学院下载很多其它免费.Net视频 ...

  5. python搭建web server

    假设你急需一个简单的Web Server,但你又不想去下载并安装那些复杂的HTTP服务程序,比方:Apache,ISS等.那么, Python 可能帮助你.使用Python能够完毕一个简单的内建 HT ...

  6. Angular Scope解析与应用

    Scope层级结构 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA== ...

  7. Android 网络学习之获取server文本文件

    上次我们学习怎样从网络上获取一张图片,今天我们学习怎样从网络上获取文本文件.以XML文件为样例. 由于XML文件在实际开发中最为常见. 我们以以下图片为样例学习怎样从网络上获取XML文件 我们的xml ...

  8. text recognizer (OCR) Engine 光学字符识别

    https://github.com/tesseract-ocr/tesseract/wiki https://github.com/UB-Mannheim/tesseract/wiki C:\Use ...

  9. sql%found sql%notfound sql%rowcount sql%isopen

    原文引入:http://blog.csdn.net/mh942408056/article/details/6949325 sql%found sql%notfound sql%rowcount sq ...

  10. DTV_SI 汇总 & 兼谈LCN

    前言 本章主要对数字广播DVB做一个系统的概况的描述,以及一些spc的相关的内容,虽然流程分析的不多,但是做为后续 章节资料的源泉,也是不可或缺的. 一. ATSC和DVB数字电视系统的比较 本文的主 ...