最近在做ios端微信支付的时候遇到无法挂起微信界面的情况,执行[WXApi safeSendReq:req] 后 ,只看到微信的启动图,然后一闪而过又回到之前app,检查过了不是签名的问题,参数都是通过服务端传递,android版本是可以支付的,请问有人知道吗

解决方案 »

  1.   

    我也遇到了这个问题,没看出来原因,请楼主帮我看下呢:
    PayReq *request = [[PayReq alloc] init];
            request.openID=@"wxd930ea5d5a258f4f";
            request.partnerId = @"1900000109";//[resultDic objectForKey:@"partnerid"];
            request.prepayId= @"1101000000140429eb40476f8896f4c9";//[resultDic objectForKey:@"partnerid"];
            request.package = @"Sign=WXpay";
            request.nonceStr= @"139042a4157a773f209847829d80894d";//[resultDic objectForKey:@"noncestr"];
            NSString *timeStamp = [NSString stringWithFormat:@"%@", @"1398746574"];
            request.timeStamp = [timeStamp intValue];
            request.sign= @"7ffecb600d7157c5aa49810d2d8f28bc2811827b";//[resultDic objectForKey:@"sign"];
            [WXApi safeSendReq:request];
      

  2.   

      你这里的openid  是不需要传得   难道之前没有进行appid的注册?
      

  3.   

    1.检查签名是否正确
    2.在URL Schemes中检查是否添加微信 appid
    3.是否注册appid这三个是比较常见的无法启动微信支付的问题
      

  4.   

    PayReq *request = [[PayReq alloc] init];
            request.openID=@"wxd930ea5d5a258f4f";
            request.partnerId = @"1900000109";//[resultDic objectForKey:@"partnerid"];
            request.prepayId= @"1101000000140429eb40476f8896f4c9";//[resultDic objectForKey:@"partnerid"];
            request.package = @"Sign=WXpay";
            request.nonceStr= @"139042a4157a773f209847829d80894d";//[resultDic objectForKey:@"noncestr"];
            NSString *timeStamp = [NSString stringWithFormat:@"%@", @"1398746574"];
            request.timeStamp = [timeStamp intValue];
            request.sign= @"7ffecb600d7157c5aa49810d2d8f28bc2811827b";//[resultDic objectForKey:@"sign"];
    //        [WXApi safeSendReq:request];
            [WXApi sendReq:request];
      

  5.   


    PayReq *request = [[PayReq alloc] init];
            request.openID=@"wxd930ea5d5a258f4f";
            request.partnerId = @"1900000109";//[resultDic objectForKey:@"partnerid"];
            request.prepayId= @"1101000000140429eb40476f8896f4c9";//[resultDic objectForKey:@"partnerid"];
            request.package = @"Sign=WXpay";
            request.nonceStr= @"139042a4157a773f209847829d80894d";//[resultDic objectForKey:@"noncestr"];
            NSString *timeStamp = [NSString stringWithFormat:@"%@", @"1398746574"];
            request.timeStamp = [timeStamp intValue];
            request.sign= @"7ffecb600d7157c5aa49810d2d8f28bc2811827b";//[resultDic objectForKey:@"sign"];
    //        [WXApi safeSendReq:request];
            [WXApi sendReq:request];
      

  6.   

            PayReq *request = [[PayReq alloc] init];
            request.partnerId =[responseObject objectForKey:@"partnerId"];
            request.prepayId = [responseObject objectForKey:@"prepayId"];
            request.nonceStr = [responseObject objectForKey:@"nonceStr"];
            request.timeStamp = [[responseObject objectForKey:@"timeStamp"] intValue];
            request.package = @"Sign=WXpay";
            request.sign = [responseObject objectForKey:@"sign"];
      
            [WXApi sendReq:request];
    //        [WXApi safeSendReq:request];
    我的微信支付 用了下面那句调用 就会跳到微信再回来 但是没有支付页面    用上面的那个句请求 连微信都不打开 求解
      

  7.   

     PayReq *request = [[PayReq alloc] init];
            request.partnerId =[responseObject objectForKey:@"partnerId"];
            request.prepayId = [responseObject objectForKey:@"prepayId"];
            request.nonceStr = [responseObject objectForKey:@"nonceStr"];
            request.timeStamp = [[responseObject objectForKey:@"timeStamp"] intValue];
            request.package = @"Sign=WXpay";
            request.sign = [responseObject objectForKey:@"sign"];
          [WXApi safeSendReq:request];
    写法上都没错,我写这个微信支付遇到的问题就是跳到微信马上跳回app,当时上面几个参数都是后台返回的,request.package这个参数应该是Sign= WXpay,但是我们后台返回来是Sign\u003dWXpay,发现问题后,让后台改了下,再运行,问题解决了
      

  8.   

    我的问题也解决了,根据微信提供的demo多次对比后台的签名发现问题,后台在第二次签名时没有用 @"Sign=WXpay",虽然文档中说这样写request.package = @"prepay_id=1101000000140415649af9fc314aa427";但是不能这样,无论是第二次签名还是传给客户端都要用 @"Sign=WXpay"
      

  9.   

    应该是签名问题,你用demo的签名算法自己算出签名再试试
      

  10.   

    ios上不会来,安卓上正常,为什么?
      

  11.   

    Undefined symbols for architecture i386:
      "_CNCopyCurrentNetworkInfo", referenced from:
          -[MTAWXOHelper fetchSSIDInfo] in libWeChatSDK.a(MTAWXOHelper.o)
      "_CNCopySupportedInterfaces", referenced from:
          -[MTAWXOHelper fetchSSIDInfo] in libWeChatSDK.a(MTAWXOHelper.o)
      "_SCError", referenced from:
          -[MTAWXOReachability startNotifier] in libWeChatSDK.a(MTAWXOReachability.o)
      "_SCErrorString", referenced from:
          -[MTAWXOReachability startNotifier] in libWeChatSDK.a(MTAWXOReachability.o)
      "_SCNetworkReachabilityCreateWithAddress", referenced from:
          +[MTAWXOReachability reachabilityWithAddress:] in libWeChatSDK.a(MTAWXOReachability.o)
      "_SCNetworkReachabilityCreateWithName", referenced from:
          +[MTAWXOReachability reachabilityWithHostname:] in libWeChatSDK.a(MTAWXOReachability.o)
      "_SCNetworkReachabilityGetFlags", referenced from:
          -[MTAWXOReachability isReachable] in libWeChatSDK.a(MTAWXOReachability.o)
          -[MTAWXOReachability isReachableViaWWAN] in libWeChatSDK.a(MTAWXOReachability.o)
          -[MTAWXOReachability isReachableViaWiFi] in libWeChatSDK.a(MTAWXOReachability.o)
          -[MTAWXOReachability connectionRequired] in libWeChatSDK.a(MTAWXOReachability.o)
          -[MTAWXOReachability isConnectionOnDemand] in libWeChatSDK.a(MTAWXOReachability.o)
          -[MTAWXOReachability isInterventionRequired] in libWeChatSDK.a(MTAWXOReachability.o)
          -[MTAWXOReachability reachabilityFlags] in libWeChatSDK.a(MTAWXOReachability.o)
          ...
      "_SCNetworkReachabilitySetCallback", referenced from:
          -[MTAWXOReachability startNotifier] in libWeChatSDK.a(MTAWXOReachability.o)
          -[MTAWXOReachability stopNotifier] in libWeChatSDK.a(MTAWXOReachability.o)
      "_SCNetworkReachabilitySetDispatchQueue", referenced from:
          -[MTAWXOReachability startNotifier] in libWeChatSDK.a(MTAWXOReachability.o)
          -[MTAWXOReachability stopNotifier] in libWeChatSDK.a(MTAWXOReachability.o)
      "operator delete[](void*)", referenced from:
          +[WeChatApiUtil EncodeBase64:] in libWeChatSDK.a(WeChatApiUtil.o)
          +[WeChatApiUtil NsDataEncodeBase64:] in libWeChatSDK.a(WeChatApiUtil.o)
          +[WeChatApiUtil DecodeWithBase64:] in libWeChatSDK.a(WeChatApiUtil.o)
          +[WeChatApiUtil DecodeBase64:] in libWeChatSDK.a(WeChatApiUtil.o)
      "operator new[](unsigned long)", referenced from:
          +[WeChatApiUtil EncodeBase64:] in libWeChatSDK.a(WeChatApiUtil.o)
          +[WeChatApiUtil NsDataEncodeBase64:] in libWeChatSDK.a(WeChatApiUtil.o)
          +[WeChatApiUtil DecodeWithBase64:] in libWeChatSDK.a(WeChatApiUtil.o)
          +[WeChatApiUtil DecodeBase64:] in libWeChatSDK.a(WeChatApiUtil.o)
      "_deflate", referenced from:
          +[MTAWXOHelper GZip:Out:] in libWeChatSDK.a(MTAWXOHelper.o)
      "_deflateEnd", referenced from:
          +[MTAWXOHelper GZip:Out:] in libWeChatSDK.a(MTAWXOHelper.o)
      "_deflateInit2_", referenced from:
          +[MTAWXOHelper GZip:Out:] in libWeChatSDK.a(MTAWXOHelper.o)
      "_inflate", referenced from:
          +[MTAWXOHelper GUnzip:Out:] in libWeChatSDK.a(MTAWXOHelper.o)
      "_inflateEnd", referenced from:
          +[MTAWXOHelper GUnzip:Out:] in libWeChatSDK.a(MTAWXOHelper.o)
      "_inflateInit2_", referenced from:
          +[MTAWXOHelper GUnzip:Out:] in libWeChatSDK.a(MTAWXOHelper.o)
      "_sqlite3_bind_int64", referenced from:
          _execute_prepared_config_stmt in libWeChatSDK.a(MTAWXOStore.o)
          _execute_prepared_events_stmt in libWeChatSDK.a(MTAWXOStore.o)
      "_sqlite3_bind_text", referenced from:
          _execute_prepared_config_stmt in libWeChatSDK.a(MTAWXOStore.o)
          _execute_prepared_events_stmt in libWeChatSDK.a(MTAWXOStore.o)
      "_sqlite3_clear_bindings", referenced from:
          _execute_prepared_config_stmt in libWeChatSDK.a(MTAWXOStore.o)
          _execute_prepared_events_stmt in libWeChatSDK.a(MTAWXOStore.o)
      "_sqlite3_close", referenced from:
          -[MTAWXODataConfigHolder closeDB] in libWeChatSDK.a(MTAWXODataConfigHolder.o)
          -[MTAWXOStore closeDB] in libWeChatSDK.a(MTAWXOStore.o)
      "_sqlite3_exec", referenced from:
          _execute_update_sql in libWeChatSDK.a(MTAWXOStore.o)
          _execute_query in libWeChatSDK.a(MTAWXOStore.o)
          _execute_update in libWeChatSDK.a(MTAWXOStore.o)
      "_sqlite3_finalize", referenced from:
          _execute_prepared_config_stmt in libWeChatSDK.a(MTAWXOStore.o)
          _execute_prepared_events_stmt in libWeChatSDK.a(MTAWXOStore.o)
      "_sqlite3_free", referenced from:
          _execute_update_sql in libWeChatSDK.a(MTAWXOStore.o)
          _execute_query in libWeChatSDK.a(MTAWXOStore.o)
          _execute_update in libWeChatSDK.a(MTAWXOStore.o)
      "_sqlite3_open", referenced from:
          -[MTAWXODataConfigHolder getDB] in libWeChatSDK.a(MTAWXODataConfigHolder.o)
          -[MTAWXOStore getDB] in libWeChatSDK.a(MTAWXOStore.o)
      "_sqlite3_prepare_v2", referenced from:
          _execute_prepared_config_stmt in libWeChatSDK.a(MTAWXOStore.o)
          _execute_prepared_events_stmt in libWeChatSDK.a(MTAWXOStore.o)
      "_sqlite3_reset", referenced from:
          _execute_prepared_config_stmt in libWeChatSDK.a(MTAWXOStore.o)
          _execute_prepared_events_stmt in libWeChatSDK.a(MTAWXOStore.o)
      "_sqlite3_step", referenced from:
          _execute_prepared_config_stmt in libWeChatSDK.a(MTAWXOStore.o)
          _execute_prepared_events_stmt in libWeChatSDK.a(MTAWXOStore.o)
    ld: symbol(s) not found for architecture i386
    clang: error: linker command failed with exit code 1 (use 
    把库导入后出现这种情况,该导入的文件也导入了,就是编译不过,请楼主指教
      

  12.   

    是不是没有设置编译方式,微信是c++与oc混编的
      

  13.   

    签名的问题  用微信支付的demo的签名算法重新生成签名就可
      

  14.   

    xcode升级7之后,微信支付使用不了了,怎么办
      

  15.   

    我的微信支付也是输入支付密码之后出现无法解析 ,原因为:我在调取微信时,Android与IOS获取服务端prepay_id=wx20151009111454e0b583ff87025232107810时,Android是可以调取,但iOS出现解析问题。后台改为package         = @"Sign=WXPay"; 可以成功支付。
      

  16.   

    请问ios跳不出支付的原因就是package         = @"Sign=WXPay";  这个吗?
      

  17.   

    {"appId":"wx9e5b5b3a78f12349b34","nonceStr":"3add177074b0409a88d5cc5980545f33","package":"prepay_id=wx201510191738d3443d1df2012880127352","paySign":"76AB75480D100C9696CF86D7C7FACAC62","signType":"MD5","timeStamp":"1445246139"}
    这个哪有错?在IOS调用不出支付窗口
      

  18.   

    请问一下IOS调用不成功是神原因?
      

  19.   

    安卓的可以正常的进行微信支付,为什么iOS 不能正常的进行支付 ,请问楼主怎么解决
      

  20.   

    Sign=WXPay别有空格