作者:真理往往是废话 | 来源:互联网 | 2023-09-07 18:55
篇首语:本文由编程笔记#小编为大家整理,主要介绍了IOS 支付宝微信回调传值给H5网页相关的知识,希望对你有一定的参考价值。
这里用是的苹果原生和JS的交互 、有不明白JavascriptCore框架的可以去网上搜索下这方面的资料很多
废话不多说直接上代码
@protocol JSContextDelegate <JSExport>
@interface htmlShopingViewController ()<JSContextDelegate>@property (nonatomic, strong) UIWebView *mainWebView;@property (nonatomic, strong) JSContext *jsContext;
- (void)viewDidLoad {
[super viewDidLoad]; self.alipayCode = @"";
接着在webview的代理方法中写
- (void)webViewDidFinishLoad:(UIWebView *)webView{self.jsCOntext= [webView valueForKeyPath:@"documentView.webView.mainFrame.JavascriptContext"]; self.jsContext[@"填H5端的方法名(如abc. 方法名,取abc)"] = self;
微信的和系统返回键的值同理、这里就只写支付宝 怎么传值可以参考http://www.jianshu.com/p/2536a7d689a5
#pragma mark - 支付宝支付后接收的值(状态码)- (void)aliPayReslut:(NSNotification *)notfication { self.alipayCode = notfication.userInfo[@"resultStatus"];
支付宝在传值的时候需要注意一下
上面的是在手机上安装了支付宝客户端,没有安装客户端的情况就需要在支付宝在没有客户端的时候传回状态码的地方调用
最后在写一个在支付过程中直接点击左上角的返回App的处理
当点击左上角返回App的时候回调用AppDelegate.h用的这个方法
- (void)applicationWillEnterForeground:(UIApplication *)application {
上面同和支付宝一样的传值给H5端,进行界面跳转处理。OK写到这里就搞定了支付宝、微信回调传值给H5网页,写的不好莫怪。
关注微信公众号
学习区块链
如果你觉得我的文章对你有帮助,请支持我,你的支持是我最大的动力