Hi,
We are operating a service that uses Sign in with Apple for user registration and login.
As part of our security incident response and periodic security improvements, we are planning to rotate the private key used to generate the client secret (JWT) for Sign in with Apple.
I have read the Human Interface Guidelines and the AuthenticationServices documentation, but I could not find a clear description of the behavior and user impact when rotating this private key. I would like to ask the following questions:
Background:
We issue a Sign in with Apple private key (with a Key ID) in our Apple Developer account.
Our server uses this private key to generate the client secret (JWT).
This is used for Sign in with Apple login on our web / mobile app.
We are planning to invalidate the existing private key and switch to a newly issued one.
Questions:
Impact on existing logged-in sessions
Will rotating the private key force already logged-in users (who previously signed in with Apple) to be logged out from our service?
Can the user identifier (such as the "sub" claim) for existing Sign in with Apple users change due to key rotation?
Recommended frequency and best practices
Does Apple recommend rotating this private key only when it is compromised, or on a regular basis?
If there are any official documents or examples that describe how to safely perform key rotation in production, we would appreciate a pointer.
Impact on marketing / analytics
We are using user IDs (linked via Sign in with Apple) for analytics and marketing attribution.
Is there any expected impact on such use cases caused by rotating the private key?
For example, is there any possibility that user identifiers change as a result of key rotation, or anything we should be careful about from a data linkage perspective?
Our goal is to rotate the private key in a secure way without causing service downtime, mass logouts, or loss of account linkage.
If there is already an official document that covers this, please let me know the URL.
Thank you in advance.
Overview
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Hi,
I'm stuck in a loop with my app submission:
Created auto-renewable subscriptions in App Store Connect
Status: "Waiting for Verification"
App gets rejected: "in-app purchases don't display"
But they can't display because they're not approved yet
Question: Do I need to attach the subscriptions to my app version BEFORE submitting? If so, where?
I've done:
Created subscription group with metadata
Configured pricing and localizations
Set up RevenueCat integration
What am I missing to get out of "Waiting for Verification"?
Thanks!
Topic:
App Store Distribution & Marketing
SubTopic:
App Store Connect
Hi,
I am trying to update my apps and i couldn't do it, can anyone please help? this is what happened to me.
Once my membership renewed, i couldn't compile my apps due to signing error. here is the error message:
Xcode archive done. 31.7s
Failed to build iOS app
Error (Xcode): Communication with Apple failed: Your team has no devices from
which to generate a provisioning profile. Connect a device to use or manually
add device IDs in Certificates, Identifiers & Profiles.
https://developer.apple.com/account/
/Users/tony/vn246/ios/Runner.xcodeproj
when I go to the portal developer.apple.com/account to create the Provisioning Profile manually then it said there is no device, and when i go into the Devices section then the machine uuid is added and it's there and registered, i had always been compiling with it before the old membership was expired. I tried to remove those and re-added and the error still persisted.
P.S.: I renewed all my certificates (removed old and recreated new)
thank you
I have two devices (iPod, iPhone), each using a different Apple ID. I have an existing game to which I'm adding TBM. When the iPod invites the iPhone, it sends an iMessage invite to the iPhone; when I click on that message, I get "Retrieving", then Game Center in Settings is opened, not my App (same version installed on both devices). I start my App on the iPhone and that match is not shown in the Matchmaker View Controller.
When I send an invite from the iPhone to the iPod and I click on the iMessage invite, the app starts but the match isn't listed in the MatchMaker ViewController on the iPod (but is on the iPhone).
In addition, when I click on the info circle on the iPhone, it who's the two players and "App Store" under the Game Center name. However, When I do the same on the iPod, it has a "Play your turn" there.
Any ideas?
Is it possible to develop for TelephonyMessagingKit on iOS 26 outside of the EU? If so, how is this accomplished? I have added the 'Default Carrier Messaging App' entitlement to my project, but I do not see an option to set my app as a default option in settings on my device. I am not located inside of the EU, but would like to test this functionality.
Topic:
App & System Services
SubTopic:
General
Is there any way to use blockedApplications to hide all apps in a category? Currently, I use blockedApplications to hide individual apps, but it doesn’t work when I select an entire category. I thought the only solution would be to use shield, which doesn’t hide the apps but creates a blocking shield.
However, I found an app on the App Store called Fokus, and it’s able to select a category and block all the apps in it. Does anyone know how this could be possible?
I had, a long time ago (over 10 years) developed an application that is connected to my UPS (for solar panels).
Until yet it worked very well, and I didnot have to compute more than making updates of XCode. That was all.
But yet I have swiched to the latest value of switch, and it continue to compile, but it does'not work. I am asking to yo in order keeping my app working as previously. As it does not work, which library is replacing Cloudkit.framework ?
and which library is replacing InsPersistantContainer.framework ?
Have a good day
Guy Desbief
Hello, I requested Fairplay credentials a week ago. Where can I check the status of my request? Thank you very much.
The team ID is: 6WZ8SVRYV9
Hello,
I need help with an issue regarding my Apple Developer Program enrollment.
I completed the payment for the annual membership and received the official invoice from Apple. My card was charged successfully, and I have all the payment references.
However, after the payment was processed:
My account remained in Pending status
The message “Complete your purchase” kept appearing
When attempting the payment again, the system reported that the order was already paid
Now the enrollment flow has reset completely, and the system is asking me to start enrollment and pay again, even though the first payment was successful
This seems like a synchronization issue where the payment was recorded in the Apple Online Store system, but not linked to my Developer enrollment.
I do not want to be charged again, since the first transaction was already completed.
Could someone from Apple please help link the payment to my Apple ID or advise how to activate my membership?
Right now my account cannot proceed with enrollment and I cannot access App Store Connect.
Topic:
Developer Tools & Services
SubTopic:
Apple Developer Program
General:
Forums subtopic: App & System Services > Networking
TN3151 Choosing the right networking API
Networking Overview document — Despite the fact that this is in the archive, this is still really useful.
TLS for App Developers forums post
Choosing a Network Debugging Tool documentation
WWDC 2019 Session 712 Advances in Networking, Part 1 — This explains the concept of constrained networking, which is Apple’s preferred solution to questions like How do I check whether I’m on Wi-Fi?
TN3135 Low-level networking on watchOS
TN3179 Understanding local network privacy
Adapt to changing network conditions tech talk
Understanding Also-Ran Connections forums post
Extra-ordinary Networking forums post
Foundation networking:
Forums tags: Foundation, CFNetwork
URL Loading System documentation — NSURLSession, or URLSession in Swift, is the recommended API for HTTP[S] on Apple platforms.
Moving to Fewer, Larger Transfers forums post
Testing Background Session Code forums post
Network framework:
Forums tag: Network
Network framework documentation — Network framework is the recommended API for TCP, UDP, and QUIC on Apple platforms.
Building a custom peer-to-peer protocol sample code (aka TicTacToe)
Implementing netcat with Network Framework sample code (aka nwcat)
Configuring a Wi-Fi accessory to join a network sample code
Moving from Multipeer Connectivity to Network Framework forums post
NWEndpoint History and Advice forums post
Network Extension (including Wi-Fi on iOS):
See Network Extension Resources
Wi-Fi Fundamentals
TN3111 iOS Wi-Fi API overview
Wi-Fi Aware framework documentation
Wi-Fi on macOS:
Forums tag: Core WLAN
Core WLAN framework documentation
Wi-Fi Fundamentals
Secure networking:
Forums tags: Security
Apple Platform Security support document
Preventing Insecure Network Connections documentation — This is all about App Transport Security (ATS).
WWDC 2017 Session 701 Your Apps and Evolving Network Security Standards [1] — This is generally interesting, but the section starting at 17:40 is, AFAIK, the best information from Apple about how certificate revocation works on modern systems.
Available trusted root certificates for Apple operating systems support article
Requirements for trusted certificates in iOS 13 and macOS 10.15 support article
About upcoming limits on trusted certificates support article
Apple’s Certificate Transparency policy support article
What’s new for enterprise in iOS 18 support article — This discusses new key usage requirements.
Technote 2232 HTTPS Server Trust Evaluation
Technote 2326 Creating Certificates for TLS Testing
QA1948 HTTPS and Test Servers
Miscellaneous:
More network-related forums tags: 5G, QUIC, Bonjour
On FTP forums post
Using the Multicast Networking Additional Capability forums post
Investigating Network Latency Problems forums post
WirelessInsights framework documentation
iOS Network Signal Strength forums post
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"
[1] This video is no longer available from Apple, but the URL should help you locate other sources of this info.
I have an iOS and iPadOS app that also runs on macOS Catalyst. The user is able to view their subscription using the SubscriptionStoreView with two SubscriptionOptionGroups.
The documentation does not mention these are supported on macOS Catalyst and the app crashes when attempting to show the SubscriptionStoreView on macOS Catalyst.
If not supported, how can the user manage their subscription on macOS?
I have been trying to run an open source Windows executable that I would like to help porting to macOS using the Game Porting Toolkit but I stumbled on an issue quite early in the application lifecycle.
It looks like the funtion GetThreadDpiHostingBehavior is missing in USER32.dll
Has anyone any idea how to solve that?
During the startup, it fails with the following error:
TiXL crashed. We're really sorry.
The last backup was saved Unknown time to...
C:\users\crossover\AppData\Roaming\TiXL\Backup
Please refer to Help > Using Backups on what to do next.
System.EntryPointNotFoundException: Unable to find an entry point named 'GetThreadDpiHostingBehavior' in DLL 'USER32.dll'.
at System.Windows.Forms.ScaleHelper.DpiAwarenessScope..ctor(DPI_AWARENESS_CONTEXT context, DPI_HOSTING_BEHAVIOR behavior)
at System.Windows.Forms.ScaleHelper.EnterDpiAwarenessScope(DPI_AWARENESS_CONTEXT awareness, DPI_HOSTING_BEHAVIOR dpiHosting)
at System.Windows.Forms.NativeWindow.CreateHandle(CreateParams cp)
at System.Windows.Forms.Control.CreateHandle()
at System.Windows.Forms.Application.ThreadContext.get_MarshallingControl()
at System.Windows.Forms.WindowsFormsSynchronizationContext..ctor()
at System.Windows.Forms.WindowsFormsSynchronizationContext.InstallIfNeeded()
at System.Windows.Forms.Control..ctor(Boolean autoInstallSyncContext)
at System.Windows.Forms.ScrollableControl..ctor()
at System.Windows.Forms.ContainerControl..ctor()
at System.Windows.Forms.Form..ctor()
at T3.Editor.SplashScreen.SplashScreen.SplashForm..ctor()
at T3.Editor.SplashScreen.SplashScreen.Show(String imagePath) in C:\Users\pixtur\dev\tooll\tixl\Editor\SplashScreen\SplashScreen.cs:line 25
at T3.Editor.Program.Main(String[] args) in C:\Users\pixtur\dev\tooll\tixl\Editor\Program.cs:line 111
I have a SwiftUI app that needs to present a fullScreenCover when the user opens a deep link.
This screen must appear above anything currently shown — even if another fullScreenCover is already being presented.
In UIKit, I can achieve this by walking the view controller hierarchy, finding the top-most view controller, and presenting the new full-screen view from there.
What is the recommended way to reproduce this behavior in SwiftUI?
How can I ensure a fullScreenCover is always shown above the current presentation layer, regardless of the app’s UI state?
Topic:
UI Frameworks
SubTopic:
SwiftUI
Hello,
I got a weird issue with xcodebuild, the tool gives the error that requested device could not be found but I already add it. The issue is solved if I remove the -scheme (and deveriedDataPath. Do you have any idea what is wrong with the parameter or it is the xcodebuild error itself?
haiphan@MacMini MetalTest % xcodebuild -project MetalTest.xcodeproj -destination 'platform=macOS,name=Any Mac' -scheme MetalTest
Command line invocation:
/Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -project MetalTest.xcodeproj -destination "platform=macOS,name=Any Mac" -scheme MetalTest
2025-12-05 12:18:25.594 xcodebuild[17581:2982049] Writing error result bundle to /var/folders/x7/rmx20t393rx49t6gyx3fh_vdmz2lm8/T/ResultBundle_2025-05-12_12-18-0025.xcresult
xcodebuild: error: Unable to find a device matching the provided destination specifier:
{ platform:macOS, name:Any Mac }
The requested device could not be found because no available devices matched the request.
Available destinations for the "MetalTest" scheme:
{ platform:macOS, arch:arm64, id:00006020-000E29861AE8C01E, name:My Mac }
{ platform:macOS, arch:x86_64, id:00006020-000E29861AE8C01E, name:My Mac }
{ platform:macOS, name:Any Mac }
Topic:
Developer Tools & Services
SubTopic:
Xcode
问题场景:
Xcode26+iOS26系统,UICollectionView的reloadData不会触发调用UICollectionViewCell的layoutSubviews方法。
正常场景:
Xcode26+iOS18及以下系统,UICollectionView的reloadData能够触发调用UICollectionViewCell的layoutSubviews方法。
UITableView的reloadData,会正常调用UITableViewCell的layoutSubviews方法。
How can I allow the popup I am encountering while I run my UI tests with video recording in the Github actions.
Since these tests are running on VMs, it's not possible to manually click Allow. Also the remote robot cannot interact with OS-level dialogs.
Stale TBD Files Cause Runtime Crash When Framework Changes from Dynamic to Static
Summary
When using EAGER_LINKING=YES, Xcode generates TBD files for dynamic frameworks. When a framework changes from dynamic to static, Xcode doesn't remove the stale TBD, causing dyld: Library not loaded crash at runtime.
Environment
Xcode 16.4 (16F6), macOS Darwin 24.6.0, iOS Simulator 18.5
Steps to Reproduce
Project Structure:
MainApp (EAGER_LINKING=YES)
ProjectA/SharedLib (dynamic, mh_dylib)
ProjectB/SharedLib (static, staticlib)
Steps:
Build with ProjectA (dynamic framework) → TBD created in EagerLinkingTBDs
Switch workspace to ProjectB (static framework) without cleaning DerivedData
Build again → BUILD SUCCEEDED
Run app → CRASH: dyld: Library not loaded
Root Cause
Xcode adds -F EagerLinkingTBDs before -F Build/Products:
-F/.../EagerLinkingTBDs/Debug-iphonesimulator ← checked FIRST
-F/.../Build/Products/Debug-iphonesimulator ← checked SECOND
The linker finds the stale TBD first and treats the framework as dynamic, even though the actual binary is now static.
Evidence
# SharedLib is static
$ file SharedLib.framework/SharedLib
current ar archive random library
# But stale TBD still exists
$ ls EagerLinkingTBDs/.../SharedLib.framework/
SharedLib.tbd ← STALE!
# MainApp incorrectly references dynamic library
$ otool -L MainApp.app/MainApp.debug.dylib | grep SharedLib
@rpath/SharedLib.framework/SharedLib ← WRONG!
Attempted Workarounds (All Failed)
Workaround
Result
FRAMEWORK_SEARCH_PATHS = "$(BUILT_PRODUCTS_DIR)" "$(inherited)"
Xcode still adds EagerLinkingTBDs first
EAGER_LINKING = YES on static framework
Build failure - empty TBD
OTHER_LDFLAGS modifications
Linker still uses TBD
Expected Behavior
When a framework changes from dynamic to static, Xcode should remove the stale TBD file from EagerLinkingTBDs.
Suggested Fix
Remove TBD files when building static library targets
Track MACH_O_TYPE changes and invalidate TBD files accordingly
Dear Apple Developer Support Team,
I hope you are doing well.
We are reaching out to request clarification and guidance regarding the In-App Purchase (IAP) requirements for our upcoming iOS application.
Our app offers paid access to digital video content. Each video has a dynamic price determined by our backend based on multiple factors (such as duration, category, and promotions). Additionally, users are allowed to select and purchase multiple videos at the same time, which results in a combined total price that varies per transaction.
Challenges we face with IAP on iOS
Dynamic pricing:
Apple requires IAP products to have static pricing defined in App Store Connect.
Our video prices change frequently and cannot be represented by fixed IAP product SKUs.
Multiple-item purchases:
iOS does not support a single purchase that includes multiple different IAP products.
Processing many separate IAP transactions in sequence results in a poor user experience and is likely to cause failures.
Product creation limitations:
Since our catalog contains many videos with frequently changing prices, it is not feasible to create individual IAP products per video.
Given these restrictions, we are unclear how to remain compliant while still providing a functional purchase flow for our users.
Question
In this scenario, where:
video prices are dynamic,
users may purchase multiple videos together, and
IAP does not support multi-item purchases or dynamic pricing,
are we allowed to use Stripe or another external payment provider to handle these purchases?
If not, we would appreciate Apple’s guidance on what the recommended and compliant approach would be for apps that must price digital content dynamically and allow bulk purchasing.
We want to ensure full compliance with App Store Review Guidelines and would like confirmation on the correct implementation strategy before proceeding.
Thank you for your time, and we look forward to your clarification.
Kind regards,
Muhammad Adnan
Koderlabs
I would love to partake in beta testing and reporting issues and bugs! Let me know what you got
Topic:
Developer Tools & Services
SubTopic:
Apple Developer Program
Tags:
Developer Tools
Interface Builder
Extensions
App Store
Problem
When we merge FeatureModuleA.framework into IntegrationContainer.framework instead of HostApp_Main.app, the magic method Bundle(for: FeatureAProvider.self) does not work and this will trigger crash.
When FeatureModuleA is merged into HostApp, Bundle(for: FeatureAProvider.self) will return:
HostApp_Main.App/Frameworks/DomainFeatureA.framework
instead of HostApp_Main.App/,
although the FeatureAProvider class is actually in the merged main app binary
So we can use the returned FeatureModuleA bundle get the nested resource.
If we merge the frameworks into our IntegrationContainer.framework, the result will be:
for release: PrototypeApp.app
for debug: PrototypeApp.app/Frameworks/IntegrationContainer.framework/ReexportedBinaries/DomainFeatureA.framework
Apple has not considered the case that frameworks are merged into independent framework.
And other methods like bundle(for: identifier) does not work for both destination cases: merge into main app or a container framework.
Topic:
Developer Tools & Services
SubTopic:
Xcode