iOS 总结APP间跳转的常用以及非常用需求 APP跳转Safari APP跳转APP
需求驱动技术,有了新的需求,旧技术无法实现时,就会有新的技术出现。
一般的APP跳转需求有以下几种:
1. 从自己的APP跳转到别人的APP。
2. 从自己的APP跳转系统APP。
3. 让别人的APP调起自己的APP。
这三种跳转的常见操作参考
iOS URL Schemes实现APP之间的跳转
这些是旧的需求,上面一篇文章基本可以涵盖。
在此基础上有了新的需求,基于第二条需求:“从自己的APP跳转系统APP”。升级为从自己的APP打开Safari而不刷新页面。
我们都知道(从上面的文章里也可以看出来),要想打开Safari,就需要通过openURL方法传入地址,才可以打开。而一旦传入地址,Safari就会打开或刷新页面。因此这个方法是行不通的。
但是打开APP并不是说只能通过urlScheme,另一种方法是通过包名打开APP。参考:
如何通过包名打开手机里的APP
这种方式就可以完美的实现打开Safari而不刷新页面。
关于如何获取APP的包名,给出以下几种方式
1. ASO排名能搜到的APP都可以拿到包名,这是App Store上架的APP。
2. 另一种方式是 通过模拟器拿到预装软件的包名。参考:https://github.com/lanvsblue/AppBrowser
以上亲测可行,与君共勉!
iOS 总结APP间跳转的常用以及非常用需求 APP跳转Safari APP跳转APP的更多相关文章
- IOS:程序的退出、App间的跳转
今天在做一个音乐播放器的项目,发现这个点击退出程序的功能不能实现终于找到了一些有用的资料,就去网上看了半天资料,下面是退出程序的代码: 在动画里面可以自己添加一些,动画,达到相应的效果. AppDel ...
- iOS - App 间的通信方式
1.前言 iOS 系统是相对封闭的系统,App 各自在各自的沙盒(sandbox)中运行,每个 App 都只能读取 iPhone 上 iOS 系统为该应用程序程序创建的文件夹 AppData 下的内容 ...
- iOS开发之App间账号共享与SDK封装
上篇博客<iOS逆向工程之KeyChain与Snoop-it>中已经提到了,App间的数据共享可以使用KeyChian来实现.本篇博客就实战一下呢.开门见山,本篇博客会封装一个登录用的SD ...
- iOS开发——应用间跳转
iOS开发过程中,我们经常碰到应用间跳转的情景: 1.使用第三方用户登录,跳转到需授权的App或跳转到分享app的对应页面 *需要用户授权,还需要"返回到调用的程序,同时返回授权的用户名.密 ...
- iOS开发,应用间的跳转
预习:URL由两部分组成-- 1.scheme:协议头(http:// ftp:// 等等) 2.path:路径(URL中path可以没有) 一.简单实现跳转到指定APP(也就是说跳转到的APP必须 ...
- App间相互跳转及图片分享
A-app: Info--URL Types--URL Schemes:A-app(一个标识,允许别的app调用本App) info.plist 添加白名单: LSApplicationQueries ...
- Url Scheme实现APP间通信、分享
代码地址如下:http://www.demodashi.com/demo/12748.html 简介: URL Scheme就是一个可以让app相互之间可以跳转的对外接口.通过给APP定义一个唯一的U ...
- 在 App 扩展和主 App 间共享数据
tags: iOS 8,Swift,App Groups 随着 iOS 8 的发布,苹果为广大开发者很多新的 API,其中最突出显著的就非 App Extension 莫属了.这为开发者们又带来了很多 ...
- APP间传递消息
https://www.jianshu.com/p/d640ccfcea5f 1: URL Scheme 常用的App间传值方式.常见于分享等. 2: Keychain 借助系统类 Keychain ...
随机推荐
- Hive将txt、csv等文本文件导入hive表
1.将txt文本文件放置hdfs目录下 2.登录hive并进入到指定数据库 3.创建表 create external table if not exists fun_user_external ( ...
- open() 函数以 a+ 模式打开文件
这种模式打开文件,可读可写,从文件顶部读取内容,从文件底部追加内容,文件不存在则自动创建 [root@localhost ~]$ cat 1.txt aaa bbb ccc In [1]: data ...
- recyclerView中的方法
onCreateViewHolder(); onBindViewHolder(); getItemCount(); recyclerVIew中没有添加头布局和尾布局方法.可以用getItemViewT ...
- ajax的轮询和长轮询
概念: 轮询(polling):客户端按规定时间定时像服务端发送ajax请求,服务器接到请求后马上返回响应信息并关闭连接. 概念总是枯燥的,只有代码方能解心头之快 前段代码:index.html: & ...
- JS-实时修改在textarea里面的span(实际输入的文字)
解决办法: 在开发中,多少会遇到一些界面,输入限制字数. 例如: //页面加载完毕 $(function() { //descrip是textarea的id $("#descrip" ...
- Windows下IPython安装
1:安装Python, 下载后安装即可:https://www.python.org/downloads/windows/,(选择Python2或Python3) 添加Path环境变量 2:安装ez_ ...
- flex布局,input点击软键盘激活,底部按钮上移
安卓手机的问题,原本表单没有超出一屏的时候,上移的现象也是存才的,只是需要滑动body才能看得到,现在,超出一屏了,现象就很明显了 body明显上移: 点击input修改价格: 软键盘出现: 先尝试了 ...
- Jwt在Java项目中的简单实际应用
1.什么是jwt 双方之间传递安全信息的简洁的.URL安全的表述性声明规范.JWT作为一个开放的标准(RFC 7519),定义了一种简洁的,自包含的方法用于通信双方之间以Json对象的形式安全的传递信 ...
- 170426、centos6.5安装 Zookeeper注册中心
注册中心服务器(192.168.3.71)配置,安装 Zookeeper: 1. 修改操作系统的/etc/hosts 文件中添加: # zookeeper servers 192.168.3.71 r ...
- Boss Group Worker Group NioEventLoopGroup
宜人贷蜂巢API网关技术解密之Netty使用实践 - honeycomb2017的博客 - CSDN博客 https://blog.csdn.net/honeycomb2017/article/det ...