(1)一般是app在微信服务器上面注册,用自己的包名+签名信息SignInfo(MD5或者SH1)注册然后微信服务器会生成一个key。
(2)app在调用微信开发平台接口时候,将自己的包名+key传递给微信,微信通过Android的 Fwk接口获取到app在本地的签名信息SignInfo。
(3)微信通过key和包名去微信服务器那边查询app注册的签名信息SignInfo,如果跟上一步骤本地获取的一致,则表示校验成功可以正常调用,否则表示不成功,不可调用。
流程如下:
(4)Android中获取app签名信息的示例代码:
public class AppInfoUtils {
public final static String SHA1 = "SHA1";
/**
* 返回一个签名的对应类型的字符串
*
* @param context
* @param packageName
* @param type
*
* @return
*/
public static String getSingInfo(Context context, String packageName, String type) {
String tmp = null;
Signature[] signs = getSignatures(context, packageName);
for (Signature sig : signs)