最近一直在调用微信的API,却发现一直调用不成功,纠结了好久,各方面找教程,找官方,官方里的文档也只是写得很模糊,说是按三步走。
1、申请App_ID
2、填写包名3、
获取程序签名的md5值,
这三步只要你走对了就能调通,可是大家都不知道有时候我们打包的keystore和我们打包的keystore获取到的程序签名的md5是不一样的。我们在申请的时候填的程序签名值是正式打包的,但我们在eclipse部署上去的却是用的我们默认的debug.keystore.而这样导致的后果就是程序签名不一样,会一直调不通。甚至我们都不知道我们错在哪。
先说一下怎么部署微信官网下的demo吧:【下面引用的内容为微信官网】
微信对Android API调用是需要严格 的三个验证,只有app_id包名和程序签名完全对了的情况下才可以调得通。
如何运行sdkdemo工程
1、解压sdk demo工程压缩包,并导入到workspace,如下图:
2、选择Eclipse顶部菜单Window->Preferences,在弹出的对话框中,选择Android目录下的Build,如下图:
指定Custom debugkeystore选项的路径为sdk demo工程目录中的debug.keystore文件,如下图:
并应用该配置。
3、运行该sdk_sample工程。
好了,按以上三步走,你就能走通微信的DEMO,现在再来看我们自己的DEMO
1、custom Debugkeystore:换成我们自己的keystore
2、装上我们的应用到手机端,再去微信官网下载一个获取程序签名md5值的apk输入包名:
3、去微信后台申请我们调试的应用:
接着再写上示例代码中的代码:
private Button btn_share;
public static final String WX_APP_ID = "wxc85b9dbef61b3fe4";
private IWXAPI api;
private String text="testssss";
@Override
public void onCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btn_share = (Button)findViewById(R.id.btn_share);
api = WXAPIFactory.createWXAPI(this, WX_APP_ID,false);
btn_share.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
api.registerApp(WX_APP_ID);
// 初始化一个WXTextObject对象
WXTextObjecttextObj = newWXTextObject();
textObj.text = text;
// 用WXTextObject对象初始化一个WXMediaMessage对象
WXMediaMessagemsg = newWXMediaMessage();
msg.mediaObject = textObj;
// 发送文本类型的消息时,title字段不起作用
msg.title = "Will be ignored";
msg.description = "sdddd";
// 构造一个Req
SendMessageToWX.Reqreq = newSendMessageToWX.Req();
req.transaction = buildTransaction("text"); // transaction字段用于唯一标识一个请求
req.message = msg;
//req.scene = SendMessageToWX.Req.WXSceneTimeline ;
// 调用api接口发送数据到微信
api.sendReq(req);
finish();
}
});
}
private StringbuildTransaction(finalString type) {
return (type == null) ? String.valueOf(System.currentTimeMillis())
:type + System.currentTimeMillis();
}
至此,大功告成。千万别忘记你程序打包用的keysotre再用那个微信提供的程序打包获取到签名和你在eclpise程序部署获取到的签名是不一样的。我们可以再申请一个正式的应用,填写信息可以完全一样,但是只要改掉
和你的app_id
微信获取程序签名工具下载地址:http://xiazai.jb51.net/201211/tools/gen_signature_jb51.rar
不知道大家是否有看通。如果再有疑问的话可以加我。希望此文章能帮助到正在用微信API的Android码农们。
相关推荐
2. 微信支付:微信支付SDK提供了便捷的在线支付解决方案,使开发者能在自己的应用中集成支付功能。它包括了商品购买、订单创建、支付请求、支付结果查询等一系列流程。开发者需要在微信商户平台上申请商户号,然后...
如果应用需要与微信小程序进行交互,微信SDK同样提供了解决方案。通过特定的API,开发者可以让Android应用和微信小程序之间进行数据交换,实现跨平台的用户体验。 6. **二维码扫描**: SDK还包含了二维码和条形码...
这个"android微信支付带java后台工具类"提供了一种解决方案,帮助开发者在Android客户端和Java后端之间建立有效的通信机制,以实现微信支付流程。 1. **微信支付流程概述** 微信支付涉及的主要步骤包括:用户选择...
"Android-支付SDK的集合与重构支持支付宝、微信支付、银联支付"项目正专注于解决这一问题,为开发者提供了一站式的支付解决方案。这个项目将三种主流的支付方式整合在一起,大大简化了开发过程,减少了代码冗余。 1...
总的来说,微信开放平台SDK为Android开发者提供了一整套与微信深度集成的解决方案,通过学习和使用它,你可以为用户提供更加便捷、丰富的功能,增强应用的竞争力。在实际开发中,务必遵循微信的开发规范,确保应用的...
在实际操作中,可以参考testWxPay-master这个项目中的代码示例,它可能包含了完整的集成方案和问题解决方案。遇到具体问题时,可以查阅微信官方文档,或者在开发者社区寻求帮助,以便快速填坑。
总的来说,微信支付SDK(wxpay-sdk-0.0.3)为开发者提供了一套完整的解决方案,简化了微信支付的集成工作,使得开发者可以专注于自己的核心业务,而无需过多关注支付流程的技术细节。通过熟练掌握和正确使用这个SDK...
这个指南会指导开发者如何调用微信支付API来实现退款请求,并提供对账单的下载和解析方法。 3. **SDK_for_Android**:【微信APP支付】SDK_For_Android是为Android应用开发设计的,包含必要的库文件和示例代码,用于...
微信SDK for Android 5.3.1版本是一个重要的开发工具包,主要针对微信平台的应用程序开发。这个版本的SDK去除了MTA(Mobile Traffic Analysis)模块,因此它可能更适合那些不希望集成移动流量分析功能的开发者。下面...
它提供了一站式的解决方案,简化了开发者与这些平台的API交互过程。要使用ShareSDK,你需要在项目中引入相应的SDK库,并按照官方文档配置应用的AppID和AppKey,这些都是你在QQ开放平台和微信开放平台申请得到的。 1...
本文主要探讨了在Android中通过微信分享大图时遇到的挑战及其解决方案。 首先,问题的起因是在尝试分享一张大图时,代码执行失败。通常,分享图片的代码会涉及到初始化`WXImageObject`和`WXMediaMessage`对象,设置...
此外,微信可能会针对这种行为进行反制,例如更新版本以阻止非官方接口的使用,因此解决方案可能需要持续维护和更新。 7. **MyApplication.rar**:这个RAR文件可能是项目代码的压缩包,包含实现上述功能的源代码或...
然后,在Cocos Creator的项目中引入微信SDK,这通常涉及到下载SDK,将其导入到项目的资源管理器中,并在代码中引用。 3. **授权流程**: 用户启动游戏后,通过调用微信登录的SDK接口,弹出微信授权界面。用户同意...
本资源“Unity第三方微信支付安卓端工程”提供了一个专门为Unity设计的、用于接入微信支付的Android解决方案。这个解决方案使得Unity游戏可以无缝地与微信支付系统进行交互,为玩家提供便捷的付费体验。 首先,我们...
在描述中提到的"智付云"是一家提供全方位支付解决方案的公司,它不仅支持微信支付,还包括支付宝支付、银联手机支付、QQ钱包以及京东钱包等多种支付方式。这表明在Android应用中,开发者可以通过智付云的SDK来实现...
微信支付(Android)V3是微信官方推出的一种针对Android平台的移动支付解决方案,它使得开发者能够集成微信支付功能到自己的Android应用中,为用户提供便捷的在线支付体验。在这个V3版本中,微信优化了支付流程,...
"Android-Android支付宝支付微信支付封装"这个项目就是针对Android平台,提供了一种简洁的解决方案,允许开发者快速集成支付宝(Alipay)和微信(WeChat Pay)支付功能。下面将详细介绍这个项目及其相关知识点。 ...
在MUI项目中,通常使用`plus.nativeBridge`或`mui.plus.nativeBridge`方法来调用原生方法,传递上述参数到Android端的微信支付SDK。 三、微信支付步骤 1. **生成预支付订单** 使用商户后台提供的API生成预支付订单...