SwiftUI 小部件无法打开 iOS 应用程序

问题描述

在我的小部件中,我放置了一个标题视图。

   var header: some View {
        ZStack {
           Link(destination: url) {
              Rectangle().fill(Color("WidgetBackground")).frame(height: 36)
              Text("Header")
           }
        }
    }

这是彩色背景上的简单文本。

该 url 是我的应用程序的 urlscheme。

当我点击标签标题视图时,它会在中型和大型小部件上打开我的应用。

但是在小尺寸的小部件上,它没有打开应用程序,而是闪烁并重新加载小部件。

当我点击元素以外的空白区域时,我也看到了在中型和大型小部件中发生的闪烁。

我不知道为什么会发生这种闪烁。

根据文档,在小部件上进行交互应该可以打开应用程序,无需任何额外工作。

我错过了什么吗?

解决方法

我不知道为什么应用打不开(我猜是 iOS 错误),但您的深层链接不起作用,因为 Link 在“小”小部件尺寸中不可用。您需要在视图上设置 .widgetURL() 修饰符。