为有牺牲多壮志,敢教日月换新天。

[Swift通天遁地]九、拔剑吧-(1)实现在程序中跳转到微信、App Store、地图

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(shanqingyongzhi)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:https://www.cnblogs.com/strengthen/p/10354964.html 
➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

热烈欢迎,请直接点击!!!

进入博主App Store主页,下载使用各个作品!!!

注:博主将坚持每月上线一个新app!!!

目录:[Swift]通天遁地Swift

本文将演示如何从应用程序跳跳转到微信、App Store、地图等。

首先确保已经安装了所需的第三方类库。双击查看安装配置文件【Podfile】

1 platform :ios, '12.0'
2 use_frameworks!
3 
4 target 'DemoApp' do
5     source 'https://github.com/CocoaPods/Specs.git'
6     pod 'Appz'
7 end

根据配置文件中的相关设置,安装第三方类库。

安装完成之后,双击打开项目文件【DemoApp.xcodeproj】

在实现程序跳转功能之前,首先需要对项目等属性文件进行设置。

点击属性文件【Info.plist】

在空白区域点击鼠标右键,弹出右键菜单,

选择【Add Row

【Key】:LSApplicationQueriesScemes,在键名输入框内,输入进行应用程序请求的键名。

Type:Array设置键的类型。

【Value】:键的值。

点击键【Key】左侧的小三角,变成倒三角,点击 +】按钮,添加一条子项目。

在子项目的【Value】输入微信的应用名称:wechat

点击 +】按钮,添加第二条子项目。在第二个子项目【Value】输入需要跳转到应用到名称:whatsapp

根据业务需求,可以添加任意数量多应用名称。

在左侧的项目导航区,打开视图控制器的代码文件【ViewController.swift】

现在开始编写代码,实现应用程序之间的跳转。

 1 import UIKit
 2 //引入已经安装的第三方类库
 3 import Appz
 4 
 5 class ViewController: UIViewController {
 6 
 7     override func viewDidLoad() {
 8         super.viewDidLoad()
 9         // Do any additional setup after loading the view, typically from a nib.
10         
11         //获得当前的应用程序对象。
12         let app = UIApplication.shared
13         //调用应用程序的测试方法,检测是否可以打开指定的程序。
14         print(app.canOpen(Applications.WeChat()))//true
15         //通过调用应用程序对象的打开方法,打开并跳转到指定的应用程序。
16         app.open(Applications.WeChat(), action: .open)
17          //通过调用应用程序对象的打开方法,打开并跳转到苹果商店,并进入到指定的账户。
18         app.open(Applications.AppStore(), action: .account(id: "123456789"))
19          //通过调用应用程序对象的打开方法,打开并跳转到苹果商店,并进入到指定的产品页面。
20         app.open(Applications.AppStore(), action: .app(id: "9876543210"))
21          //通过调用应用程序对象的打开方法,打开并跳转到原生的地图应用
22         app.open(Applications.AppleMaps(), action: .open)
23     }
24 
25     override func didReceiveMemoryWarning() {
26         super.didReceiveMemoryWarning()
27         // Dispose of any resources that can be recreated.
28     }
29 }

 

posted @ 2019-02-07 17:11  为敢技术  阅读(306)  评论(0编辑  收藏  举报