Entitlements

RSS for tag

Entitlements allow specific capabilities or security permissions for your apps.

Entitlements Documentation

Post

Replies

Boosts

Views

Activity

Driving Task Crash When Adding Action Sheet or Alert
I have a driving task app and am trying to show a CPActionSheetTemplate or a CPAlertTemplate. Both of these are crashing showing: Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Unsupported object <CPActionSheetTemplate: 0x6000030319e0> <identifier: C744031B-99F6-4999-AF19-6ED43140502B, userInfo: (null), tabTitle: (null), tabImage: (null), showsTabBadge: 0> passed to pushTemplate:animated:completion:. Allowed classes: {( CPSearchTemplate, CPNowPlayingTemplate, CPPointOfInterestTemplate, CPListTemplate, CPInformationTemplate, CPContactTemplate, CPGridTemplate, CPMapTemplate )}' This is very strange, because in the docs all app types are allowed to show ActionSheets and Alerts. Why is this crashing?
1
0
507
Dec ’23
ProvisioningProfile entitlement missing despite receiving confirmation mail
We asked for and received confirmation that we have received the Critical alert entitlement. I have also tested it in development build with a development profile and it worked. However when we try to send an update to test flight to test in release mode on our device, we get the following error: The bundle contains a key that is not included in the provisioning profile: 'com.apple.developer.usernotifications.critical-alerts' NSLocalizedFailureReason = "Invalid Code Signing Entitlements. The entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile. The bundle contains a key that is not included in the provisioning profile: 'com.apple.developer.usernotifications.critical-alerts' in our app. SUnderlyingError = "Error Domain=IrisAPI Code=-19241 "Asset validation failed" UserInfo={status=409, detail=Invalid Code Signing Entitlements. The entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile. The bundle contains a key that is not included in the provisioning profile: 'com.apple.developer.usernotifications.critical-alerts in our app code=STATE_ERROR.VALIDATION_ERROR.90163, title=Asset validation failed we added the following entitlement to the entitlements.plist file: com.apple.developer.usernotifications.critical-alerts
2
0
470
Dec ’23
NWConnection UDP Broadcast not sent out correctly
Problem I am trying to send out a broadcast using NWConnection and then listen for responses using NWListener on port 50913. Although the broadcast is sent out correctly (= no error is thrown upon sending), I only get responses to my broadcast from what I suppose are the network interfaces of my own MacBook. In other words, it seems like the broadcast is never really submitted to the network. Context I don't have in-depth knowledge about the behavior of UDP which is why I am confused about this behavior. I've been reading online about this and couldn't find anything really related to the behavior I am experiencing. I've also looked at this developer forums entry and implemented the broadcast accordingly. The response from @meaton does not suggest that broadcasts are not supported by NWConnection (which is what I thought to be the culprit initially), and I am not getting the error they are talking about in their post, but a behavior that is entirely different. Does anyone know what is wrong with my implementation? Code final public class BroadcastDiscoveryEngine { private let logger: Logger = Logger.init(for: BroadcastDiscoveryEngine.self) private let broadcastConnection: NWConnection private let broadcastResponseListener: NWListener private let responseParser: BroadcastResponseParser = BroadcastResponseParser() private var discoveryContinuation: AsyncStream&lt;Discovery&gt;.Continuation? = nil init() throws { let parameters = NWParameters.udp parameters.allowLocalEndpointReuse = true parameters.allowFastOpen = true parameters.includePeerToPeer = true broadcastConnection = NWConnection(host: .ipv4(.broadcast), port: .init(integerLiteral: 50913), using: parameters) broadcastResponseListener = try NWListener(using: parameters, on: 50913) } func startBroadcast(continuation: AsyncStream&lt;Discovery&gt;.Continuation) { discoveryContinuation = continuation broadcastConnection.stateUpdateHandler = handleBroadcastConnectionStateUpdate(state:) broadcastConnection.start(queue: .global(qos: .default)) startBroadcastListener() } func stopBroadcast() { broadcastConnection.cancel() broadcastResponseListener.cancel() } private func sendBroadcastMessage() { broadcastConnection.send(content: "my_broadcast_message".data(using: .utf8), completion: .contentProcessed({ error in if let error = error { self.logger.error("Sending broadcast message failed with error: \(error.debugDescription, privacy: .public)") self.broadcastConnection.cancel() self.broadcastResponseListener.cancel() } self.logger.info("Broadcast message sent.") })) } private func handleBroadcastConnectionStateUpdate(state: NWConnection.State) { switch state { // shortened other cases since only logging occurs case .ready: logger.info("Broadcast connection established, ready to send and receive data.") sendBroadcastMessage() } } } extension BroadcastDiscoveryEngine { private func startBroadcastListener() { broadcastResponseListener.stateUpdateHandler = handleBroadcastResponseListenerStateUpdate(state:) broadcastResponseListener.newConnectionHandler = handleIncomingConnection(connection:) broadcastResponseListener.start(queue: .global(qos: .default)) } private func handleBroadcastResponseListenerStateUpdate(state: NWListener.State) { switch state { // shortened cases since only logging occurs } } private func handleIncomingConnection(connection: NWConnection) { connection.stateUpdateHandler = { state in self.handleIncomingConnectionStateUpdate(connection: connection, state: state) } connection.start(queue: .global(qos: .default)) } private func handleIncomingConnectionStateUpdate(connection: NWConnection, state: NWConnection.State) { switch state { // shortened other cases since only logging occurs case .ready: logger.info("Incoming connection (\(connection.debugDescription, privacy: .public) established, ready to send and receive data.") connection.receiveMessage { content, contentContext, isComplete, error in self.receiveBroadcastResponse(connection: connection, content: content, contentContext: contentContext, isComplete: isComplete, error: error) } } } private func receiveBroadcastResponse(connection: NWConnection, content: Data?, contentContext: NWConnection.ContentContext?, isComplete: Bool, error: NWError?) { // shortened: handles parsing accordingly and then cancels connection connection.cancel() } }
2
0
418
Dec ’23
How to expedite the approval of com.apple.developer.endpoint-security.client entitlement?
I have developed a process monitoring software for internal use in my company using the endpointsecurity API. When I tried to package and distribute it to my colleagues, I found out that I need to apply for the com.apple.developer.endpoint-security.client entitlement from Apple. It has been almost 2 months since I submitted the application, but it hasn't been approved yet. I sought help from customer service, but they haven't provided any useful feedback. I'm hoping to get help from the developer community. How can I expedite the approval of the com.apple.developer.endpoint-security.client entitlement? thanks~
1
0
438
Dec ’23
How to localise Permissions Usage Description with String Catalog
Hey everyone, I have translated my app using the newest String Catalog feature but im wondering how can I translate the strings from the Target -> Info tab. I have read the string catalog documentation and searched on the internet but I can't find a recent post talking about it. I have found methods related to the info.plist file but afaik that would be legacy documentation as I can't even find a info.plist file in my project anymore. Also tried to look for posts talking about it here, but maybe I'm not using the right words as I couldn't find anything. I only found this article that mentions translating the strings from info but still couldn't see how to do it: https://developer.apple.com/documentation/bundleresources/information_property_list/managing_your_app_s_information_property_list#3375316 So if someone could help me out, it would be very appreciated, thanks. EDIT: I just followed the "creating a infoplist.strings" way and it worked, but im still wondering if there is a newer way to do it. I tried to just add a manual string in the string catalog using "NSContactsUsageDescription" as key but it didn't work
3
1
1.9k
Dec ’23
Electron App crash when startup on mas platform
Electron app builded successfully with electron forge and @electron/osx-sign. But it crash when startup and get crash log below: Time Awake Since Boot: 320000 seconds Time Since Wake: 9200 seconds System Integrity Protection: enabled Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BREAKPOINT (SIGTRAP) Exception Codes: 0x0000000000000002, 0x0000000000000000 Exception Note: EXC_CORPSE_NOTIFY Termination Signal: Trace/BPT trap: 5 Termination Reason: Namespace SIGNAL, Code 0x5 Terminating Process: exc handler [95916] Thread 0 Crashed:: Dispatch queue: com.apple.main-thread if I use custom entitlements, it shows: Time Awake Since Boot: 310000 seconds Time Since Wake: 8600 seconds System Integrity Protection: enabled Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BAD_INSTRUCTION (SIGILL) Exception Codes: 0x0000000000000001, 0x0000000000000000 Exception Note: EXC_CORPSE_NOTIFY Termination Signal: Illegal instruction: 4 Termination Reason: Namespace SIGNAL, Code 0x4 Terminating Process: exc handler [93221] Application Specific Information: dyld: launch, running initializers /usr/lib/libSystem.B.dylib Could not set sandbox profile data: Operation not permitted (1) Application Specific Signatures: SYSCALL_SET_PROFILE here is entitlement: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>com.apple.security.app-sandbox</key> <true/> <key>com.apple.security.cs.allow-jit</key> <true/> <key>com.apple.security.files.user-selected.read-write</key> <true/> <key>com.apple.security.network.server</key> <true/> <key>com.apple.security.network.client</key> <true/> </dict> </plist> inherit entitlement: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>com.apple.security.app-sandbox</key> <true/> <key>com.apple.security.files.user-selected.read-write</key> <true/> <key>com.apple.security.inherit</key> <true/> </dict> </plist> what can I do to resolve it?
1
0
646
Dec ’23
ASP rejection of signed command line application
I am trying to run something I built with the CLI versions of clang on my M3 MBP. The application is signed: codesign -d -v /usr/local/bin/wine* Executable=/usr/local/bin/wine Identifier=org.winehq.wine Format=Mach-O thin (arm64) CodeDirectory v=20400 size=275 flags=0x0(none) hashes=3+2 location=embedded Signature size=8972 Timestamp=Dec 15, 2023 at 10:35:06 AM Info.plist entries=12 TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=1 size=176 Executable=/usr/local/bin/wineboot Identifier=wineboot Format=generic CodeDirectory v=20200 size=168 flags=0x0(none) hashes=1+2 location=embedded Signature size=9053 Timestamp=Dec 15, 2023 at 10:35:06 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=2 size=216 Executable=/usr/local/bin/winebuild Identifier=winebuild Format=Mach-O thin (arm64) CodeDirectory v=20400 size=1933 flags=0x0(none) hashes=55+2 location=embedded Signature size=8972 Timestamp=Dec 15, 2023 at 10:35:06 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=1 size=172 Executable=/usr/local/bin/winecfg Identifier=winecfg Format=generic CodeDirectory v=20200 size=167 flags=0x0(none) hashes=1+2 location=embedded Signature size=9053 Timestamp=Dec 15, 2023 at 10:35:07 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=2 size=216 Executable=/usr/local/bin/wineconsole Identifier=wineconsole Format=generic CodeDirectory v=20200 size=171 flags=0x0(none) hashes=1+2 location=embedded Signature size=9053 Timestamp=Dec 15, 2023 at 10:35:07 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=2 size=220 Executable=/usr/local/bin/winegcc Identifier=winegcc Format=Mach-O thin (arm64) CodeDirectory v=20400 size=747 flags=0x0(none) hashes=18+2 location=embedded Signature size=8972 Timestamp=Dec 15, 2023 at 10:35:07 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=1 size=168 Executable=/usr/local/bin/winedbg Identifier=winedbg Format=generic CodeDirectory v=20200 size=167 flags=0x0(none) hashes=1+2 location=embedded Signature size=9052 Timestamp=Dec 15, 2023 at 10:35:07 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=2 size=216 Executable=/usr/local/bin/winedump Identifier=winedump Format=Mach-O thin (arm64) CodeDirectory v=20400 size=3052 flags=0x0(none) hashes=90+2 location=embedded Signature size=8972 Timestamp=Dec 15, 2023 at 10:35:07 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=1 size=168 Executable=/usr/local/bin/winefile Identifier=winefile Format=generic CodeDirectory v=20200 size=168 flags=0x0(none) hashes=1+2 location=embedded Signature size=9053 Timestamp=Dec 15, 2023 at 10:35:07 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=2 size=216 Executable=/usr/local/bin/winegcc Identifier=winegcc Format=Mach-O thin (arm64) CodeDirectory v=20400 size=747 flags=0x0(none) hashes=18+2 location=embedded Signature size=8972 Timestamp=Dec 15, 2023 at 10:35:07 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=1 size=168 Executable=/usr/local/bin/winegcc Identifier=winegcc Format=Mach-O thin (arm64) CodeDirectory v=20400 size=747 flags=0x0(none) hashes=18+2 location=embedded Signature size=8972 Timestamp=Dec 15, 2023 at 10:35:07 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=1 size=168 Executable=/usr/local/bin/winemaker Identifier=winemaker Format=generic CodeDirectory v=20200 size=169 flags=0x0(none) hashes=1+2 location=embedded Signature size=9052 Timestamp=Dec 15, 2023 at 10:35:07 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=2 size=224 Executable=/usr/local/bin/winemine Identifier=winemine Format=generic CodeDirectory v=20200 size=168 flags=0x0(none) hashes=1+2 location=embedded Signature size=9052 Timestamp=Dec 15, 2023 at 10:35:08 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=2 size=216 Executable=/usr/local/bin/winepath Identifier=winepath Format=generic CodeDirectory v=20200 size=168 flags=0x0(none) hashes=1+2 location=embedded Signature size=9053 Timestamp=Dec 15, 2023 at 10:35:08 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=2 size=216 Executable=/usr/local/bin/wineserver Identifier=wineserver Format=Mach-O thin (arm64) CodeDirectory v=20400 size=5838 flags=0x0(none) hashes=177+2 location=embedded Signature size=8972 Timestamp=Dec 15, 2023 at 10:35:08 AM Info.plist=not bound TeamIdentifier=L479DU3G63 Sealed Resources=none Internal requirements count=1 size=172 but I still get: default 11:47:19.051342-0500 kernel ASP: Security policy would not allow process: 1501, /usr/local/bin/wine Permissions: ls -al wine* -rwxr-xr-x 1 root wheel 28368 Dec 15 10:35 wine -rwxr-xr-x@ 1 root wheel 1973 Dec 14 23:41 wineboot -rwxr-xr-x 1 root wheel 245424 Dec 15 10:35 winebuild -rwxr-xr-x@ 1 root wheel 1973 Dec 14 23:41 winecfg -rwxr-xr-x@ 1 root wheel 1973 Dec 14 23:41 wineconsole lrwxr-xr-x 1 root wheel 7 Dec 14 23:41 winecpp -> winegcc -rwxr-xr-x@ 1 root wheel 1973 Dec 14 23:41 winedbg -rwxr-xr-x 1 root wheel 388400 Dec 15 10:35 winedump -rwxr-xr-x@ 1 root wheel 1973 Dec 14 23:41 winefile lrwxr-xr-x 1 root wheel 7 Dec 14 23:41 wineg++ -> winegcc -rwxr-xr-x 1 root wheel 91840 Dec 15 10:35 winegcc -rwxr-xr-x@ 1 root wheel 95127 Dec 14 23:41 winemaker -rwxr-xr-x@ 1 root wheel 1973 Dec 14 23:41 winemine -rwxr-xr-x@ 1 root wheel 1973 Dec 14 23:41 winepath -rwxr-xr-x 1 root wheel 747120 Dec 15 10:35 wineserver xattr wine* wineboot: com.apple.cs.CodeDirectory wineboot: com.apple.cs.CodeRequirements wineboot: com.apple.cs.CodeRequirements-1 wineboot: com.apple.cs.CodeSignature winecfg: com.apple.cs.CodeDirectory winecfg: com.apple.cs.CodeRequirements winecfg: com.apple.cs.CodeRequirements-1 winecfg: com.apple.cs.CodeSignature wineconsole: com.apple.cs.CodeDirectory wineconsole: com.apple.cs.CodeRequirements wineconsole: com.apple.cs.CodeRequirements-1 wineconsole: com.apple.cs.CodeSignature winedbg: com.apple.cs.CodeDirectory winedbg: com.apple.cs.CodeRequirements winedbg: com.apple.cs.CodeRequirements-1 winedbg: com.apple.cs.CodeSignature winefile: com.apple.cs.CodeDirectory winefile: com.apple.cs.CodeRequirements winefile: com.apple.cs.CodeRequirements-1 etc., etc... Since this is a new machine, maybe something is missing? How do I debug this problem? The most common response to ASP would not allow progress is that there is an unsigned binary. If this is the case, how do I find what binary it is? Thanks! Gene R.
1
0
462
Dec ’23
user-assigned-device-name entitlement - HOW?????
Please help a developer out. If you have gotten the user-assigned-device-name entitlement recently with the new questions, how did you answer the questions? I ask Bard and my app DOES do all of the following and I provided screen shots and it's still rejected. But the problem is, Apple doesn't tell you WHY??? We have to guess and guess. Eligibility criteria: User-facing functionality: Your app must use the user-assigned device name solely for functionality that's visible to the user and allows them to identify their own device. YES!!!!!! Multi-device interaction: The functionality must involve interaction between multiple devices that the same user operates. YES! UI visibility: The user-assigned device name must be visible to the user in your app's UI. You need to provide screenshots of this UI when requesting the entitlement. YES!
1
0
295
Dec ’23
Issue with APNS Token Registration on iOS 16.7.1 - Firebase FCM Token Generated but Register Device Token delegate Not Called
I'm currently facing an issue with APNS token registration on iOS 16.7.1 specifically for iPhone 8+. I'm working on integrating Firebase into my iOS app for push notifications. Problem: The problem I'm encountering is that the didRegisterForRemoteNotificationsWithDeviceToken and didFailToRegisterForRemoteNotificationsWithError delegates are not being called at all, despite Firebase successfully generating the FCM token. Environment: Device: iPhone 8+ iOS Version: 16.7.1 Xcode Version: latest Swift Version: latest Firebase SDK Version: latest Observations: Firebase successfully generates the FCM token, indicating that the device is able to connect to Firebase Cloud Messaging. However, the standard APNS delegate methods (didRegisterForRemoteNotificationsWithDeviceToken and didFailToRegisterForRemoteNotificationsWithError) are not being triggered. This issue seems specific to iOS 16.7.1 on the iPhone 8+. I already tested on other iphone its work normaly. Steps Taken: 1.Ensured that APNS is properly configured in the Apple Developer Console. 2.Firebase is set up correctly, as evidenced by the successful generation of FCM tokens. 3. No relevant errors or warnings in the Xcode console. Question: Has anyone else experienced a similar issue on iOS 16.7.1 or with iPhone 8+ devices? Any insights or suggestions on how to troubleshoot and resolve this issue would be greatly appreciated. Thank you in advance for your time and assistance! Additional Information: If you need more information or code snippets, please let me know. If there's a more appropriate place to post this issue or if it has already been addressed, kindly guide me.
1
0
524
Dec ’23
macOS - Failed to Distribute - Invalid Code Signing Entitlements
Hi, I am trying to distribute my Flutter macOS app, but it fails systematically. The application works perfectly locally (in both Debug & Release modes). My application uses the com.apple.developer.aps-environment entitlement (Push Notifications). I set this entitlement to "production" everywhere (DebugProfile.entitlements, Release.entitlements & RunnerProfile.entitlements). I have macOS distribution provisioning profile. When I am running the 'Archive', I selected as destination: "Any Mac (Apple Silicon, Intel)". When I am trying to deliver the archive, I receive the following error: Invalid Code Signing Entitlements. Your application bundle's signature contains code signing entitlements that are not supported on macOS. Specifically, value 'development' for key 'com.apple.developer.aps-environment' in ... and this... for every single asset !! My configuration is: Flutter 3.16.2 XCode 15.0.1 Mac OS: Ventura 13.6.1 Hardware: Mac mini 2018 Any help will be more than welcome... Thanks in advance,
2
0
431
Dec ’23
Local Push Connectivity API - Got 'Provisioning profile failed qualification' while distributing an app to the store
I have an app which uses the Local Push Connectivity API. I have requested and received the entitlement and everything is working in dev-mode, but once I try to distribute the app to the AppStore I got the following error: Provisioning profile failed qualification Profile doesn't match the entitlements file's value for the com.apple.developer.networking.networkextension entitlement. I was wondering if I need an other entitlement for this, mine is called Local Push Provider iOS Dev which makes me feel like there should be a Store counterpart - but I did not see how to request it on the Entitlement Request Page. Thanks for any hints!
10
0
640
Nov ’23
Cannot add entitlement 'com.apple.developer.device-information.user-assigned-device-name' to Provisioning profile
Currently, My company application get generic device name instead of user-assigned device name on iOS 16 and iOS 17. I read Apple’s documents about the issue: https://developer.apple.com/documentation/uikit/uidevice/1620015-name https://developer.apple.com/forums/thread/721772 But on my account settings, I couldn’t see the entitlement or any way to enable the entitlement. Could you please give me instructions for my problems?
1
0
172
Nov ’23
Tap to Pay: Been waiting 26 days after submitting user flow video for review
Any tips how my company and I can proceed with our Tap to Pay implementation review with Apple? As the title says, we submitted a video 26 days ago and have no traction. I've replied to Apple's "Request Access..." email multiple times with "Case-ID: blah blah" as the first line every time. Between 4 to 6 days later I get the same auto-reply saying "Your entitlement request for the Tap to Pay for iPhone has been granted with the Development Profile restriction...". We've been release-ready for several weeks now. Our product roadmap is being adversely affected by this bottleneck. Any suggestions are welcome! We're at a loss right now. -Jordan Timeline of Events 24 Oct - Submitted TtP for iPhone entitlement request via Apple's web form 27 Oct - Received email confirming entitlement with Development Profile restriction 02 Nov - Replied with video recording of our apps TtP flow 10 Nov - Received same entitlement confirmation email as 27 Oct 13 Nov - Replied asking if Apple needs anything else from us 17 Nov - Received same entitlement confirmation email as 27 Oct 22 Nov - Resent video from a different email account 28 Nov (today) - Received same entitlement confirmation email as 27 Oct
2
2
583
Nov ’23
System pushing CPNowPlayingTemplate to Driving Task CarPlay app (crash)
Since iOS 17 is out I am getting crashes in my Driving Task CarPlay app. It is as if the System tried to push a CPNowPlayingTemplate to my app, and that template, according to the documentation, is not allowed for a Driving Task CarPlay app. I get the following error: Fatal Exception: NSInvalidArgumentException Unsupported object <CPNowPlayingTemplate: 0x283944c60> <identifier: 3195B357-D184-41BF-91CA-399C5810A8EA, userInfo: (null), tabTitle: (null), tabImage: (null), showsTabBadge: 0> passed to pushTemplate:animated:completion:. Allowed classes: {( CPInformationTemplate, CPListTemplate, CPAlertTemplate, CPActionSheetTemplate, CPTabBarTemplate, CPGridTemplate, CPPointOfInterestTemplate )} My app, from time to time, plays some sounds to warn the driver about issues in the road. Maybe that can trigger (in which cases?) the now playing template to be pushed to my app. Is this an iOS 17 bug? Is there a way to work around it? Thank you.
1
0
426
Nov ’23