Team-scoped keys introduce the ability to restrict your token authentication keys to either development or production environments. Topic-specific keys in addition to environment isolation allow you to associate each key with a specific Bundle ID streamlining key management.
For detailed instructions on accessing these features, read our updated documentation on establishing a token-based connection to APNs.
Delve into the world of built-in app and system services available to developers. Discuss leveraging these services to enhance your app's functionality and user experience.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
I'm reading the "Testing Age Assurance in Sandbox" doc, but I couldn't figure out the step:
2. Tap Sandbox Testing from the main menu
Where is the "main menu"?
We are integrating Apple’s DeclaredAgeRange SDK. To comply with relevant regulatory requirements, our understanding is as follows:
The app is only required to obtain the declared age range for users located in Texas.
For users outside of Texas, we should not proactively request age range information.
Accordingly, we would like to confirm the following:
Are we required to present the age range request prompt to all users in the United States?
If yes, we are concerned that this may significantly impact the overall user experience.
If it is permissible to request age range only for Texas users, how can we reliably determine whether a user is located in Texas on the client side?
For example, does Apple provide an API or recommended method for accurately identifying a user’s region (specifically Texas)?
Hi, I am developing IOS(Android App) with React Native.
I am very confused about cocoapods and pod and how to correctly install it on my new Macbook Pro M4. I am not using bash but I am using zsh. Note, actuallywhich pod return nothing
During the preparation of my environment, it say
CocoaPods is one of the dependency management system available for iOS. CocoaPods is a Ruby gem. You can install CocoaPods using the version of Ruby that ships with the latest version of macOS.
the web site show two commands
gem install cocoapods
sudo gem install cocoapods
I saw another command as well
brew install cocoapods
During different processes, I experienced several time the following error (Command 'pod install failed)
Command pod install failed.
└─ Cause: pod install --repo-update --ansi exited with non-zero code: 1
Then I am confused about cocoapods and pod. Are both he same?
With my previous MacBook pro, I spend time to install cocoapod on my profile because Ruby was not the latest version on the system. But apparently, on my new Macbook Pro M4, the command ruby -v return (as well)
ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin25]
The current stable version is 4.0.0.
I bought a new macbook pro M4 and I reinstalled node and all package for Rect Native 0.81 a expo 54 excepted cocoapods. Now, I need to configure the push notification and it's time to install cocoapods as it's require here
But on my new macbook pro, I would like to make sure I do it correctly and I kindly ask your help and recommandation to install Ruby and cocoapods/pod
Q1: Should I install cocoapods with brew install cocoapods or gem install cocoapods?
Q2: what's is the difference or the common point with cocoapods and pod?
Cocoapod web site said
If using the default Ruby included with macOS, installation will require you to use sudo when installing
gems
As ruby -v print 'ruby 2.6.10p210', I suppose, I should not install cocoapod with sudo
You can use a Ruby Version manager such as RVM or rbenv
to manage multiple Ruby versions, or you can use Homebrew to install a newer Ruby with brew install ruby.
As far I understand, I should not install cocoapods with the Ruby version of the system, then I suppose the command
Q3: Will 'brew install cocopads' install the latest version on my profile? Will it upgrade the system version
Q4: What will do the command
brew install rbenv ruby-build
rbenv install 3.2.2 (or better: rbenv install 4.0.0)
in comparison with
brew install ruby
My guess
I suppose that the following will help, but it would nice if you could correct me and clarify
# All should be done in my profile
brew install rbenv ruby-build
echo 'eval "$(rbenv init - bash)"' >> ~/.zprofile
source ~/.zprofile
rbenv install 4.0.0
# rbenv global 4.0.0 # What is it?
ruby -v
gem install cocoapods
Q5: But then, what about pod and the error message
Command pod install failed.
As you can see, I am a bit confused and I would appreciate your clarification
I thanks you for your help and clarification and I wish you a happy new years
Topic:
App & System Services
SubTopic:
Core OS
Apologies if this is not the correct topic to post under.
EpochField 5.2 is our application. It's a .NET MAUI application built against XCode 16. A customer of ours uses another app, TN3270, to connect to a mainframe host. After installing our app on an iPad and restarting the device, the TN3270 app will disconnect when suspended. Uninstalling our app (EpochField) will allow the TN3270 to suspend without disconnecting. We have tried removing background services, setting UIRequiresFullScreen to false or removing it entirely, and several other ideas. The only remedy seems to be uninstalling EpochField.
On an iPad device:
Install MochaSoft’s TN3270 app (free version is fine). Create a connection to ssl3270.nccourts.org, port 2023, SSL/TLS turned on, keep alive turned on.
Verify that you can connect. Suspend the app by swiping up or choosing another app. Go back to TN3270 and verify that the app has not disconnected.
Install EpochField 5.2. Do not run or configure the app, just install it.
Repeat step 2.
Restart the device.
Open EpochField 5.2. You do not need to configure the app or login. Sometimes it isn't necessary to ever open EpochField to get the disconnects, but this is the most reliable way to reproduce the situation.
Repeat step 2. The TN3270 app will now disconnect when suspended, even if EpochField is closed. You may need to wait a few seconds after suspending.
Uninstall EpochField 5.2.
Repeat step 2: the TN3270 app will now remain connected when suspended.
Topic:
App & System Services
SubTopic:
Networking
Have a 2019 Ford Edge w/ Sync 3.4, wired carplay. Worked fine w/ iPhone 16 Pro on iOS 18. Upgraded to iPhone 17 Pro, came w/ iOS 26, carplay hasn't worked since.
I've kept trying throughout new iOS 26 releases, lately with iOS 26.3 Public Beta 1, still not working.
Have a long running issue with updates and system diagnostics as I've tried over the last few months: FB20739050
There is also a Apple support community thread with issues like this (and a ton of others) - my first post there was https://discussions.apple.com/thread/256138283?answerId=261613103022&sortBy=oldest_first#261613103022
I'm hoping here in the developer forums someone can maybe take a look at the feedback item and various system diagnostics to pin-point the issue. I'm a little concerned it's still not fixed this far into the follow-up point releases of iOS 26.
Appreciate any help, thanks!
--Chuck
The documentation specifies that when Contacts framework returns unified contacts that each fetched unified contact object (CNContact) has its own unique identifier that’s different from any individual contact’s identifier in the set of linked contacts and that when refetching a unified contact, that this identifier should be used.
There is also an analogous identifier within the list of contactRelations, but each of these don't seem to corespondent to the unified contacts. For example, is a new contact (Sheryl Zakroff) is created in the simulator Contacts and their spouse is set to Hank Zakroff. However, the GUID created for the contactRelations identifier does not correlate to the original Hank Zakroff GUID and cannot be searched.
Is this a bug or what is the indent of the contactRelations identifier?
Here's a debug output of walking the unifiedContacts:
Name: Hank Zakroff
2E73EE73-C03F-4D5F-B1E8-44E85A70F170
- Other : (555) 766-4823
- Other : (707) 555-1854
Name: David Taylor
E94CD15C-7964-4A9B-8AC4-10D7CFB791FD
- Other : 555-610-6679
Name: Sheryl Zakroff
DE783BC8-7917-4138-93F6-3AF0FD4CE083
- Other : (707) 555-1854
- Spouse: <CNContactRelation: 0x60000000dd60: name=Hank M. Zakroff>
- 534B467D-CA00-46D3-897C-16EEA782C9CF
- Looking for ["534B467D-CA00-46D3-897C-16EEA782C9CF"]
[]
Hello,
"This issue is blocking App store approval"
I have tried pushing my application to Appstore. However it has been rejected on the following ground:
_"As we discussed, the app uses or references the following non-public or deprecated APIs:
Frameworks/CommonLibrary.framework/CommonLibrary
Symbols:
• _SecCertificateIsValid
The use of non-public or deprecated APIs is not permitted, as they can lead to a poor user experience should these APIs change and are otherwise not supported on Apple platforms."_
I have scanned the app using "strings" tool & "otool -ov" tool.
But they have come out clean. No Non-public or deprecated APIs detected.
Please advise which tool can be used to scan the CL to locate where the deprecated API or non-public API lies and also how to rectify the same.
Thanks
Saikat Bakshi.
Topic:
App & System Services
SubTopic:
General
This is probably super simple answer that I missed, but: I have an app that has a database; I'd like to create a second app (actually a CLI tool), and access the same database. Is that possible? And, if so, how? 😄
it seems that is going to the appstore to find the app to execute the share but my app is not in the appstore yet. I am using a sandboxed user and a non sandboxed user, I have tried real phones connected to xcode and simulator same effect, looking for how to test my ckshare in testflight thanks
Hello everyone,
I’m experiencing a visual issue when dismissing a sheet on iOS 26.
I’m using the same implementation shown in the official Apple documentation. While testing, I noticed that some apps do not exhibit this behavior. However, when running this code on iOS 26, the issue consistently occurs.
Issue description:
The sheet dismisses abruptly
A white screen briefly appears for a few milliseconds and then disappears
This results in a noticeable visual glitch and a poor user experience
I tested the exact same code on iOS 18, where the sheet dismisses smoothly and behaves as expected, without any visual artifacts.
Has anyone else encountered this issue on iOS 26?
Is this a known bug, or is there a recommended workaround?
Any insights would be greatly appreciated.
Thank you.
I'm seeking clarification on how Requirement 4.1 ("Card Issuers with a Mobile App must support In-App provisioning") applies when the card issuer uses a third-party mobile banking platform rather than a self-developed app.
Our situation:
We are a small credit union (the card issuer)
Our mobile banking app is provided by a third-party digital banking vendor (white-label, but branded with our name)
Card processing is handled by a separate vendor
The ambiguity:
The Apple Pay Specifications define "Card Issuer Mobile App" as:
"The Card Issuer-branded, iOS software application made available on a Device that is used by such Card Issuer's customers to manage, administer, or use Cards."
Our mobile banking app meets this definition—it's branded with our name and used by our members to manage their accounts and cards. However, we don't develop or directly control the app; our digital banking vendor does.
The webinar FAQ stated: "Do we have to implement in-app provisioning? Yes, if you have an app."
Our digital banking vendor interprets this as not applying to them because they are "not the issuer." They've stated: "Apple's requirements are at the card-processor level... our credit unions and, by extension, we are not required to support Apple Pay's in-app provisioning."
Our card processor has indicated they will support in-app provisioning integrations but notes "this would be digital provisioning and we would need the digital banking vendor to work with us to enable."
Specific questions:
When a card issuer uses a third-party mobile banking app (branded for the issuer but developed/maintained by a vendor), does Requirement 4.1 apply?
If yes, who bears compliance responsibility—the issuer, the mobile app vendor, or both?
If the mobile app vendor does not implement in-app provisioning by January 15, 2026, what is the issuer's exposure? Does the issuer face suspension from the Program due to vendor non-compliance?
Is there an alternative compliance path under Requirement 4.8 (Web Provisioning) for issuers whose mobile app vendors cannot deliver in-app provisioning by the deadline?
This scenario likely affects hundreds of small financial institutions using shared digital banking platforms. Clarity on vendor vs. issuer responsibility would help the entire ecosystem prepare appropriately.
Thank you.
Topic:
App & System Services
SubTopic:
Apple Pay
We are a regulated financial institution and Apple Pay issuer seeking clarification on the in-app push provisioning requirement and the January 15, 2026 timeline.
Like many community financial institutions:
Our mobile banking app is issuer-branded but provided by a third-party vendor
Apple Pay enablement and tokenization are handled by a separate card processor
While we support Apple’s goals and understand the issuer is ultimately responsible, delivery of in-app provisioning is dependent on third-party vendor roadmaps and cross-vendor integrations that are outside our direct control. Despite active, good-faith efforts with both vendors, current platform constraints make the January 15, 2026 deadline challenging.
We would appreciate clarification on:
How Apple evaluates compliance when an issuer’s mobile app is built and maintained by a third party
Whether any transitional flexibility or phased enforcement is expected for issuers showing documented progress
Whether approved web-based provisioning may be acceptable as an interim option
How issuers should document due diligence when vendor dependencies delay implementation
Additional guidance would help many credit unions and community banks plan appropriately and remain compliant.
Thank you for your guidance.
Topic:
App & System Services
SubTopic:
Apple Pay
I’m testing auto-renewable subscription purchases in the sandbox environment.
When I buy a subscription package using a sandbox test user, I don’t receive any App Store Server Notifications from the sandbox.
However, when I use the “Request Test Notification” option in App Store Connect, the notification is received successfully.
My sandbox server notification URL is configured correctly and publicly accessible.
I also call finishTransaction() after purchase, and the receipt is verified successfully with the sandbox verification endpoint.
To further debug, I used the getNotificationHistory API to fetch notifications for yesterday and today (Nov 3–4, 2025).
Apple’s API response does not include any notifications or transaction IDs for my today’s purchases (Nov 4, 2025) — even though I can confirm from logs that those transactions were completed and verified successfully.
It looks like sandbox purchase notifications are not being sent or logged, even though test notifications work fine.
Could someone from Apple please confirm if there’s currently an issue with sandbox server notifications for auto-renewable subscriptions?
Topic:
App & System Services
SubTopic:
StoreKit
Tags:
Subscriptions
App Store Connect
In-App Purchase
Hello,
Back in January 2024, I filed a bug report regarding a cache being kept by the macOS Wallpaper Agent. This cache contains every image ever set as a users wallpaper, and at the time the issue was reported, it never cleared, leaving hundreds of gigabytes wasted on users disks in some cases.
FB13536275
This issue was ultimately fixed in macOS 15.1 beta 6, and remained fixed for the duration of macOS 15. The fix was excellent - the cache was reduced to storing just 2-3 days worth of images.
Sadly, we've discovered that this issue is back in macOS Tahoe. The cache has moved locations, and once again is not clearing. We have filed this bug again, less than a year after it was first fixed:
FB20636593
We develop an app called 24 Hour Wallpaper that keeps the wallpaper in sync with the time of day. This necessitates that the app regularly changes the wallpaper, which sadly now results in an infinitely growing and useless cache of BMP files generated by the system.
As we waited 10 months for this to get fixed the first time, we expect to wait at least that long to get it fixed again, and have no confidence that it will stay fixed because the last fix lasted less than a year. This leaves us in a bad position, as people can't use our app without the cache growing arbitrarily and ultimately completely filling their disk.
We've already had customers call Apple to complain about this, and the good news is that the support agents understand that this is a problem with macOS, not with our app.
What we've decided to do is add a feature to the app that monitors the size of this cache and periodically deletes it. We're required to get the users permission the first time to do this, but after that the permission is cached, so the app can keep the cache folder clean regardless of if macOS is doing it's job or not.
We haven't seen any side effects or problems as a result of doing this. We've seen other apps like CleanMyMac do this without any problems. We're wondering if there is anything we should be aware of regarding this caches behavior before releasing this flushing feature.
Thanks for your time,
-josh
Hi everyone,
We’re running into a serious issue with App Clip Experience updates not propagating to devices, and I’m hoping someone here has encountered (or solved) this before.
Problem
Once an App Clip Experience is created and used on devices, subsequent updates made in App Store Connect do not reflect on any devices, even after a long period of time.
We’ve tried:
• Updating the App Clip Experience URL (adding utm parameters, for example, utm_source and scanning via QR code)
• Modifying Experience metadata/content
• Waiting several days (over a week)
• Testing on multiple devices (including devices that never opened the App Clip before)
Despite this, the App Clip continues to show the initially created content, while App Store Connect clearly shows the updated configuration.
Important Details
• We currently have ~1,300 App Clip Experiences created
• All App Clips use the same App Clip Bundle ID
• The content behind the URLs updates correctly on the website
• Only the App Clip continues to show stale / initial data
• Removing and re-invoking the App Clip on devices does not consistently fix the issue
At this point, manual updates via App Store Connect appear to be completely ignored once the App Clip is “established.”
Questions
1. Is there a known hard cache or CDN behavior on Apple’s side that prevents App Clip Experience updates from propagating?
2. Is there any way to invalidate or refresh an existing App Clip Experience?
3. Does having a large number of App Clip Experiences (~1300) affect update behavior or caching?
4. Is the recommended approach to treat App Clip Experience as immutable and handle all updates via backend / dynamic content only?
Right now it feels like:
App Clip Experience is effectively a one-time snapshot and not a live-updatable configuration.
Any insights, confirmations, or official guidance would be greatly appreciated.
Thanks in advance.
Is there any way for an iOS app to get a log of all Airdrop transfers originating in all apps on the iOS device e.g. from the last week?
Topic:
App & System Services
SubTopic:
Core OS
Description
The Shortcut Automation Trigger Transaction frequently times out, ultimately causing the shortcut automation to fail. Please see the attached trace for details.
Additionally, the Trigger is activated even when the Transaction is declined.
Details
In the trace I see the error:
[WFWalletTransactionProvider observeForUpdatesWithInitialTransactionIfNeeded:transactionIdentifier:completion:]_block_invoke Hit timeout waiting for transaction with identifier: <private>, finishing.
Open bug report: FB14035016
Since watchOS 26, watch face sharing has stopped working completely.
I tested the following:
Sharing via CLKWatchFaceLibrary
Other public APIs
Sharing via iMessage
In all cases, the watch face cannot be reinstalled after being shared.
This issue is not limited to my app. Large third-party apps such as Facer and other major watch face platforms are also affected, which suggests this is a system-level change or bug.
Everything worked correctly before watchOS 26.
Has Apple officially acknowledged this issue?
Is there a recommended place to report or track this bug?
Topic:
App & System Services
SubTopic:
Widgets & Live Activities
Tags:
Face Sharing
watchOS
Watch Complications
WidgetKit
Hi,
We are facing the issue of commissioning our Matter device to google home through iOS device will be 100% failed.
Here is our test summary regarding the issue:
TestCase1 [OK]: Commissioning our Matter 1.4.0 device to Google Nest Hub 2 by Android device (see log
DoorWindow_2.0.1_Google_Success.txt
)
TestCase2 [NG]: Commissioning Matter 1.4.0 device to Google Nest Hub 2 by iPhone13 or iPhone16 (see log
DoorWindow_2.0.1_Google_by_iOS_NG.txt
)
TestCase3 [OK]: Commissioning our Matter 1.3.0 device to Google Nest Hub 2 by iPhone13
In TestCase2, we noticed that device was first commissioned to iOS(Apple keychain) then iOS opened a commissioning window again to commission it in Google’s ecosystem, and the device was failed at above step 2, so we also tried:
Commissioning the device to Apple Home works as expected, next share the device to Google Home app on iOS, this also fails.
Commissioning the device to Apple Home works as expected, next share the device to Google Home app on Android, this works as expected and device pops up in Google home of iOS as well.
Could you help check what's the issue of TestCase2?
Append the environment of our testing:
NestHub 2 version
Google Home APP version
It’s been 3 days and enrollment still pending. Can you help me please? App is ready to publish
Topic:
App & System Services
SubTopic:
Core OS