Hi Apple Developer Support / WeatherKit team,
I’m seeing WeatherKit fail on a physical iPhone with what appears to be a JWT / permission issue, even though the app appears to be correctly configured and signed with the WeatherKit entitlement.
App / project context:
- App name: Signals
- Platform: iOS
- Framework: SwiftUI
- WeatherKit usage: Native WeatherKit framework, using WeatherService.shared.weather(for:)
- Purpose: Showing a small morning weather summary inside the app
What I have already verified:
- Active Apple Developer Program membership
- WeatherKit capability enabled for the App ID in Apple Developer Portal
- WeatherKit capability enabled in the App Capabilities tab
- WeatherKit capability added in Xcode Signing & Capabilities
- Automatic signing enabled
- Built and tested on a physical iPhone device
- Location permission is requested and granted
- The app binary appears to include the WeatherKit entitlement
- The embedded provisioning profile appears to include the WeatherKit entitlement
Issue: WeatherKit still fails at runtime with a JWT / permission-related error.
Could you please help verify whether:
- The WeatherKit entitlement is correctly attached to my App ID and provisioning profile
- My Team ID / App ID has WeatherKit access fully enabled on Apple’s backend
- There are any backend propagation delays or stuck entitlement states
- WeatherDaemon has permission to generate JWTs for this app
- There is anything else I need to reset or regenerate, such as provisioning profiles, certificates, or App ID capabilities
I can provide:
- Team ID
- Bundle ID
- provisioning profile UUID
- entitlement output from codesign
- device logs / WeatherKit error logs
- screenshots of App ID capability settings
Thank you.
We’ve seen a spate of reports of WeatherKit problems where the the developer correctly enables the WeatherKit capability for their App ID but fails to also enable the corresponding app service. For example, see my colleague’s response here and at least one developer confirming that that was the problem here. So please double check your app service setting.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"