gpt4 book ai didi

ios - 轻按即可从 SwiftUI WidgetKit 执行深层链接

转载 作者:行者123 更新时间:2023-12-03 09:18:50 24 4
gpt4 key购买 nike

我有一个带有两个文本的简单 WidgetKit (中等大小),我想要的是能够执行深层链接以将用户引导到我的应用程序的特定部分,但我似乎无法找到一种方法这样做。
我写的 View (非常简单):

HStack {
Text("FIRST ITEM")
Spacer()
Text("SECOND ITEM")
}
我已经尝试更换
Text("SECOND ITEM")
Link("SECOND ITEM destination: URL(string: myDeeplinkUrl)!)
但它也不起作用。

最佳答案

  • 小工具 查看您需要创建一个Link并设置其destination网址:
  • struct SimpleWidgetEntryView: View {
    var entry: SimpleProvider.Entry

    var body: some View {
    Link(destination: URL(string: "widget://link1")!) {
    Text("Link 1")
    }
    }
    }
    请注意 Link仅适用于中型和大型 WidgetKit 。如果你使用一个小的 Widget,你需要使用:
    .widgetURL(URL(string: "widget://link0")!)
  • 在您的 应用 使用 onOpenURL 查看接收 url :
  • @main
    struct WidgetTestApp: App {
    var body: some Scene {
    WindowGroup {
    Text("Test")
    .onOpenURL { url in
    print("Received deep link: \(url)")
    }
    }
    }
    }
    也可以在 SceneDelegate 中接收深层链接。通过覆盖:
    func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>)
    您可以在此线程中找到有关如何使用此功能的更多说明:
  • Detect app launch from WidgetKit widget extension

  • 这是 GitHub repository使用不同的 Widget 示例,包括 DeepLink Widget。

    关于ios - 轻按即可从 SwiftUI WidgetKit 执行深层链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64230355/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com