holidy.appintent недоступен в контексте »
« Значение кнопки типа '»не имеет члена« Аптитента »»
Я пробовал очистить выброшенную папку данных, подтверждая то, что код виджела является только в целевой целевой комплектации, и то, что DO, в целеуровне. Несмотря на это, интерактивные модификаторы не работают, как и ожидалось.
Код: Выделить всё
import WidgetKit
import SwiftUI
import AppIntents
struct SimpleAppIntent: AppIntent {
static var title: LocalizedStringResource = "Simple Action"
func perform() async throws -> some IntentResult {
let userDefaults = UserDefaults(suiteName: "group.NSL_homescreenapp")
userDefaults?.set("AppIntent Triggered", forKey: "flutter_action")
WidgetCenter.shared.reloadTimelines(ofKind: "MyHomeWidget")
return .result()
}
}
struct MyHomeWidgetEntryView: View {
var body: some View {
if #available(iOS 17.0, *) {
Button("Hard ios17") { }
.buttonAction(intent: SimpleAppIntent())
.buttonStyle(.bordered)
.frame(maxWidth: .infinity)
} else {
Button("Hard ios irgendwas") { }
.buttonStyle(.bordered)
.frame(maxWidth: .infinity)
}
}
}
@main
struct MyHomeWidget: Widget {
let kind: String = "MyHomeWidget"
var body: some WidgetConfiguration {
StaticConfiguration(kind: kind, provider: Provider()) { _ in
MyHomeWidgetEntryView()
}
.configurationDisplayName("My Home Widget")
.description("An interactive widget example using AppIntents.")
}
}
struct Provider: TimelineProvider {
func placeholder(in context: Context) -> SimpleEntry {
SimpleEntry(date: Date(), message: "Placeholder")
}
func getSnapshot(in context: Context, completion: @escaping (SimpleEntry) -> Void) {
let entry = SimpleEntry(date: Date(), message: "Snapshot")
completion(entry)
}
func getTimeline(in context: Context, completion: @escaping (Timeline) -> Void) {
let entry = SimpleEntry(date: Date(), message: "Live Data")
let timeline = Timeline(entries: [entry], policy: .atEnd)
completion(timeline)
}
}
struct SimpleEntry: TimelineEntry {
let date: Date
let message: String
}
Я не забил, потому что я установил все, что требуется: My widget deoport ateport. 16.2, и я импортировал АПРИЗ. Кто -нибудь столкнулся с аналогичными проблемами с интерактивными виджетами и аппатитными? Любые идеи или обходные пути будут оценены!
Подробнее здесь: https://stackoverflow.com/questions/795 ... -16-ios-18
Мобильная версия