Вызов WeatherKit возвращает ответ по умолчанию
Я пытаюсь использовать WeatherKit, чтобы просто получить простой прогноз погоды для местоположения.
do {
let location = CLLocation(latitude: 37.3346, longitude: -122.0087)
let weather = try await WeatherService().weather(for: location)
} catch {
print(error)
}
Когда я запускаю это на физическом устройстве, я получаю пустой объект Weather и следующее в консоли:
[WeatherDataService] Response did not contain requested dataset: .appLocationConfig. Returning default value: AppLocationConfig(reportAnIssue: ReportIssueLocationConfig(position: beforeFooter, minDaysSinceInteraction: 0), expireTime: 2022-11-27 04:31:20 +0000
Xcode управляет моим профилем обеспечения, я добавил возможность WeatherKit, и у меня есть активное членство в программе разработчиков Apple, поэтому я не думаю, что у меня должны возникнуть проблемы с доступом к WeatherKit. Что происходит, и как я могу это исправить?
1 ответ
Считаете ли вы это решением проблемы или нет, добавлениеincluding
Параметр вызова исправил проблему для меня.
Итак, вместо
let weather = try await WeatherService().weather(for: location)
Вы можете позвонить
let weather = try await WeatherService().weather(for: location, including: .current)
Он должен вернуть вам ту же информацию, что и исходный вызов.