iOS - 小功能 跳转到淘宝或天猫的商品展示详情页
最近做iOS项目的时候遇到一个需求,点击广告页,跳转到淘宝或天猫的商品详情页。
具体需要是这样:
1)安装了淘宝:跳转到淘宝详情页。
2)没装淘宝,装了天猫:跳转到天猫详情页
3)淘宝、天猫都没装:跳转到应用自己的页面,加载网页。
或者跳转到Safari浏览器
1)可以使用阿里百川的SDK完成。 文档地址:http://baichuan.taobao.com/doc2/detail.htm?spm=a3c0d.7629140.0.0.fXnfzs&treeId=51&articleId=102860&docType=1
2)拿到淘宝、天猫url scheme及相应的链接,自己完成跳转。代码如下:
- //loadURL 网店地址 loadURL 网店地址不加 http:// 可以前后台商议 此为不加方法
- //NSURL *taobaoUrl = [NSURL URLWithString:[NSString stringWithFormat:@"taobao://item.taobao.com/item.htm?id=%@", book_id]];
- //NSURL *tmallUrl = [NSURL URLWithString:[[NSString stringWithFormat:@"tmall://tmallclient/?{\"action\":\"item:id=%@\"}", book_id] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
- NSURL *taobaoUrl = [NSURL URLWithString:[NSString stringWithFormat:@"taobao://@", loadURL]];
- NSURL *tmallUrl = [NSURL URLWithString:[[NSString stringWithFormat:@"tmall://%@",loadURL}", book_id] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
- NSURL *defaultUrl = [NSURL URLWithString:[NSString stringWithFormat:@"http://%@", loadURL]];
- if ([[UIApplication sharedApplication] canOpenURL:taobaoUrl]) {
- //能打开淘宝就打开淘宝
- [[UIApplication sharedApplication] openURL:taobaoUrl];
- } else if ([[UIApplication sharedApplication] canOpenURL:tmallUrl]) {
- //能打开天猫就打开天猫
- [[UIApplication sharedApplication] openURL:tmallUrl];
- } else {
- //都打不开就加载自己的网页
- /*
- KGAdWebVC *adWebVC = [[KGAdWebVC alloc] init];
- adWebVC.url = splash_url;
- [self.navigationController pushViewController:adWebVC animated:YES];
- */
- //跳浏览器
- [[UIApplication sharedApplication] openURL:tmallUrl];
- }
当用户从外部浏览器(如:UC、Safari)点击有关app的按钮时,实现一下功能
1、用户未安装app,点击按钮跳转到app的下载页面
2、用户已安装app,点击按钮打开app并显示指定页面(如注册,登录等)
首先我们给app添加一个URL Types,用于给web打开的接口

然后我们在web的代码中添加一下脚本即可

1、如果用户未安装app,点击按钮跳转到app的下载页面
2、用户已安装app,点击按钮只能打开app
二、实现跳转到app指定页面
在web页面里设置参数,
如果要实现跳转到指定页面,就需要传 参数 表示跳转到哪个页面,只需要在上面的网址里:即 ifr.src = 'com.zttd.webApp//参数'
例如跳到登录页面:ifr.src = 'com.zttd.webApp//Login'
在APP里接收该参数,并解析进行跳转,需要在AppDelegate文件里实现以下两种方法,最好两种都写,否则可能接收不到数据,接收到该参数后,进行解析通过通知并跳转到指定页面

iOS - 小功能 跳转到淘宝或天猫的商品展示详情页的更多相关文章
- Android点击跳转到淘宝的某一商品详情页或者某一店铺页面
最近项目的有个需求是点击购买资料按钮进入淘宝界面,简单分析一下,如果用户手机有淘宝就打开淘宝的页面,没有的话也可以选择使用webView进行展示,还是使用手机浏览器进行展示. 判断有无淘宝的代码就不贴 ...
- Android跳转淘宝、京东APP商品详情页
import Android.content.Intent; import android.content.pm.PackageManager; import android.net.Uri; imp ...
- iOS app url scheme跳转到淘宝商品详情页 唤醒app
最近涉及的一个业务,在app内的一个广告,点击打开webView,加载的是一个淘宝商品详情页,效果是打开该webView自动跳转至淘宝对应的页面,同时在自己的app仍然加载页面,点击评论等也同样能跳转 ...
- 淘宝、天猫又开源了一个动态化、高性能的UI框架
前言 淘宝.天猫一直致力于解决 页面动态化的问题 在2017年的4月发布了v1.0解决方案:Tangram模型 及其对应的 Android库 vlayout,该解决方案在手机淘宝.天猫 Android ...
- 淘宝开放平台TOP SDK调用对接淘宝或天猫
如果在淘宝/天猫上开了网店,用户自己也有一套自己的管理平台,这时可能会考虑和淘宝进行数据对接.这就需要考虑调用阿里提供的开发接口来推送和接收数据. 对接的方式有2种,一种是通过http接口,另外一种是 ...
- BBS项目分布搭建三(个人站点时间归档补充,实现侧边栏跳转、无线级分类、实现文章详情页展示功能)
BBS项目分布搭建三(个人站点时间归档补充,) 1. 个人站点时间归档 """ settings.py设置最好更改以下: LANGUAGE_CODE = 'zh-hans ...
- iOS开发——UI进阶篇(十)导航控制器、微博详情页、控制器的View的生命周期
一.导航控制器出栈 1.initWithRootViewController本质 UIViewController *vc = [[OneViewController alloc] init]; // ...
- ios小功能
1.开 发过程中,我们通过http请求,后台返回json数据,而有时数据里某一字段的值为null-,然后我们把此值赋值给 NSArray,NSdictionary,或是NSString,然后我们会判断 ...
- ios学习笔记图片+图片解释(c语言 oc语言 ios控件 ios小项目 ios小功能 swift都有而且笔记完整喔)
下面是目录其中ios文件夹包括了大部分ios控件的介绍和演示,swift的时完整版,可以学习完swift(这个看的是swift刚出来一周的视频截图,可能有点赶,但是完整),c语言和oc语言的也可以完整 ...
随机推荐
- Kubernetes kubectl 命令概述
kubectl用于运行Kubernetes集群命令的管理工具. 语法 kubectl [command] [TYPE] [NAME] [flags] command:指定要在一个或多个资源执行的操作 ...
- [转]Windows内存堆内容整理总结
在系统安全研究中,堆,是一个极其重要的内存区域以及研究的热点.堆,区别于栈区.全局数据区以及代码区,它的主要作用是允许程序在运行时动态地申请某个大小的内存空间.本文将从宏观到微观,简单梳理总结一下Wi ...
- 文件分片 浏览器文件大小限制 自定义请求头 在一个资源的加载进度停止之后被触发 arrayBuffer 异步 二进制数据缓存区
js 整数限制 浏览器文件大小限制 https://w3c.github.io/FileAPI/#dom-blob-arraybuffer https://developer.mozilla.org/ ...
- SQLServer string_split函数,撕裂函数,撕开函数
declare @name char(1000) --注意:char(10)为10位,要是位数小了会让数据出错 set @name='s{sss}fc{fggh}dghdf{cccs}x' selec ...
- 解决Ubuntu系统“无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系”的有效方法
ubuntu系统下安装东西,很多时候会出现版本冲突的情况: 有效的解决方法是使用aptitude来帮助降级. 首先安装aptitude 而后使用aptitude来安装前面有冲突的构建,同样也是要使用r ...
- 虚拟机VirtualBox 共享挂载问题:mount: /mnt/xxx: wrong fs type, bad option, bad superblock on xxx
设置好共享文件夹之后,在/mnt下面建立了一个wwwroot文件夹,然后去欢天喜地的去挂载, mount -t vboxsf www /mnt/wwwroot 结果系统提示: mount: /mnt/ ...
- Could not get JDBC Connection; nested exception is java.sql.SQLException: ${jdbc.driver}
在一个SSM分布式项目中一个服务报错: ### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnec ...
- Spring整合Redis,并配置Jedis连接池
目录 只言片语 创建redis连接池的配置文件 单机版 spring整合redis(使用JedisPool) 项目中使用示例 集群版 spring整合redis(使用JedisCluster) 项目中 ...
- k8s记录-master组件部署(八)
在 192.168.0.1 app 用户下执行1)程序准备tar zxvf kubernetes-server-linux-amd64.tar.gzmv kubernetes/server/bin/{ ...
- 转 zabbix debug and zabbix使用percona插件监控mysql
########## https://www.cnblogs.com/keithtt/p/8542987.html zabbix使用percona插件监控mysql 1.添加percona仓库. ...