IOS快捷指令-高德地图一键回家

HI Siri,回家

使用Siri打开高德地图,开车导航回家

iosamap://path?sourceApplication=applicationName&sid=&did=&dlat=xxx&dlon=xxx&dname=xxx&dev=0

在这里插入图片描述

  • dame参数:目的地,如:北京市东城区天安门广场
  • dlat参数:纬度,如39.90966
  • dlon参数:经度,如116.40418

目的地的经纬度可以百度查询到
在这里插入图片描述

EZ,可以直接呼唤Siri来回家了( ̄︶ ̄)↗

### 自定义 URL Scheme 的实现 要在 iOS 应用中通过自定义 URL scheme 打开指定路径 `amap:path`,需要完成以下几个方面的配置和处理: #### 1. 配置 URL Scheme 在 Xcode 中设置项目的 URL Schemes 是第一步。具体操作是在项目导航栏中选择目标应用(Target),进入 **Info** 页面,在 **URL Types** 下新增一项配置。 - 添加一个新的键值对,其中 Key 值为 `URL schemes`。 - 将其 Value 设置为你希望使用的自定义 scheme 名称,例如 `amap`[^1]。 这样就完成了基础的 URL Scheme 注册工作。 #### 2. 处理传入的 URL 请求 当其他应用程序或者网页尝试调用该 URL Scheme 时,iOS 系统会启动你的应用并传递相应的参数给它。为了响应这些请求,需实现在 AppDelegate 或 SceneDelegate 文件中的方法来捕获和解析 URL 参数。 对于基于 UIKit 的传统架构: ```swift func application(_ application: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any]) -> Bool { // 解析接收到的url guard let host = url.host else { return false } if host == "path" { // 进一步逻辑处理... print("Received path request with parameters \(url.queryParameters ?? [:])") } return true } ``` 如果是采用 SwiftUI 和 ScenePhase 生命周期管理的新方式,则应该重写 scene 方法: ```swift func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) { for context in URLContexts { let url = context.url // 同样可以在此处添加更多复杂的路由判断业务代码 handleIncomingUrl(url) } } private func handleIncomingUrl(_ url: URL){ switch (url.scheme?.lowercased(), url.host?.lowercased()) { case ("amap", "path"): navigateToPathScreen() default: break; } } ``` 以上两段 Swift 编程语言展示了如何接收来自外部链接的数据,并依据不同的情况做出相应动作。 #### 3. 创建 HTML 测试页面验证功能 按照之前提到的方法创建了一个简单的HTML文档用于测试目的。此文件包含指向我们刚刚设定好的自定义协议地址 `<a href="app://www.aaa.com/list">打开app</a>` 。如果一切正常的话,当你点击这个超链接之后就会跳转至安装有对应支持的应用程序界面;如果没有找到匹配项则不会有进一步的动作发生[^2]。 需要注意的是实际开发过程中可能还需要考虑安全性因素以及用户体验优化等问题比如错误提示等等。 ---
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值