Dear Dev Team,
I am writing to report a severe battery drain issue after updating my Apple Watch to watchOS 11 (22R5318h). Since the update, my watch’s battery life has drastically reduced, going from 100% to 0% in just 4 hours.
I have taken the following steps to resolve the issue, but none have been successful:
1. Performed a fresh reset of the watch.
2. Reset my iPhone.
3. Disabled background app activity.
4. Enabled airplane mode and power saving mode.
Despite these efforts, the problem persists. My watch’s battery health is at 100%, so I believe the issue is related to the software update.
I would appreciate your assistance in resolving this matter as it is significantly affecting the usability of my Apple Watch.
Thank you for your attention to this issue.
——————-
Update 1: I have rolled back from iOS 18 beta 4 to iOS 18 beta 3 after reading that the update might be causing the issue with the Apple Watch. Following this, I reset my Apple Watch, including the cellular plan, and did not restore from a backup. However, the problem still persists.
Additionally, I have noticed that the charging time from 30% to 100% has increased to 3 hours and 23 minutes using a 20W Apple charger.
Posts under watchOS tag
200 Posts
Sort by:
Post
Replies
Boosts
Views
Activity
Our watchOS App isn't opened when tapping on a Live Activity. Added the following to our Info.plist and still get the Open on iPhone option.
<key>WKSupportsLiveActivityLaunchAttributeTypes</key>
<array/>
Is there something else we need to configure?
Hi! I'm working on an app that records x,y,z accelerometer values and when subjecting the watch to extreme acceleration (a swing) I notice the x, and y acceleration seems to get stuck around ~30G.
Is this a hardware limitation of the watch sensors? I have a Apple Watch Series 7.
Below is the chart of the acceleration recording session.
Appreciate your insights!
Joao
Hello everyone,
I was wondering if I downgrade my iPhone to iOS 18 developer beta 1 from developer beta 4 (rereleased) version, what will happen to my Apple Watch Series 6 running watchOS 11 beta 4?
I seen people say that their Apple Watches unpaired and they could not pair them again when the iPhone is downgraded from 18 beta to 17.5.1. Though it is within the same iOS version in question, will I still need to get my Apple Watch downgraded as well if I use an IPSW containing the 1st developer beta of iOS 18?
Hi, I am currently trying to install and run a watchOS App I developed in Xcode on an Apple watch series 9. I would like to add the Apple watch as a registered device to a developer account. I need to provide the device name and the device ID or UDID to register the Apple watch. I am not sure how I can get the UDID for the Apple watch. I would appreciate your help with information on how I can get the UDID for the Apple watch and if the watch needs to be registered with a developer account for installing and running a watchOS app from Xcode on the Apple watch. Thank you.
Hi,
We developed a app for iPhone and Apple Watch. The app has been tested and it worked well on iPhone SE and Apple Watch Series 6 running earlier OS. We recently upgraded the Apple Watches to Series 9 & watchOS 10.5, and the iOS on the same iPhone is upgraded to 17.4.1. The app can still be built on the iPhone but when I tried to install the app on the new Apple Watch, it won't work and shows "This app cannot be installed because its integrity could not be verified." To make sure it's not a OS issue, I also upgraded the watchOS on the old Apple Watch Series 6 to 10.5 and the app worked. I wonder what cause the app fail on the newer Apple Watch running the same watchOS.
Thank you
Hello All, I'm new to the forum and learning app development.
I have managed to solve most issues through the web but this one has me stumped.
I'm using Xcode 15.4 on a MacBook Air M1 and working on a iOS/WatchOS project. The iOS app is done and I've started on the Watch one by copying the code over. There were 3 issues 2 of which were easy to fix but the 3rd is weird. The two dependencies I added via the SPM give a "No such module '***'" error.
Any ideas anybody?
Yours hopefully,
Michael
My project has an iOS and WatchOS app. I added a package dependency, which supports both iOS and WatchOS, though I have only added the library to my iOS app.
I can compile and run both apps just fine but when I try to use one of the WatchOS app views in Canvas preview I get errors saying different properties defined in the packages files are not available on watchOS.
These blocks of code that give errors are wrapped in: "if TARGET_OS_IPHONE". I have selected the Watch Target and a watch device in the run selector as well as in the canvas.
Why is this failing and how can I get it working? Thanks
I can't select my Companion App Target in the Selection Many for "Embed in" in the add Target File. It's a Companion App for a Flutter App.
I add the target via File -> New -> Target -> WatchOS -> WidgetExtension
The minimum version for the flutter project is iOS 14 and the watch watchOS 10.
I tried readding my WatchTarget but it didn't work that time either. I made a dummy project with a default iOS App (No Flutter) and default WatchOS App and there I had the option to select my Companion Target.
checking Configuration Intent also changes nothing for the outcome.
I also tried adding one into another Runner (Flutter) Project with an Companion App and I run into the same Issue there.
Target: WatchOS 10.5
NOTE: This is a watchOS only app
Given:
A single view containing NavigationSplitview, with the List in the "sidebar", a TabView in the "detail" and a TabView in a sheet attached to each tab in the "detail" view.
When:
Navigating between top-level list and "detail" TabView, or navigating through "detail" to "sheet" TabView
Then:
Memory leaks occur.
If the TabView() views are replaced with List() views there are no longer memory leaks.
There are no reference types involved. Everything is in Structs
Code below causes the issue which can be observed in Instruments.
So my question is what have I coded incorrectly to cause this issue? Or, How can I fix this?
Thanks in advance.
@main
struct VerticalTabView_MemLeak: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}
struct ContentView: View {
struct ParentItem: Identifiable, Hashable {
var id = UUID()
var name: String
var children: [Item]
init(_ name: String, _ children: [Item]){
self.name = name
self.children = children
}
}
struct Item: Identifiable, Hashable {
var id: UUID = UUID()
var name: String
init(_ name: String){ self.name = name }
}
@State var selectedParentItem: ParentItem?
@State var selectedItem: Item?
var parentItems = [
ParentItem("A", [Item("one"),Item("two"),Item("three")]),
ParentItem("B", [Item("four"),Item("five"),Item("six")]),
ParentItem("C", [Item("seven"),Item("eight"),Item("nine")])
]
var body: some View {
NavigationSplitView {
List(selection: $selectedParentItem) {
ForEach(parentItems, id: \.id) { parentItem in
NavigationLink(value: parentItem) {
HStack {
Text(parentItem.name)
}
.padding()
}
}
}
.navigationTitle("Top Level")
} detail: {
if let items = selectedParentItem?.children {
TabView(selection: $selectedItem) {
ForEach(items, id:\.id) { item in
Text(verbatim: item.name)
.tag(item)
.onTapGesture {
selectedItem = item
}
}
}
.tabViewStyle(.verticalPage)
.navigationTitle(selectedParentItem?.name ?? "")
.sheet(item: $selectedItem,
onDismiss: { selectedItem = nil },
content: { item in
TabView {
Text(item.name).foregroundStyle(.yellow)
Text(item.name).foregroundStyle(.yellow)
}
.tabViewStyle(.verticalPage)
.navigationTitle(selectedParentItem?.name ?? "")
})
}
}
}
}
#Preview {
ContentView()
}
Starting from Xcode 16 Beta 2, NSValue.CGSizeValue is no longer available on watchOS, whereas this method was supported in previous versions of Xcode. The Xcode header files mark this method as unavailable on watchOS, but after manually modifying the Xcode files to remove the unavailable macro, the code compiles and runs normally. Is there a change in this API that makes it unsupported on watchOS, or is this an error?
Previously, I submitted feedback FB14072192, and the status of this feedback was updated to "Unable to diagnose with current information" without any further response. If this is indeed an issue, I hope it can be fixed.
Hi,
Suddenly product's are not being loaded on WatchOS anymore, no error throwing.
Just empty array response...
Works normal on iOS. Any idea why?
WatchOS 10.5
During WatchOS 10 dev betas and now into 11 dev betas, I am still seeing were stands are not being detected. What I do not know is if the steps are detected. But here is the situation.
Today:
I was going on some wiring outside and in the basement.
I was clearly up and moving around for over an hour.
I can see on my camera's I went outside at 15:50, came back in at 16:18. Then went to my basement and was working down there from 16:19 until 16:30. After that cleaned up my mess. So I was up and down stairs and without a doubt standing. At 16:50 I got the reminder to stand.
Other cases:
1: I get home from work about XX:10 . I have to walk about 50 ft from my garage to my house, up stairs, take the dog out, make dinner, and finally get my chair to eat and at XX:50 I get the reminder.
2: I'm at work, I'm going to get lunch and I have to walk pretty far and again at XX:50 I get the reminder. This is very rare, but it has happened.
Now, in a odd twist. I get up in the morning at XX:50, I have 10 steps to the bathroom, and I manage to get that hourly stand.
I have a watchOS app written in C++, Swift and SwiftUI. This app is meant only for 64-bit architecture. I know Apple uses the arm architecture, so I thought arm64 will be the arch of latest AppleWatches.
I tested my code in x64 simulator (Intel Mac) and arm64 simulator (silicon Mac) - no trouble. Next is to test on a device - AppleWatch Series 9, model: A2984. I set the arch to arm64 and my application failed to build, with Xcode showing a popup about arch mismatch... which is due to the app's arch begin different from device's arch. When I change Xcode arch setting to arm64_32, then I don't get this popup, but my builds fail. When I read about arm64_32, I realised that this is a version of arm64 with 32 bit pointers... not the arm64 with 64 bit pointers.
Looking at the specification of AppleWatch Series 9, Apple has confirmed that it has 64 bit CPU, but the instruction set is unknown. This wiki page about different AppleWatch CPUs is marked TBC for AppleWatch Series 9. From Xcode, I got to know that this unconfirmed arch is arm64_32. This completely breaks my code. Are there any 64-bit watches with 64-bit pointer sizes? What is Apple's future in this area? Do they plan to release AppleWatches that support 64-bit pointers or it's always going to be 32?
I am developing a watchOS-only app, and whenever I attempt to make a network request, it always fails and throws the following error:
Error Domain=NSURLErrorDomain Code=-1009 "The Internet connection appears to be offline."
I noticed that when I turn off Wi-Fi and Bluetooth in the settings of the iPhone paired with the Apple Watch (thus disconnecting the Apple Watch from the iPhone), my app can successfully connect to the network.
Additionally, when the app contains both an iOS app and a watchOS app, after granting network permissions on the iOS app, the watchOS app can access the network normally when connected to the iPhone.
When opening some system apps on the Apple Watch (such as the "Workout" app), the app will display a network permission request similar to that on iOS, but this request does not automatically pop up when my watchOS app attempts to access the network.
Is there a way to request network permissions in a watchOS-only app so that it can access the network while connected to the iPhone?
Hello,
I am developing an application for the Apple Watch that requires the screen to remain active even when the wrist is moved into a down position. The core functionality of my app involves providing continuous visual and auditory guidance, and it's critical that the screen stays on without going into power-saving mode while the app is in use.
Specifically, I am looking for a way to:
1.Disable the screen's power-saving mode when the wrist is moved down.
2.Ensure the screen remains active as long as the app is in the foreground.
I understand that certain power management features are built into watchOS for battery conservation, but I would need this behavior to be overridden only while the application is running (the app would not be in the foreground for extended periods of time).
Is there an approved method or best practice within Apple's guidelines to achieve either of these functionalities?
Thank you for your assistance.
Hello,
I am developing an application for the Apple Watch that requires the screen to remain active even when the wrist is moved into a down position. The core functionality of my app involves providing continuous visual and auditory guidance, and it's critical that the screen stays on without going into power-saving mode while the app is in use.
Specifically, I am looking for a way to:
1.Disable the screen's power-saving mode when the wrist is moved down.
2.Ensure the screen remains active as long as the app is in the foreground.
I understand that certain power management features are built into watchOS for battery conservation, but I would need this behavior to be overridden only while the application is running (the app would not be in the foreground for extended periods of time).
Is there an approved method or best practice within Apple's guidelines to achieve either of these functionalities?
Thank you for your assistance.
I have installed IOS18 and WatchOS11 Beta 3 already... all complications sent to clock (usign FACER app) is not showing up... they all appears DISABLED.
doesnt matter what face watch i use.., its all disabled.
Any help on it please????
I have a watchOS app where a user can select a picture. I’d like the picture to be displayed in a complication. I’m using WidgetKit, and I found out that for some watch faces (rendering mode = accented), the image gets tinted. Instead of the picture, the user sees only a colored box.
It appears that using the old framework, ClockKit, it was possible to display an image that gets slightly colored with the tint color on tinted watch faces. I believe this is to ensure backward compatibility of old complications.
My question is: can I do the same using WidgetKit? I tried using the widgetAccentable() modifier, but it doesn’t work.
Here's an example of what I mean. In the middle complication, instead of the pink square, I'd like to display the user picture.
Looking into making requests using URLSession via a proxy, on watchOS, and found that in URLSessionConfiguration, there's a proxyConfigurations property.
However, since ProxyConfiguration is part of the Network framework, does it means that TN3135 low level networking rules also applies in this case?