iOS中html打开APP传参
1、在项目info.plist中添加URL Types以供html调用
2.html代码
<html>
<head lang="en">
<meta charset="UTF-8">
<title>支付页面</title> </head> <script type="text/javascript"> var url = location.search; //获取url中"?"符后的字串
var typestr="";
//截取参数 url=xxxx?type=1
if (url.indexOf("?") != -1) {
typestr = url.split("type=")[1];
} //支付宝
if(typestr==1){
//支付宝调起应用
window.load=AliPay();
}
else if(typestr==2){
//微信调起应用
window.load=Weixin();
} //支付宝调起应用,向应用传参数,0表示不做任何操作,1表示为支付宝调起的app,2表示为微信调起的app
function AliPay(){
if(confirm("是否打开支付宝?")){//点击了确定
document.location = "XXXXFromHtml://type:1";
}
else{//点击了取消后返回应用
document.location = "XXXXFromHtml://type:0";
}
} //微信调起应用
function Weixinclick(){
if(confirm("是否打开微信?")){//点击了确定
document.location = "XXXXFromHtml://type:2";
}
else{//点击了取消
document.location = "XXXXFromHtml://type:0";
}
} </script>
<body>
</body>
</html>
3.客户端代码
- (BOOL)application:(UIApplication )application openURL:(NSURL )url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{}
//打开外部链接回调
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { //网页调起app外面链接url type
NSString *string =url.absoluteString;
if ([string hasPrefix:@"xxxxfromhtml://"]) {
//截取html传递的参数类型
NSString *type=[[string pathComponents] lastObject];
NSString *typeStr = [[type componentsSeparatedByString:@":"]lastObject];
NSInteger apptype = [typeStr integerValue];
// DebugLog(@"%@",array);
BaseNavigationController *nav=(BaseNavigationController*)self.window.rootViewController;
//当前离开应用的控制器
if ([[nav.childViewControllers lastObject] isKindOfClass:[XXXXPayViewController class]]) {
//从网页调起app,不会调用充值界面方法,需手动调用
XXXXPayViewController *scoreVC=[nav.childViewControllers lastObject];
//在内部调用支付的应用跳转
[scoreVC fromWebHtmlWithType:apptype];
}
return YES;
}
}
iOS中html打开APP传参的更多相关文章
- js中使用进行字符串传参
在js中拼接html标签传参时,如果方法参数是字符串需要加上引号,这里需要进行字符转义 <a href='javascript:addMenuUI("+"\"&qu ...
- vue中组件间的传参
1.父传子 父组件准备一个数据,通过自定义属性给子组件赋值,进行传递 在子组件中通过 props 属性来接收参数 <body> <div id="app"> ...
- iOS H5页面打开APP技术总结
iOS端H5页面打开APP的方式目前主要有两种:URL Scheme和Universal Links.其中Universal Links是iOS9.0以后推出的一种新的方案,由于它需要在iOS9.0以 ...
- ios 根据 schemes 打开 app
公司出需求,要让 h5链接直接打开用户的 app,如果没有安装 app 直接跳转到 appStore 这就需要给 app 配置 schemes 即可 1.在Info.plist中 LSApplicat ...
- requests中get和post传参
get请求 get(url, params=None, **kwargs) requests实现get请求传参的两种方式 方式一: import requests url = 'http://www. ...
- python中导入一个需要传参的模块
最近跑实验,遇到了一个问题:由于实验数据集比较多,每次跑完一个数据集就需要手动更改文件路径,再将文件传到服务器,再运行实验,这样的话效率很低,必须要专门看着这个实验,啥时候跑完就手动修改运行下一个实验 ...
- python flask学习第2天 URL中两种方式传参
新创建项目 自己写个url映射到自定义的视图函数 在url中传递参数 app.py from flask import Flask app = Flask(__name__) @app.route ...
- 使用python读取配置文件并从mysql数据库中获取数据进行传参(基于Httprunner)
最近在使用httprunner进行接口测试,在传参时,用到了三种方法:(1)从csv文件中获取:(2)在config中声名然后进行引用:(3)从函数中获取.在测试过程中,往往有些参数是需要从数据库中获 ...
- vue-router中query和params传参(接收参数)以及$router、$route的区别
query传参: this.$router.push({ path:'/...' query:{ id:id } }) 接收参数:this.$route.query.id params传值: 传参: ...
随机推荐
- 【JAVA算法题】职业抢劫
题目 /*You are a professional robber planning to rob houses along a street. * Each house has a certain ...
- @implementer,抽象类,接口
@implementer,抽象类,接口 1. implementer 在看twisted源码时,经常出现@implementer(IReactorFDSet) 它来自zope.interfa ...
- centos6.9下 svn 1.7.10版本 编译安装
svn安装推荐文章: 1. http://blog.51cto.com/myhat/786950 2. https://blog.csdn.net/test1280/article/det ...
- Codeforces Round #579 (Div. 3)D(字符串,思维)
#include<bits/stdc++.h>using namespace std;char s[200007],t[200007];int last[200007][27],nxt[2 ...
- 嵌入式编程中使用 do{...} while(0) 的解释
最近在看esp32的idf,有一些宏定义使用了do while(0)这种看起来好像没啥用的代码.然后我查了一下资料,发现在linux内核代码中经常用到这个东西! 现在就将这个东西整理一下. 为什么在内 ...
- python学习 —— seaborn、matplotlib、pandas、numpy package的混合使用
这里使用了Titanic Machine learning数据集,然后通过Seaborn的函数来拟合和绘制回归线,matplotlib进行可视化. 先来一个简单的测试: import pandas a ...
- matlab练习程序(龙格库塔法)
非刚性常微分方程的数值解法通常会用四阶龙格库塔算法,其matlab函数对应ode45. 对于dy/dx = f(x,y),y(0)=y0. 其四阶龙格库塔公式如下: 对于通常计算,四阶已经够用,四阶以 ...
- Python使用正则表达式(Regular Expression)超详细
一.导入re库 python使用正则表达式要导入re库. import re在re库中.正则表达式通常被用来检索查找.替换那些符合某个模式(规则)的文本.ps:另外很多人在学习Python的过程中,往 ...
- 113、Java中String类之字符串文本分割IP地址
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- java set的线程安全
CopyOnWriteArraySet和ConcurrentSkipListSet 与线程不安全的集合类的对应关系 HashSet -> CopyOnWriteArraySet TreeSet ...