android调用微信登录,IWXAPI.handleIntent一直返回FALSE

检查过appid没有问题,代码挺简单的

            在application中调用:
    sWxApi = WXAPIFactory.createWXAPI(this, Constants.WEIXIN_APP_ID, false);
    sWxApi.registerApp(Constants.WEIXIN_APP_ID);

            点击微信登录按钮调用
    private void loginToWeiXin() {
    if (APP.sWxApi != null && APP.sWxApi.isWXAppInstalled()) {
        SendAuth.Req req = new SendAuth.Req();
        req.scope = "snsapi_userinfo";
        req.state = "pet18_wechat_login";
        APP.sWxApi.sendReq(req);
    } else
        Toast.makeText(this, "用户未安装微信", Toast.LENGTH_SHORT).show();
}

    在WXEntryActivity的oncreate中调用
                APP.sWxApi.handleIntent(getIntent(), this);

   可是sWxApi.handleIntent(getIntent(), this);一直返回FALSE,不知道什么原因

        打印log中有如下logMicroMsg.SDK.WXApiImplV10: handleIntent fail, ex = println needs a message

有人知道什么原因吗?

qq_19694907
yjw1997 回复sqf_jhon: WXAPIFactory.createWXAPI(this, Constants.WEIXIN_APP_ID, false);这个false改为true就好了...
4 个月之前 回复
qq_19694907
yjw1997 回复sqf_jhon: 我也遇到了同样的问题 请问你解决了吗?
4 个月之前 回复
sqf_jhon
sqf_jhon 大神,问题解决了吗,我也遇到一模也一样的问题了,研究了一天了,完全没找到原因出在哪里
8 个月之前 回复

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
MemcachedClient.set 一直返回false?
var cfg= new MemcachedClientConfiguration();//创建配置参数rncfg.Servers.Add(new System.Net.IPEndPoint(IPAddress.Parse("127.0.0.1"), 11211));//增加服务节点rncfg.Protocol = MemcachedProtocol.Binary;rn_memcachedClientclient = new MemcachedClient(cfg);rnbool b = _memcachedClient.Store(StoreMode.Set, "afdsf", "hellodsflasd", DateTime.Now.AddMinutes(_days));rn该命令一直返回false,memcached安装在win764位上,防火强已经全部关系,11211端口,本地可以set成功,可是使用上面的客户端一直返回false,
signature.verify 一直返回false
翻译一段用C写的代码到JAVA, C代码验证签名可以返回正确的结果,JAVA接口返回的结果一直是false。很沮丧,没有任何思路了,谁能帮忙看看,给点思路?rnrnC code:rn[code=c]rn if (1 != RSA_verify(NID_sha1, md, sizeof(md), sig, sigLen, aikRsa)) rn fprintf (stderr, "Error, bad RSA signature in quote\n");rn exit (2);rnrn[/code]rnrnRSA_verify原型:rn[code=c]rnint RSA_verify(int type, const unsigned char *m, unsigned int m_len,rn unsigned char *sigbuf, unsigned int siglen, RSA *rsa);rn[/code]rnrnaikRsa 从PEM文件中调用接口直接读取:rn[code=c]rnif ((aikRsa = PEM_read_RSA_PUBKEY(key_file, NULL, NULL, NULL)) == NULL) rn fprintf (stderr, "Unable to read RSA file %s\n", av[1]);rn exit (1);rnrn[/code]rnrnPEM_read_RSA_PUBKEY原型:rn[code=c]rn RSA *PEM_read_RSA_PUBKEY(FILE *fp, RSA **x,rn pem_password_cb *cb, void *u);rn[/code]rnrn翻译过去的JAVA code:rn[code=java]rn Signature signature;rn signature = Signature.getInstance("SHA1withRSA");rn signature.initVerify(pubkey); rn signature.update(md);rn if (!signature.verify(sig)) rn log.error("signature is not correct\n");rn else rn log.info("signature is correct\n");rn rn[/code]rnrnpubkey用下面的方法从文件中读取(从网上找到的一个方法):rn[code=java]rnpublic PublicKey getPemPublicKey(String filename) throws Exception rn File f = new File(filename);rn FileInputStream fis = new FileInputStream(f);rn DataInputStream dis = new DataInputStream(fis);rn byte[] keyBytes = new byte[(int) f.length()];rn dis.readFully(keyBytes);rn dis.close();rnrn String temp = new String(keyBytes);rn String publicKeyPEM = temp.replace("-----BEGIN PUBLIC KEY-----\n", "");rn publicKeyPEM = publicKeyPEM.replace("-----END PUBLIC KEY-----", "");rnrn Base64 b64 = new Base64();rn byte [] decoded = b64.decode(publicKeyPEM);rnrn X509EncodedKeySpec spec =rn new X509EncodedKeySpec(decoded);rn //KeyFactory kf = KeyFactory.getInstance(algorithm);rn KeyFactory kf = KeyFactory.getInstance("RSA");rn return kf.generatePublic(spec);rn rn[/code]rn一个一个比较了signature中的参数,"sig" and "md" 与C代码中的值完全对应除了C中是用unsigned char来表示一个byte,而java中的byte是有符号的值,到底哪里有问题了??谢谢各位!!
android 微信登录返回 -6
android 微信登录返回 -6 场景: 使用Android studio运行debug版程序,微信登录返回errocode = -6 。无法正常登录 原因: 网上查阅下:是签名与微信开放平台上注册的不一致导致的。 导致这个问题的原因有几种,如签名是79:1E:0B:61:1B:2F:E0:24,要填写成791E0B611B2FE024. 而我这原因是填写在开放平台上面的签名
Android接入微信登录 handleIntent一直为false如何解决?
如题 这是自定义Application里的代码rn[code=java]rnprivate void registToWX() rn mWxApi = WXAPIFactory.createWXAPI(this, WEIXIN_APPID, false);rn // 将该app注册到微信rn mWxApi.registerApp(WEIXIN_APPID);rn rn[/code]rnrn这是登录页面里的rn[code=java]rnpublic void wxLogin() rn if (!BaseApp.mWxApi.isWXAppInstalled()) rn ToastUtils.showShort(mActivity,"您还未安装微信客户端");rn return;rn rn SendAuth.Req req = new SendAuth.Req();rn req.scope = "snsapi_userinfo";rn req.state = "wechat_sdk_xb_live_state";rn BaseApp.mWxApi.sendReq(req);rn rn[/code]rnrn这是WXEntryActivityrn[code=java]rnpublic class WXEntryActivity extends Activity implements IWXAPIEventHandler rn private static final int RETURN_MSG_TYPE_LOGIN = 1;rn private static final int RETURN_MSG_TYPE_SHARE = 2;rn private static final String TAG = "WXEntryActivity";rn public static String code;rnrn @Overridern protected void onCreate(@Nullable Bundle savedInstanceState) rn super.onCreate(savedInstanceState);rnrn boolean handleIntent = BaseApp.mWxApi.handleIntent(getIntent(), this);rnrn //下面代码是判断微信分享后返回WXEnteryActivity的,如果handleIntent==false,说明没有调用IWXAPIEventHandler,则需要在这里销毁这个透明的Activity;rn if(!handleIntent)rn Log.d(TAG, "onCreate: "+handleIntent);rn finish();rn rn rnrn @Overridern protected void onNewIntent(Intent intent) rn super.onNewIntent(intent);rn setIntent(intent);rn BaseApp.mWxApi.handleIntent(intent, this);rn rnrn // 微信发送请求到第三方应用时,会回调到该方法rn @Overridern public void onReq(BaseReq req) rn Log.v(TAG, "onReq: ");rn finish();rn rnrn // 第三方应用发送到微信的请求处理后的响应结果,会回调到该方法rn //app发送消息给微信,处理返回消息的回调rn @Overridern public void onResp(BaseResp resp) rn Log.v(TAG,resp.errStr);rn Log.v(TAG,"错误码 : " + resp.errCode + "");rn switch (resp.errCode) rn case BaseResp.ErrCode.ERR_AUTH_DENIED:rn case BaseResp.ErrCode.ERR_USER_CANCEL:rn if (RETURN_MSG_TYPE_SHARE == resp.getType()) ToastUtils.showShort(WXEntryActivity.this,"分享失败");rn else ToastUtils.showShort(WXEntryActivity.this,"登录失败");rn break;rn case BaseResp.ErrCode.ERR_OK:rn switch (resp.getType()) rn case RETURN_MSG_TYPE_LOGIN:rn code = ((SendAuth.Resp) resp).code;rn Log.v(TAG,"code = " + code);rn finish();rn break;rn case RETURN_MSG_TYPE_SHARE:rn ToastUtils.showShort(WXEntryActivity.this,"微信分享成功");rn finish();rn break;rn rn break;rn rn rnrn[/code]rnrn有木有大佬知道是什么问题?rnrn
php的move_uploaded_file一直返回false
rnrn```rn rn rnrnrnrn```rnrn
为什么我的create一直返回FALSE?
CSersocket : public CAsyncSocket,然后在一个对话框类里定义CSersocket m_sersocket;m_sersocket.Create()总是返回FALSE,哪位高人指点一下?
代码中的方法一直返回FALSE
- (BOOL)checkForDigits rn NSString *editableExpression = self.expression.text;rn for (int i = 0; i < editableExpression.length; i++)rn char charAtPosition = [editableExpression characterAtIndex:i];rn for (int c = 0; c < 10; c++ )rn char digitAtPosition = digits[c];rn if (charAtPosition == digitAtPosition)rn return TRUE;rn rn rn else rn return FALSE;rn rn rn rn rnrn一直返回False不知道为什么。rnrn我用了isNaN方法但是没有用,于是我自己做了isNaN。数字列阵:rnrn char digits[10] = '1', '2', '3', '4', '5', '6', '7', '8', '9';
【Android】无法在外置存储上创建文件夹,file.mkdirs()一直返回false
这种情况在Android6.0之前都是不存在的,6.0在权限管理方面更加全面,在读写外置存储的时候不仅要在manifest中静态授权,还需要在代码中动态授权。 0.首先,在Manifest中添加基本的权限: 1.然后,在Activity中发起权限请求: ActivityCompat.requestPermissions(MainActivity.this, new
Android微信登录
公司需要做微信登录模块,以前做过忘了,这次记下来省的以后忘了 首先去官网申请账号什么的,就不记录了 直接上代码 1.首先在自己包下建立一个包(wxapi)包名必须叫这个 2.WXentryActivity代码 public class WXEntryActivity extends AppCompatActivity implements IWXAPIEventHandler { pu...
android 微信登录
public class WXEntryActivity extends Activity implements IWXAPIEventHandler { private static final String TAG = WXEntryActivity.class.getSimpleName(); // IWXAPI 是第三方app和微信通信的openapi接口 pr
Android 微信登录
/1、首先你得到微信.开放平台申请开发权限:https://open.weixin.qq.com/ 申请通过效果如下即可 2、其次,阅读开发文档: https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&amp;t=resource/res_list&amp;verify=1&amp;id=open141931...
微信登录,返回-6错误
解决:1、验证签名是否正确,下载开放平台给的获取签名的软件,获取到自己的签名,特别注意:开放平台说的签名,不是签名sha1值,而是签名文件的md5值,把获取到的值,设置到开放平台的你的App里面。2、如果之前运行过App,那么,别犹豫,重启手机,重新调取微信登录,会好使的,不用等一天,也不用等5个小时,立刻见效。踩过的坑,分享下。...
asmack调用MultiUserChat.isServiceEnabled返回false怎么解?
想用asmack+openfire做个简单的聊天软件,做到群聊的时候看log可以创建群聊成功,但是调用MultiUserChat.getJoinedRooms一直得不到room列表。rn然后调用MultiUserChat.isServiceEnabled试了一下竟然是false。这个怎么解?有没有大牛遇到过?rnrnrnrn今天中午之前调用MultiUserChat.getJoinedRooms()一直有EXCETPION404-NOT-FOUND ,,,现在没有exception了但是返回的房间一直都是空的,rn看了下log 不太对啊 看下面我得到MultiUserChat.getJoinedRooms()的返回值(没有房间)的时候(绿色部分log),真正的数据还没返回回来啊(红色部分log)!rnrnrn我对这个协议不了解rn看前面蓝色部分的log是我自己给自己发了个get请求吗??rn还有下面紫色部分的log是我sent出去一个正确的返回结果???这是怎么回事rn我的直觉是smack在我收到第一条RCV数据的时候就给我返回了,而没有等到正确结果的返回,这是咋回事啊????rnrnrnrn[color=#3366FF]12-18 06:30:44.741: D/SMACK(967): 06:30:44 AM SENT (1079714864): rn12-18 06:30:44.821: D/SMACK(967): 06:30:44 AM RCV (1079714864): rn[color=#00FF00]12-18 06:30:44.851: D/nicholas(967): joined campaign size = 0rn12-18 06:30:44.851: D/nicholas(967): campaign size = 0[/color]rn[color=#800080]12-18 06:30:44.871: D/SMACK(967): 06:30:44 AM SENT (1079714864): [/color]rn[color=#FF0000]12-18 06:30:44.871: D/SMACK(967): 06:30:44 AM RCV (1079714864): [/color]
这样的调用是不是总返回false?
//类调用自己的成员变量和方法rnpublic class Alpharn private int iam;rn boolean isEqualTo(Alpha anotherAlpha)rn if (this.iam==anotherAlpha.iam) return true;rn else return false; rn rnrnrnrn//这样的调用是不是总返回false?
C# 调用dll的时候返回false
代码是:rn[DLLImport("Generator.dll",EntryPoint="ResetMachine")]rn[return:MarshalAs(UnmanagedType.I1)]rnpublic static extern bool ResetMachine();rnrn使用的时候直接用一个 if 判断,if里面判断以后执行的程序,不对ResetMachine()进行操作,只是些C#的认证之类的rnif(ResetMachine())rnrn //true执行的程序rnelsernrn //false执行的程序rnrnrn他写的是回调函数,在返回以前用弹出框返回了值,是true,但是到我这边调用判断的时候就成false了rnrn求高手帮忙解决下、、、 、、、
winIo32.dll调用InitializeWinIo老返回false
测试平台 xp rn测试IDE vc6.0rn使用方法。动态加载winIo32.dll 再调用其函数InitializeWinIo ,结果一直返回false。rn具体代码:rn[code=C/C++]rn HINSTANCE hMod;rn hMod = LoadLibrary("WinIo32.dll");rn //LoadLibraryEX();rn ASSERT(hMod,"winIo32.dll 加载错误!");rn InitializeWinIo =(InitializeWinIo_Type)GetProcAddress(hMod,"InitializeWinIo");rn ShutdownWinIo =(ShutdownWinIo_Type)GetProcAddress(hMod,"ShutdownWinIo");rn GetPortVal = (GetPortVal_Type)GetProcAddress(hMod,"GetPortVal");rn SetPortVal = (SetPortVal_Type)GetProcAddress(hMod,"SetPortVal");rnrn bool bResult=false; rn ShutdownWinIo();rn bResult = InitializeWinIo(); rn if (!bResult)rn printf("Load winIO fail\n");rnrn[/code]rnrn使用的winIo32.dll也曾经测试过 winIo.dll(第二版本的)也是失败。rn请问各位大侠有没有发生过同样问题,谈谈你的解决方法。
onclick="" 调用多个函数. 返回false的问题
rn rnrn rn email:rn rn 手机:rn rn rn
qt5调用dll,load()返回的都是false
qt5.7rn编译器 msvc2015(qt集成好了的,适合小白了)rn要调用的dll 叫 ftd2xx.dll(是某usb芯片的动态库)rn在没有lib的情况下[color=#FF0000]显示链接[/color]rnMFC中显示调用已经成功rn参考网上资料使用QLibrary加载dllrn可是load()返回的都是false,各种位置放dll文件都不行,感觉是没有找到dll文件rn大神,救我
调用微信登录,分享,支付
调用微信登录,分享,支付 一.微信登陆分三个步骤: 1).微信授权登陆 2).根据授权登陆code 获取该用户token 3).根据token获取用户资料 4).接收微信的请求及返回值 如果你的程序需要接收微信发送的请求,或者接收发送到微信请求的响应结果,需要下面3步操作: a. 在你的包名相应目录下新建一个wxapi目录,并在该...
Android微信登录之微信登录不走回调
由于新项目赶工期,先标题占位后补上,有需要问的也可以qq1213998663, 走过的坑忙完再见详解。。。。
false false false COleDropTarget::Register,返回为什么总是false!!!!!!!
各位高手请看,rnrn程序总体结构如下:rn主线程产生新线程,新线程DoModal一个DLG,在DLG中建了一个COleDropTarget的CListCtrl,结果注册时不行。rn相同代码在测试程序中好用,难道工作线程和OLE的注册有冲突吗?还是资源提供的不全?产生注册失败的可能性有几种?可以归类一下给我吗?
android 外部存储创建文件夹总是返回false的问题
项目需要在外部存储中新建立文件夹,部分代码如下: if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){     File file=new File(Environment.getExternalStorageDirectory(),"Demo");//路径是/mnt/sdcard    
微信登录授权返回的code乱码
在做移动端微信登录的时候,有的人遇到微信登录授权之后获得的code是这样的" ᘀ游客61076345ȀȀȀ",而正确的code应该是类似"001mvv6k00y8In1SbA6k00II6k0mvv6E"这样的,所以去验证的时候回返回错误码40029,invalid codern为什么会有出现类似如 ᘀ游客61076345ȀȀȀ这种code呢?rn各位大侠有遇到过吗?
解决微信登录返回-6ERR_BAN 的方式
解决方式:原因是某一台机器生成apk后间接生成了微信签名,日后只会以这台机器的签名为准,其他机器生成的apk会以其他机器为准,最终的签名正确与否取决于微信开放平台上的应用签名是什么,如下图:签名生成方式以开放平台上的工具为准,如下图使用方式是将自己生成的apk和签名生成工具放到一个android设备上,点击签名工具即可查看自己的apk对应的签名,放到自己的开放平台上即可...
Android 微信登录框
activity_main.xml代码: ​ &amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt; &amp;lt;LinearLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; xmlns:app=&quot;http://schemas.android.com/apk/res-auto...
android程序集成微信登录
第一步 需要到官网上注册、认证 微信开放平台:https://open.weixin.qq.com 网站 代码: 上面的这些代码就可以调起微信了。然后授权成功后,微信会返回一个code,下面介绍如何接收微信回传的信息。 1,要在你在你的包名相应目录下新建一个wxapi目录,并在该wxapi目录下新增一个WXEntryActivity.java文件,输入类似下
Android微信登录(shareSDK)注意事项
Android微信登录是个坑(shareSDK)标签(空格分隔): shareSDK 微信登录 Android第三方登录,只有微信是最麻烦的东西,之所以说麻烦是官方文档写的真的,网上的各种demo虽然能跑,但是却总有一些小问题注意不到。首先,注册微信的开发者帐号,注意先生成Key文件,打包,然后再去获得微信需要的两个值。检查工具 下载检查工具 微信包的位置,写法要严格 <activity an
详细的Android微信登录教程
创建应用及申请AppId 点击按钮创建应用 填写基本信息 填写平台信息 填写应用签名和报名,签名可以通过微信平台提供的签名获取工具进行获取 传送门[签名获取工具](https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419319167&tok
android 微信登录与分享集成
android 微信登录与分享 android微信登录与分享这两个功能是很常用的,尤其是现在微信用户日益剧增,qq虽然很经典但是感觉大多数用来办公每个写android的小伙伴估计都会写到这个功能,我也是很久没有写android了,这相当于是在毕业之后工作上面第一次写安卓 程序,不管会不会,就是写。总会有办法解决问题的。 一、若要想深究其原理请查看官方文档https
android 微信登录 友盟 v6.9.0
友盟最新版本6.9.0集成微信登录 首先说一下集成的步骤 1.到微信开发者平台注册软件并获取软件的AppID和AppSecret 2.创建友盟开发者账号,创建应用,获取appkey 3.下载微信登录相关的sdk,并集成到项目中 4.添加微信回调activity 5.配置Android Manifest XML,注册微信回调activity,添加权限 6.在application中初始...
Android微信登录和分享等功能
Android微信登录和分享等功能 实现分享 Android Studio微信集成 调试完成
Android微信登录接入
导入包 compile 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+' 点击微信登录的按钮后,调用该方法,该方法会拉起微信登录确认页面 private void regToWx() { IWXAPI api; api = WXAPIFactory.createWXAPI(this, WX_APP_ID, t
android集成第三方微信登录
项目需要用到第三方登录的微信数据,已调试好并集成到项目中,给大家分享一下。第一步:在微信开放平台创建安卓应用,需要输入的包名和签名就不用再提吧,不知道的自行百度。 应用创建完毕后会得到两个值:AppID、AppSecret,用这两个值来请求微信。 然后去微信开放平台的资源中心 ,选择安卓资源包 ,如图: 注意:输入的包名和签名要和项目中的一致!第二步:将安卓资源包中的libammsdk.j
android 友盟第三方登录之微信登录
一、去微信开放平台的管理中心申请移动设备的审核(需进行开发者资质认证,每年300元) 1、获取应用的签名   2、在微信开放平台申请移动应用 两个注意点:①签名要填对 ②应用的包名要写对(tips: com.**.**) 在应用通过审核后,拿到了AppId和AppSecret,这样我们具备了和微信授权登录的基本条件。 二、导入友盟的第三方登录的jar
Android——微信登录、分享
写在前面的话 应用要接入微信登录,分享,需要在微信的开发者平台上进行提交应用,并且审核通过,应用已经获取到appId。 相关jar包下载地址:http://download.csdn.net/detail/sapce_fish/9571142 也可到官网下载:https://open.weixin.qq.com 将 libammsdk.jar 引进自己的项目中 第一步:在M
Android 微信套餐之微信登录
小白踩坑 谨慎! ! ! !   谨慎! ! ! !   谨慎! ! ! ! 关于微信登录 和微信进行绑定  第一步 :导入依赖 api 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+' //api 全局使用 第二步 : Application里面进行初始化App和初始化 public class App ...
Android 微信登录授权、微信分享
1.先去微信开放平台注册账号,然后创建应用,签名工具下载(在页面最下面),不细说。创建成功得到appid和secret(注册到微信、获取参数什么的都会用到)有个注意点,就是添加应用的时候会要签名,你测试的签名跟线上的签名不一样,会出现测试环境下可以调起微信,但是线上发布的不行,原因就是签名的问题,注意及时更换。2.配置环境,添加依赖dependencies { compile 'com.t...
支付宝反校验签名isSign一直返回false的解决办法之一
气死我了!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 我又一次跪在支付宝的脚下了!! 问题的原因是:我把上传到支付宝的公钥用来反校验签名了,应该是支付宝本身的公钥来验证而不是你上传的公钥!!!!! 通用的支付宝公钥:登录b.alipay.com,查看支付宝公钥!
Android微信登录引起的内存泄漏
近日公司需求跟得不紧,就自己找事优化,重构,找内存泄漏(如有错误,烦请拍砖) 内存泄漏工具之前的写的博客也有介绍 内存泄漏检测工具很好用,下面用LeakCanary找一个微信登录引起的内存泄漏(其实微信是有做释放操作,但是文档和demo中没有见到) 泄漏信息 图中可以看出自己应用的WeChatLoginActivity的实例没有回收掉导致的内存泄漏,再往上是WXApiImpV10中的
Android 实现微信登录
1.在微信开放平台 创建移动应用,并通过审核 2.导入包 compile ‘com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+’ 3.AndroidManifest.xml 设置权限 和返回结果<uses-permission android:name="android.permission.INTERNET"/> <uses-permiss
相关热词 c#检测非法字符 c#双屏截图 c#中怎么关闭线程 c# 显示服务器上的图片 api嵌入窗口 c# c# 控制网页 c# encrypt c#微信网页版登录 c# login 居中 c# 考试软件