代码示例
ContentView.swift
import SwiftUI
struct ContentView: View {
@State private var articleID: String = "12345"
var body: some View {
NavigationView {
VStack {
Text("Viewing Article \(articleID)")
.padding()
.onAppear {
// 设置 NSUserActivity
setupUserActivity()
}
}
.navigationTitle("Article \(articleID)")
}
}
private func setupUserActivity() {
// 创建并配置 NSUserActivity
let activity = NSUserActivity(activityType: "com.yourapp.viewingPage")
activity.title = "Viewing Article"
activity.userInfo = ["articleID": articleID]
// 深度链接,若支持从 Web 直接跳转
activity.webpageURL = URL(string: "https://yourapp.com/articles/\(articleID)")
// 启用 Handoff 和 Spotlight 搜索
activity.isEligibleForHandoff = true
activity.isEligibleForSearch = true
activity.isEligibleForPublicIndexing = true
// 标记当前活动
activity.becomeCurrent()
}
}SceneDelegate.swift
Info.plist
完整流程说明
总结
Last updated