ios外部链接或者app唤起自己的app
唤起自己的app,其实都是通过链接,关于这个需要了解下scheme,自己和调用方对接下协议,这里只是说明下到自己app指定页的问题
唤起自己的app分为两种情况
一.自己的app已经启动,那么唤起自己的app,就会直接走handleOpenURL(这个方法有3个,自行百度3个方法存在的时期),在这个方法里可以分发到指定页,这个没啥好说的,重点在第二种情况;
二.自己的app没启动,会先走didFinishLaunchingWithOptions,然后再走handleOpenURL,如果你的页面有广告的话,很可能因为广告结束之后,重新回到tabbar首页
(一般都是这个逻辑),那么你的分发到指定页面就会被替换,所以解决方法就是:
//外部链接唤起本app,app没启动走这个方法时
    NSURL *url=[launchOptions objectForKey:UIApplicationLaunchOptionsURLKey];
    if (url) {//存在url 链接证明是外部唤起的
        self.outsideURL=url;
    }
在didFinishLaunchingWithOptions里,写上上面的方法,以此来判断,当广告结束后,可以根据上面保存的url来判断不跳回到tabbar首页(这个是我们的app逻辑,如果其他人不是,可以自己再做判断)。甚至可以直接在上线的方法里直接跳转
ios外部链接或者app唤起自己的app的更多相关文章
- Android/IOS 微信及浏览器(h5)中唤起本地APP,唤起浮层,然后用外部浏览器打开唤起某本地APP
		
1 前言 微信点击链接,点击唤起某APP,在微信点开,默认是微信浏览器,点击button唤起,则会先提示浮层,然后用外部浏览器打开即可. 作为记录使用. 2 代码 相关源码如下: html: < ...
 - 【H5-移动端开发】外部唤起本机APP的解决方法
		
太长时间没来博客园,原因很简单啊--太懒了!罪过罪过~ 最近公司的APP项目开始运行,采用的是原生框架+内嵌H5页面.作为一个菜鸡前端,开始入手学习移动端的界面制作加载性能优化.由于公司开始推广软件, ...
 - [Android]有关外部链接唤醒App需要注意的坑
		
移动互联网发展到今天,一个移动app需要和各种各样的外部链接关联,它不再仅仅从手机的桌面启动,更多的将会从其他的应用.浏览器链接.短信.二维码或者微信分享等渠道启动,这里涉及到的是各种各样的营销渠道和 ...
 - ios app唤起页面跳转
		
有些时候我们需要再其他地方把app唤起,并打开跳转到指定的vc上面.这里我自己写了一个vc的mgr,最主要的技术是method swizzle.原理就不详述,看代码吧. // // ViewContr ...
 - App唤起微信小程序和回调
		
在同一开放平台账号下的移动应用及小程序无需关联即可完成跳转,非同一开放平台账号下的小程序需与移动应用(APP)成功关联后才支持跳转. 可在“管理中心-移动应用-应用详情-关联小程序信息”,为通过审核的 ...
 - iOS 10 的坑:新机首次安装 app,请求网络权限“是否允许使用数据”(转)
		
症状 iOS 10 之后,陆陆续续地有用户联系我们,说新机第一次安装.第一次启动的时候,app 首屏一片空白,完全没数据.kill 掉重新打开就好了. 一开始以为是用户网络情况不好,但随着越来越多的用 ...
 - ios蓝牙开发(三)ios连接外设的代码实现:手机app去读写蓝牙设备。
		
手机app去读写蓝牙设备....... 代码下载: 原文博客主提供Github代码连接,地址是:https://github.com/coolnameismy/demo ios连接外设的代码实现流程: ...
 - Pyqt 打开外部链接的几种方法
		
Pyqt 触发一个事件,打开外部链接,我找到了这个方法,供大家参考 1. QDesktopServices 的openUrl 方法 QtGui.QDesktopServices.openUrl(QtC ...
 - iOS通用链接(Universal Links)突然点击无效的解决方案
		
接上文<微信中通过页面(H5)直接打开本地app的解决方案>已经把iOS搞定并且已经正常能跑了,突然就再也用不了了... 问题描述 测试告诉我,如果从微信打开App之后,点击App右上角的 ...
 
随机推荐
- Genymotion下载及安装
			
引用https://blog.csdn.net/yht2004123/article/details/80146989 一.注册\登录 打开Genymotion官网,https://www.genym ...
 - C++函数指针与指针函数干货
			
C++要是不常用,相信过四天你的指针函数与函数指针的概念就该忘个精光. 其实只要记住谁在后面谁就是哪个本质. 先了解下指针数组与数组指针吧 数组指针 就是指向数组的指针,它表示的是一个指针,它指向的是 ...
 - WPF中定时器与进度条的配合使用
			
WPF中定时器使用的注意事项: WPF需要使用System.Windows.Threading.DispatcherTimer定时器,而不能使用System.Timers.Timer定时器.因为Sys ...
 - eslint常用关闭校验语句
			
1. 关闭段落校验 /* eslint-disable */some code some code /* eslint-enable */ 2. 关闭当前行校验 some code // eslint ...
 - .gitconfig
			
[user] name = 1111 email = 111@111.com[credential] helper = store
 - pip安装问题
			
一,安装pyecharts 出现问题的2个提示 failed to import pyecharts_snapshot 成功解决 第一个升级问题 you are using pip version ...
 - docker 下安装gitlab
			
1.找到docker镜像 docker search gitlab 2.下载gitlab镜像 docker pull gitlab/gitlab-ce/ 3.通常会将 GitLab 的配置 (etc ...
 - java 的重写(覆盖) 和重载的区别
			
方法的的重写(覆盖) 在类继承中,子类可以修改从父类继承来的行为,也就是说子类能创建一个与父类方法有不同功能的方法,但具有相同的:名称.返回类型.参数列表.如果在子类中定义一个方法,其方法名称.返回值 ...
 - webpack-dev-server报错
			
运行npm run dev报错,---- webpack-dev-server --inline --progress --config build/webpack.dev.conf.js npm E ...
 - vscode里使用.vue代码模板的方法
			
1.设置.vue模板 打开编辑器,点击文件 —— 首选项 —— 用户代码片段,会弹出来一个输入框. 在输入框输入vue,回车,会打开一个vue.json文件. 在里面复制以下代码: { "P ...