cocos3.x 接入微信无法调用回调函数onResp的问题
要想顺利调用必须保证一下几点:
1.WXEntryActivity的包名必须正确,格式为你的APK包名+wxapi.WXEntryActivity(注意:是apk包名,而不是org.cocos2dx.cpp,我就是这个问题调了1天。。。。。)
2.WXEntryActivity在AndroidManifest.xml的配置
<!--微信回调-->
<activity
android:name="xx.xxx.xxx.wxapi.WXEntryActivity"
android:label="@string/app_name"
android:exported="true">
android:launchMode="singleTask"
</activity>
3.在onCreate和onNewIntent
中调用 IWXAPI的handleIntent(this.getIntent(), this);
附上WXEntryActivity代码
package com.hongyou.hongyoudragonsky.wxapi; /**
* Created by Administrator on 2018/1/8.
*/ import android.app.Activity;
import android.content.Intent; import android.os.Bundle;
import android.util.Log; import com.tencent.mm.opensdk.constants.ConstantsAPI;
import com.tencent.mm.opensdk.modelbase.BaseReq;
import com.tencent.mm.opensdk.modelbase.BaseResp;
import com.tencent.mm.opensdk.openapi.IWXAPIEventHandler; import org.cocos2dx.cpp.WChatShare;
import org.cocos2dx.lib.Cocos2dxGLSurfaceView;
import org.cocos2dx.lib.Cocos2dxLuaJavaBridge; /**
* Created by Administrator on 2018/1/7.
*/
public class WXEntryActivity extends Activity implements IWXAPIEventHandler { public static String LogFlag = "WXEntryActivityTag"; public static String ShareResult = "-1";
private static int _shareCallBackLuaFunc = 0; //分享回调lua接口 //设置分享回调lua接口
public static void SetShareCallBackLuaFunc(final int luaFunc) {
//log
Log.i(LogFlag, "----call WXEntryActivity.SetShareCallBackLuaFunc--------"); _shareCallBackLuaFunc = luaFunc; } @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); //log
Log.i(LogFlag, "----call WXEntryActivity.onCreate--------"); WChatShare.api.handleIntent(this.getIntent(), this); } @Override
protected void onNewIntent(Intent intent) {
//log
Log.i(LogFlag, "----call WXEntryActivity.onNewIntent--------"); super.onNewIntent(intent); setIntent(intent); WChatShare.api.handleIntent(intent, this);
} @Override
public void onReq(BaseReq baseReq) { //log
String logStr = "----call WXEntryActivity.onReq() ";
Log.i(LogFlag, logStr); switch (baseReq.getType()) {
case ConstantsAPI.COMMAND_GETMESSAGE_FROM_WX:
Log.i(LogFlag, "type=COMMAND_GETMESSAGE_FROM_WX");
break;
case ConstantsAPI.COMMAND_SHOWMESSAGE_FROM_WX:
Log.i(LogFlag, "type=COMMAND_SHOWMESSAGE_FROM_WX");
break;
default:
break;
} finish();
} @Override
public void onResp(BaseResp baseResp) {
//log
String logStr = "----call WXEntryActivity.onResp--0-- ";
Log.i(LogFlag, logStr); switch (baseResp.errCode) {
case BaseResp.ErrCode.ERR_OK:
ShareResult = "0";
break;
case BaseResp.ErrCode.ERR_USER_CANCEL:
ShareResult = "1";
break;
case BaseResp.ErrCode.ERR_AUTH_DENIED:
ShareResult = " 2";
break;
case BaseResp.ErrCode.ERR_UNSUPPORT:
ShareResult = "3";
break;
default:
ShareResult = "4";
break;
} if (_shareCallBackLuaFunc > 0)
{ Cocos2dxGLSurfaceView.getInstance().queueEvent(new Runnable() {
@Override
public void run() { Cocos2dxLuaJavaBridge.callLuaFunctionWithString(_shareCallBackLuaFunc, ShareResult);
}
}); } finish();
} @Override
public void run() {
Cocos2dxLuaJavaBridge.callLuaFunctionWithString(_shareCallBackLuaFunc, _result);
}
} }
4.必须用你在微信开发平台审核通过的Appid和apk包签名
cocos3.x 接入微信无法调用回调函数onResp的问题的更多相关文章
- 常用js,css文件统一加载方法,并在加载之后调用回调函数
原创内容,转载请注明出处! 为了方便资源管理和提升工作效率,常用的js和css文件的加载应该放在一个统一文件里面完成,也方便后续的资源维护.所以我用js写了以下方法,存放在“sourceControl ...
- python 并发编程 同步调用和异步调用 回调函数
提交任务的两张方式: 1.同步调用 2.异步调用 同步调用:提交完任务后,就在原地等待任务执行完后,拿到结果,再执行下一行代码 同步调用,导致程序串行执行 from concurrent.future ...
- is_callable Callbacks / Callables What is a “callable”? 可调用 回调函数
PHP: Callback / Callable 类型 - Manual https://www.php.net/manual/zh/language.types.callable.php Callb ...
- 网站实现微信登录之回调函数中登录逻辑的处理--基于yii2开发的描述
上一篇文章网站实现微信登录之嵌入二维码中描述了如何在自己的登录页面内嵌入登录二维码,今天的这篇文章主要是描述下在扫码成功之后微信重定向回网站后登录逻辑的处理,其实也就是验证身份信息,授权用户登录的逻辑 ...
- WCF 服务器调用回调函数 单程-双程操作模式:(待补充Demo)
服务器端Server 实现回调接口Interface定义.客户端实现回调接口Interface实现,从而实现服务器端通过 var channel = OperationContent.Current ...
- 调用回调函数出现或者大循环出现has triggered a breakpoint
triggered a breakpoint 的意思是触发一个断点.这个问题一般发生在程序运行过程中.下面是错误发生显示的信息:Windows has triggered a breakpoint i ...
- 项目记录 -- python调用回调函数
C源文件: static int get_callback(zpool_handle_t *zhp, void *data) { zprop_get_cbdata_t *cbp = (zprop_ge ...
- call_user_func_array — 调用回调函数,并把一个数组参数作为回调函数的参数
<?php function foobar($arg, $arg2) { echo __FUNCTION__, " got $arg and $arg2\n"; } clas ...
- [Effective JavaScript 笔记]第67条:绝不要同步地调用异步的回调函数
设想有downloadAsync函数的一种变种,它持有一个缓存(实现为一个Dict)来避免多次下载同一个文件.在文件已经被缓存的情况下,立即调用回调函数是最优选择. var cache=new Dic ...
随机推荐
- 【Linux】行首、行尾添加字符串
在行首或者行尾添加字符串的方式有以下2种 环境描述 test.txt文件内容如下: hello world Qinys 要求:在每一行的行首添加AAA,行尾添加666 VIM编辑状态添加 首先使用命令 ...
- JDBC数据库编程:callableStatement接口
了解MySQL存储过程建立, 了解存储过程中参数传递的三种方式 了解callablestatement调用存储过程操作. 因为在现在开发中,使用存储过程的地方越来越少,所以,对于存储过程使用,只需要了 ...
- poj - 1953 - World Cup Noise(dp)
题意:n位长的01序列(0 < n < 45),但不能出现连续的两个1,问序列有多少种. 题目链接:id=1953" target="_blank">h ...
- 【前端】jQuery
一.jQuery是什么? 1.jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多JavaScript高手加入其team 2.jQuery是继prototype之后有一个优秀的 ...
- jboss部署web应用
http://liufei-fir.iteye.com/blog/759772初次部署jboss的web应用,把tomcat/weblogic下的工程移植到jboss上发布 一.修改JBOSS应用服务 ...
- Could not create and/or set value back on to object .
严重: Error building beanorg.springframework.beans.factory.UnsatisfiedDependencyException: Error creat ...
- IOT表
以前在接触索引的时候,就想过要是表字段太少,索引效果不是很不好吗,直接用索引不是更直接吗?后来因为懒惰也没有去查找相关资料.正好今天看到了table organization index,看了一下,实 ...
- Swashbuckle一个webapi调试利器
开发weibapi通常会使用postman或者其他模拟http请求的工具去模拟请求.但是这些工具需要自己保存请求地址的url以及参数 每次我都是先查询wiki看参数. 看见同事再用Swashbuckl ...
- Mac 上的一些骚操作和技巧
0.自定义mac touch bar 上的图标 系统偏好设置-键盘-自定义control strip.. 接下来就精彩了:先用手指按住你touch bar 的siri,然后移到最左边的删除图标,将它移 ...
- springMVC中实现用户登录权限验证
通过上网搜资料显示,使用filter和interceptor都可以实现.不过推荐使用interceptor. 下面就使用Interceptor实现用户登录权限验证功能. 拦截器需要实现Inceptor ...