微信申请 包名和签名

开发环境:

window 7

Egret Engine 5.0.14

Egret support 5.0.12 Eclipse 

 

 

一  申请微信移动应用

二  怎么获取Android包名

三  怎么获取Android签名

 

一  申请微信移动应用

1 登录微信开放平台:

https://open.weixin.qq.com/

 

2 管理中心-移动应用-创建移动应用

 

 

 

 填写基本信息

 

 

3 填写完基本信息,确认后,到了Android包名和签名的应用地方,那么Android包名和签名是什么?怎么获取?

用于微信审核

 

 

二 获取Android 包名

Egret的发布Support可以参考以前的帖子

http://www.cnblogs.com/gamedaybyday/p/7501961.html

 

打开工程,包名在AndroidManifest.xml中修改

 

 修改AndroidManifest.xml的包名Package。

 包名是任意设置的。和你项目源码的package不是一码事。没啥关系。

 

 

 

 

 三 Andorid 签名

签名和包名没啥关系。

不同包名的apk可以使用同一个签名keystore。

 

下面我们来制作签名keystore,右键项目,选择AndroidTools->Export Signed Application...

 

 

 选择 Create new keystore。输入密码。得记住这个密码,因为你下次再使用这个keystore时,也就是use existion keystore时,需要输入这个密码

 

 

 填写详细信息,这里也有一个密码,也得记住

 

 下一步,选择导出apk存放在哪里。

 

下一步,我们打包出了一个apk

 

将Apk安装到手机上。

 

现在我们有了自定义包名打包出的apk。那么怎么获取签名呢。

首先下载微信的一个获取签名工具并安装到手机,这个工具可以根据包名获取签名....

微信开放平台:

https://open.weixin.qq.com/

 

资源中心->资源下载->Android资源下载->

 

 

拉到最下面,会看见一个签名生成工具。下载后安装到手机。

 

 

这时我们有了2个东西:

APK:使用包名"com.kfgame.yinzijianggggg" 和自己定义的keystore打包出来的apk

微信获取签名工具:GenSignature

 

打开GenSignature,输入我们apk的包名"com.kfgame.yinzijianggggg"。

点击"Get Signature",则可以获取到签名"ab6de67..............."。 经过测试,两个不同包名,签名值相同,所以这个值和包名没关系,只和keystore有关,保持唯一性。

 

 至此,我们打包出了一个apk。并且知道这个apk的包名和签名,可以去微信开放平台申请了。

 

 

 

 

转载于:https://www.cnblogs.com/gamedaybyday/p/8191243.html

微信支付的通知接收通常涉及到签名验证,这是为了确保消息的完整性和真实性。在Python中,你需要对微信提供的XML格式的请求进行以下几个步骤: 1. **获取签名算法**:微信使用的是HMAC-SHA256加密算法。首先,需要从微信官方文档获取这个算法。 2. **提取参数**:从接收到的XML数据中,解析出必要的参数,包括`mch_id`(商户号)、`nonce_str`(随机字符串)、`time_stamp`(时间戳)、`package`(包含交易信息的包)等,并将它们按照规定的顺序排列。 3. **拼接字符串**:按照“key=value&key=value”的形式,把上述参数按照指定顺序(一般是按字母表顺序)拼接成一个字符串,然后加上你的`app_key`(微信商户平台申请的密钥)。 4. **生成签名**:使用HMAC-SHA256算法对拼接后的字符串进行加密,得到的就是签名串。 5. **校验签名**:将服务器返回的签名与计算出来的签名进行对比。如果两者一致,说明请求是可信的,可以继续处理支付通知。 ```python import hashlib def verify_signature(xml_data, app_key): params = ['mch_id', 'nonce_str', 'time_stamp', 'package'] + [param for param in xml_data.split('><') if '<xml>' not in param] params.sort() key_values = ''.join(f'{param}={xml_data[param]}' for param in params) sign_str = f'app_key={app_key}&{key_values}' your_sign = hashlib.sha256(sign_str.encode()).hexdigest() # 使用HMAC-SHA256算法 return your_sign == xml_data['sign'] # 示例用法 if verify_signature(your_xml_data, your_app_key): process_payment_notification() else: raise Exception("Signature verification failed") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值