Search results for

“sandbox”

10,542 results found

Post

Replies

Boosts

Views

Activity

IAP Implementation Steps for React Native Expo Managed Environment
Hi, I am working on integrating In-App Purchases (IAP) into a React Native app using the Expo managed environment. I would appreciate guidance on the complete implementation steps for setting up and handling IAP in this context. Specifically, I am looking for: How to configure In-App Purchases in App Store Connect (product IDs, pricing, etc.) Which libraries or Expo modules are recommended for IAP in a managed Expo workflow (e.g., expo-in-app-purchases or react-native-iap)? Step-by-step integration guide — installing the library, adding necessary permissions/entitlements, and any required app.json / app.config.js configuration. How to fetch available products, initiate a purchase, and handle purchase callbacks/receipts in code. Server-side receipt validation — best practices and recommended approach. Handling edge cases such as purchase restoration, subscription renewals, and failed transactions. Any sandbox testing setup required for testing IAP before going live. Any official documentation, sample
0
0
102
Jun ’26
DCAppAttestService.isSupported always returns false on macOS 27
I've been implementing App Attest on macOS 27 following the WWDC 2026 Session 201 announcement. DCAppAttestService.shared.isSupported always returns false on my M4 Mac running macOS 27.0 (26A5368g), even with the correct entitlement and a valid provisioning profile. What I have set up (correctly, as far as I can tell) com.apple.developer.devicecheck.app-attest-opt-in capability enabled in the Developer Portal (value CDhash) Entitlement present in both the binary and the embedded provisioning profile Developer ID signed, ProvisionsAllDevices: true The problem DCAppAttestService.shared.isSupported returns false from every process type I tested: An EndpointSecurity system extension A launchd daemon A sandboxed app running in user session generateKey() fails with com.apple.devicecheck.error code 1 (featureUnsupported). Root cause? (from devicecheckd logs) I see these logs devicecheckd: [com.apple.devicecheck:aai] FeatureFlagsManager.m:35 Mac feature flag enabled { enabled=1 }. devicecheckd: (AppAttestInt
1
0
958
Jun ’26
Reply to Access main camera on Apple Vision Pro
I'm in the same boat here. I'm developing an app where I'd like to do OCR style scanning of cards. I'm not in The position where I can get an enterprise agreement, but I don't believe that using screenshots or pasting photos is a good user experience or good enough of a user experience for me to even support the feature in the application. I'd really love if we could get a way to get access to the main camera in like a sandboxed way So that we could safely access the main camera without gaining access to the user's entire feed forever. For example, I think a decent user experience could be that they could enable a scan mode, and then the feed becomes active until they stop, and then they can turn it off, and in turning it off, we lose access to the feed. It would function much the same as The iPhone camera access, where you only get access to it for the period of time that you're using it. In my situation, this is the first time for my app where the vision is just incapable of keeping up with the oth
Topic: Spatial Computing SubTopic: General Tags:
Jun ’26
StoreKit returns no in-app subscriptions on TestFlight despite correct App Store Connect configuration
Hello Applet, I’m experiencing an issue with StoreKit on a TestFlight build. My app uses auto-renewable subscriptions through StoreKit and RevenueCat. Configuration already verified: App installed through TestFlight (not debug). Bundle Identifier: com.ciborgu.vytalai Paid Applications agreement is active. In-App Purchase capability is enabled. Three auto-renewable subscriptions exist in App Store Connect. Product IDs match exactly between App Store Connect, RevenueCat and the application. RevenueCat initializes successfully. A Sandbox test account has been created. Tested on a physical iPhone. Device restarted and app reinstalled from TestFlight. VPN and iCloud Private Relay disabled. When attempting to purchase a subscription, the Apple payment sheet never appears. Our diagnostics indicate that StoreKit does not return any available products for the configured Product IDs, preventing the purchase sheet from opening. Expected Product IDs: vytalai_premium_monthly vytalai_premium_yearly vytalai_premium
9
0
1.3k
Jun ’26
IAP products not loading in sandbox after activating Paid Apps Agreement
I activated the Paid Apps Agreement today along with banking and tax information. My app uses react-native-purchases (RevenueCat) with StoreKit 2. When tapping purchase buttons in TestFlight I still get Product not available - Could not load this product. Products show Waiting for Review in App Store Connect. Sandbox tester is configured. Is there a delay after activating the Paid Apps Agreement before sandbox purchases work? How long should I expect to wait?
0
0
340
Jun ’26
The default message configured through the Retention Message API is not displayed to users
Hello, I have a problem with the Retention Message API. The default message is not displayed to users when they try to cancel their subscription in the device's Settings app. The API configuration was made with Revenue Request. The request to use this API was approved by Apple for our account. After configuring it for the Sandbox environment, everything worked as expected the image and text were displayed to users. Later, I applied the same configuration to the Production environment. I received the Approved status for the message, but after purchasing the subscription from the App Store, although I can see the subscription in Settings, the retention message is not displayed when I attempt to cancel it. I have tried different Apple accounts from different regions (both EU and non-EU) and tested from physical locations without using a VPN. Also, for clarification, we do not use real-time communication only the default retention message. For additional information: I also tried configuring this message
1
0
957
Jun ’26
Identifying the host app from a custom keyboard on iOS 26.4+ (host bundle id is now nil)
I have a custom keyboard (UIInputViewController, Full Access). For a dictation feature it opens its containing app to record audio (the keyboard can't use the microphone) and then needs to return the user to the host app they were typing in. That requires knowing the host app. Through iOS 26.3 this worked, because the host bundle id was exposed on the keyboard's input-session connection. On iOS 26.4 / 26.5 it is now nil, and every route I have tried is blocked: UIInputViewController _hostApplicationBundleIdentifier -> nil _hostProcessIdentifier and the host audit token are available, but: RBSProcessHandle handleForAuditToken: / handleForIdentifier: -> Client not entitled SecTaskCopySigningIdentifier / SecTaskCopyValueForEntitlement -> nil (sandbox) proc_pidpath -> EPERM UIKeyboardImpl _remoteAppId / _remoteLocalizedAppName -> nil The keyboard arbiter client-change event fires in SpringBoard, not in the extension process However, at least one shipping keyboard still does this on iOS 26.
1
0
404
Jun ’26
initConnection() from react-native-iap throws "undefined is not a function" in TestFlight build — StoreKit not connecting
Platform & Versions React Native: 0.85.3 Expo SDK: 56 react-native-iap: 15.3.3 iOS: 18.7.8 Device: iPhone 16 Pro Distribution: TestFlight (distribution: store via EAS Build) Problem In a TestFlight build (App Store distribution, not ad-hoc), calling initConnection() from react-native-iap throws a TypeError: undefined is not a function on iOS. This happens on every app launch. The error is caught in a try/catch around initConnection() and we never reach getSubscriptions() or purchaseUpdatedListener(). The app never connects to StoreKit. All IAP attempts fail immediately with Store unavailable. What we've confirmed Sandbox tester account is configured in Settings → App Store → Sandbox Account Allow Purchases & Renewals is ON in the Sandbox Testing screen An active sandbox subscription exists (visible in Settings → App Store → Sandbox Account → Subscriptions), meaning StoreKit was reachable at some earlier point react-native-iap is listed in the Expo config pl
0
0
277
Jun ’26
Reply to API to determine firewall settings in sandboxed app
[quote='835970021, dstjohn, /thread/835970, /profile/dstjohn'] Is there an API to determine if the firewall is enabled and all connections blocked? [/quote] No. [quote='835970021, dstjohn, /thread/835970, /profile/dstjohn'] I've submitted a Feedback request (FB23378402) as well. [/quote] Thanks. That’s the best path forward for this. And just to be clear, the output of socketfilterfw is not considered API, so there’s really no good solution this problem even in a non-sandboxed app. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com
Jun ’26
Reply to [NetworkExtension] [EndpointSecurity] [AppStore] [macOS] Can an app that uses a MitM-style network traffic interception be submitted to the AppStore?
What Kevin said plus… [quote='835982021, FadyAckad, /thread/835982, /profile/FadyAckad'] is there a way for a sandboxed app to install and trust a root CA? [/quote] No. In fact, this isn’t possible for a non-sandboxed app either. A few years back we changed our policy on this front. On modern versions of macOS there’s no way to install a trusted anchor without explicit user consent [1]. And I’ve no idea what App Review would make of you trying to do that in an App Store app. [quote='895357022, DTS Engineer, /thread/835982?answerId=895357022#895357022'] I wouldn't expect either of these to be allowed on the store. [/quote] Kevin’s intuition is correct for ES. For NE the story is more nuanced. NE providers must be sandboxed, so my understanding is that we allow both the appex and sysex variants on the App Store. And, yeah, that means you end up with sysex-packaged NE providers running as root but in a sandbox. It’s a bit weird. Having said that, both Kevin and I work for DTS
Jun ’26
New auto-renewable subscription not appearing in sandbox (getOfferings/StoreKit returns 0) after re-creating the product — new app, not yet approved
I have a new app (first version, not yet approved) with one auto-renewable subscription. Earlier in development, the subscription loaded and I could complete a sandbox purchase (the StoreKit sheet showed Sandbox, the price, and my sandbox account). To resolve an App Store Connect submission deadlock, I deleted that subscription and created a new one with a new Product ID. Since then, the new subscription does NOT appear in the sandbox: StoreKit returns no products, so getOfferings (via RevenueCat) returns 0 packages — both during App Review and on my own development build signed into a sandbox account. Configuration (all verified): Subscription is Ready to Submit / Waiting for Review Available in all territories Paid Apps Agreement active; banking and tax complete Bundle ID and shared secret unchanged from when it worked App Review keeps rejecting under Guideline 2.1(b) (プレミアムをはじめる / purchase button unresponsive) because the product never loads. Questions: For a ne
1
0
580
Jun ’26
Reply to Single Build / Archive for iOS and Catalyst Build
I am running Xcode 26.5. I have not moved to trying one of the 27 betas yet. So I assumed (and maybe incorrectly) that you would be able to archive once for an app that can generate both a Catalyst build AND an iOS build. Since it’s the same source code and bundle either way it just seemed like it should be a single process. I couldn’t find documentation on how a universal Catalyst/iOS bundle was structured, but maybe that’s because they don’t exist as one archive process. What do you mean by “You can also create a multiple platform and then add Mac Catalyst: “For Mac Catalyst builds, this target and its dependencies will link or embed only Mac-compatible content, and the security and App Sandbox settings will be aligned with the iOS app.” That sounds similar to a universal binary which is maybe where my confusion lies. Thank you for helping out. I greatly appreciate it. :)
Jun ’26
UINavigationItemRenameDelegate does not work in IOS 16
I have an iPad app which is trying to support document renaming in the title bar. For IOS 17+ I set the renameDelegate to the document instance and it works fine. For IOS 16 I need to create an actual delegate, but no matter how I structure the code it fails with a permission error: Rename failed: “original_file_name” couldn’t be moved because you don’t have permission to access “Desktop”. It seems to always happen accessing the parent directory. I have tried using the file coordinator as well with the same result. It seems impossible to implement unless the callback contains a security permissioned url for the parent directory. Is there anyway to make this work in IOS 16 in the sandbox? Do I have to create my own rename functionality using a FilePicker? Seems like this should be built in like it is in MacOS, or even IOS17+ Here is the code: extension DocumentWindow : UINavigationItemRenameDelegate { func navigationItem(_ navigationItem: UINavigationItem, didEndRenamingWith title: String) { guard let
0
0
587
Jun ’26
IAP Implementation Steps for React Native Expo Managed Environment
Hi, I am working on integrating In-App Purchases (IAP) into a React Native app using the Expo managed environment. I would appreciate guidance on the complete implementation steps for setting up and handling IAP in this context. Specifically, I am looking for: How to configure In-App Purchases in App Store Connect (product IDs, pricing, etc.) Which libraries or Expo modules are recommended for IAP in a managed Expo workflow (e.g., expo-in-app-purchases or react-native-iap)? Step-by-step integration guide — installing the library, adding necessary permissions/entitlements, and any required app.json / app.config.js configuration. How to fetch available products, initiate a purchase, and handle purchase callbacks/receipts in code. Server-side receipt validation — best practices and recommended approach. Handling edge cases such as purchase restoration, subscription renewals, and failed transactions. Any sandbox testing setup required for testing IAP before going live. Any official documentation, sample
Replies
0
Boosts
0
Views
102
Activity
Jun ’26
DCAppAttestService.isSupported always returns false on macOS 27
I've been implementing App Attest on macOS 27 following the WWDC 2026 Session 201 announcement. DCAppAttestService.shared.isSupported always returns false on my M4 Mac running macOS 27.0 (26A5368g), even with the correct entitlement and a valid provisioning profile. What I have set up (correctly, as far as I can tell) com.apple.developer.devicecheck.app-attest-opt-in capability enabled in the Developer Portal (value CDhash) Entitlement present in both the binary and the embedded provisioning profile Developer ID signed, ProvisionsAllDevices: true The problem DCAppAttestService.shared.isSupported returns false from every process type I tested: An EndpointSecurity system extension A launchd daemon A sandboxed app running in user session generateKey() fails with com.apple.devicecheck.error code 1 (featureUnsupported). Root cause? (from devicecheckd logs) I see these logs devicecheckd: [com.apple.devicecheck:aai] FeatureFlagsManager.m:35 Mac feature flag enabled { enabled=1 }. devicecheckd: (AppAttestInt
Replies
1
Boosts
0
Views
958
Activity
Jun ’26
unable to add sandbox mastercard to iwatch wallet
unable to add sandbox mastercard to iwatch wallet, no issue for amex. slightly difficult and failed but in the end managed to add visa after several manual input sandbox test card. Please take a look at 23315137
Replies
3
Boosts
0
Views
800
Activity
Jun ’26
Reply to Access main camera on Apple Vision Pro
I'm in the same boat here. I'm developing an app where I'd like to do OCR style scanning of cards. I'm not in The position where I can get an enterprise agreement, but I don't believe that using screenshots or pasting photos is a good user experience or good enough of a user experience for me to even support the feature in the application. I'd really love if we could get a way to get access to the main camera in like a sandboxed way So that we could safely access the main camera without gaining access to the user's entire feed forever. For example, I think a decent user experience could be that they could enable a scan mode, and then the feed becomes active until they stop, and then they can turn it off, and in turning it off, we lose access to the feed. It would function much the same as The iPhone camera access, where you only get access to it for the period of time that you're using it. In my situation, this is the first time for my app where the vision is just incapable of keeping up with the oth
Topic: Spatial Computing SubTopic: General Tags:
Replies
Boosts
Views
Activity
Jun ’26
StoreKit returns no in-app subscriptions on TestFlight despite correct App Store Connect configuration
Hello Applet, I’m experiencing an issue with StoreKit on a TestFlight build. My app uses auto-renewable subscriptions through StoreKit and RevenueCat. Configuration already verified: App installed through TestFlight (not debug). Bundle Identifier: com.ciborgu.vytalai Paid Applications agreement is active. In-App Purchase capability is enabled. Three auto-renewable subscriptions exist in App Store Connect. Product IDs match exactly between App Store Connect, RevenueCat and the application. RevenueCat initializes successfully. A Sandbox test account has been created. Tested on a physical iPhone. Device restarted and app reinstalled from TestFlight. VPN and iCloud Private Relay disabled. When attempting to purchase a subscription, the Apple payment sheet never appears. Our diagnostics indicate that StoreKit does not return any available products for the configured Product IDs, preventing the purchase sheet from opening. Expected Product IDs: vytalai_premium_monthly vytalai_premium_yearly vytalai_premium
Replies
9
Boosts
0
Views
1.3k
Activity
Jun ’26
IAP products not loading in sandbox after activating Paid Apps Agreement
I activated the Paid Apps Agreement today along with banking and tax information. My app uses react-native-purchases (RevenueCat) with StoreKit 2. When tapping purchase buttons in TestFlight I still get Product not available - Could not load this product. Products show Waiting for Review in App Store Connect. Sandbox tester is configured. Is there a delay after activating the Paid Apps Agreement before sandbox purchases work? How long should I expect to wait?
Replies
0
Boosts
0
Views
340
Activity
Jun ’26
The default message configured through the Retention Message API is not displayed to users
Hello, I have a problem with the Retention Message API. The default message is not displayed to users when they try to cancel their subscription in the device's Settings app. The API configuration was made with Revenue Request. The request to use this API was approved by Apple for our account. After configuring it for the Sandbox environment, everything worked as expected the image and text were displayed to users. Later, I applied the same configuration to the Production environment. I received the Approved status for the message, but after purchasing the subscription from the App Store, although I can see the subscription in Settings, the retention message is not displayed when I attempt to cancel it. I have tried different Apple accounts from different regions (both EU and non-EU) and tested from physical locations without using a VPN. Also, for clarification, we do not use real-time communication only the default retention message. For additional information: I also tried configuring this message
Replies
1
Boosts
0
Views
957
Activity
Jun ’26
Identifying the host app from a custom keyboard on iOS 26.4+ (host bundle id is now nil)
I have a custom keyboard (UIInputViewController, Full Access). For a dictation feature it opens its containing app to record audio (the keyboard can't use the microphone) and then needs to return the user to the host app they were typing in. That requires knowing the host app. Through iOS 26.3 this worked, because the host bundle id was exposed on the keyboard's input-session connection. On iOS 26.4 / 26.5 it is now nil, and every route I have tried is blocked: UIInputViewController _hostApplicationBundleIdentifier -> nil _hostProcessIdentifier and the host audit token are available, but: RBSProcessHandle handleForAuditToken: / handleForIdentifier: -> Client not entitled SecTaskCopySigningIdentifier / SecTaskCopyValueForEntitlement -> nil (sandbox) proc_pidpath -> EPERM UIKeyboardImpl _remoteAppId / _remoteLocalizedAppName -> nil The keyboard arbiter client-change event fires in SpringBoard, not in the extension process However, at least one shipping keyboard still does this on iOS 26.
Replies
1
Boosts
0
Views
404
Activity
Jun ’26
initConnection() from react-native-iap throws "undefined is not a function" in TestFlight build — StoreKit not connecting
Platform & Versions React Native: 0.85.3 Expo SDK: 56 react-native-iap: 15.3.3 iOS: 18.7.8 Device: iPhone 16 Pro Distribution: TestFlight (distribution: store via EAS Build) Problem In a TestFlight build (App Store distribution, not ad-hoc), calling initConnection() from react-native-iap throws a TypeError: undefined is not a function on iOS. This happens on every app launch. The error is caught in a try/catch around initConnection() and we never reach getSubscriptions() or purchaseUpdatedListener(). The app never connects to StoreKit. All IAP attempts fail immediately with Store unavailable. What we've confirmed Sandbox tester account is configured in Settings → App Store → Sandbox Account Allow Purchases & Renewals is ON in the Sandbox Testing screen An active sandbox subscription exists (visible in Settings → App Store → Sandbox Account → Subscriptions), meaning StoreKit was reachable at some earlier point react-native-iap is listed in the Expo config pl
Replies
0
Boosts
0
Views
277
Activity
Jun ’26
Reply to API to determine firewall settings in sandboxed app
[quote='835970021, dstjohn, /thread/835970, /profile/dstjohn'] Is there an API to determine if the firewall is enabled and all connections blocked? [/quote] No. [quote='835970021, dstjohn, /thread/835970, /profile/dstjohn'] I've submitted a Feedback request (FB23378402) as well. [/quote] Thanks. That’s the best path forward for this. And just to be clear, the output of socketfilterfw is not considered API, so there’s really no good solution this problem even in a non-sandboxed app. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com
Replies
Boosts
Views
Activity
Jun ’26
Reply to [NetworkExtension] [EndpointSecurity] [AppStore] [macOS] Can an app that uses a MitM-style network traffic interception be submitted to the AppStore?
What Kevin said plus… [quote='835982021, FadyAckad, /thread/835982, /profile/FadyAckad'] is there a way for a sandboxed app to install and trust a root CA? [/quote] No. In fact, this isn’t possible for a non-sandboxed app either. A few years back we changed our policy on this front. On modern versions of macOS there’s no way to install a trusted anchor without explicit user consent [1]. And I’ve no idea what App Review would make of you trying to do that in an App Store app. [quote='895357022, DTS Engineer, /thread/835982?answerId=895357022#895357022'] I wouldn't expect either of these to be allowed on the store. [/quote] Kevin’s intuition is correct for ES. For NE the story is more nuanced. NE providers must be sandboxed, so my understanding is that we allow both the appex and sysex variants on the App Store. And, yeah, that means you end up with sysex-packaged NE providers running as root but in a sandbox. It’s a bit weird. Having said that, both Kevin and I work for DTS
Replies
Boosts
Views
Activity
Jun ’26
New auto-renewable subscription not appearing in sandbox (getOfferings/StoreKit returns 0) after re-creating the product — new app, not yet approved
I have a new app (first version, not yet approved) with one auto-renewable subscription. Earlier in development, the subscription loaded and I could complete a sandbox purchase (the StoreKit sheet showed Sandbox, the price, and my sandbox account). To resolve an App Store Connect submission deadlock, I deleted that subscription and created a new one with a new Product ID. Since then, the new subscription does NOT appear in the sandbox: StoreKit returns no products, so getOfferings (via RevenueCat) returns 0 packages — both during App Review and on my own development build signed into a sandbox account. Configuration (all verified): Subscription is Ready to Submit / Waiting for Review Available in all territories Paid Apps Agreement active; banking and tax complete Bundle ID and shared secret unchanged from when it worked App Review keeps rejecting under Guideline 2.1(b) (プレミアムをはじめる / purchase button unresponsive) because the product never loads. Questions: For a ne
Replies
1
Boosts
0
Views
580
Activity
Jun ’26
Reply to Single Build / Archive for iOS and Catalyst Build
I am running Xcode 26.5. I have not moved to trying one of the 27 betas yet. So I assumed (and maybe incorrectly) that you would be able to archive once for an app that can generate both a Catalyst build AND an iOS build. Since it’s the same source code and bundle either way it just seemed like it should be a single process. I couldn’t find documentation on how a universal Catalyst/iOS bundle was structured, but maybe that’s because they don’t exist as one archive process. What do you mean by “You can also create a multiple platform and then add Mac Catalyst: “For Mac Catalyst builds, this target and its dependencies will link or embed only Mac-compatible content, and the security and App Sandbox settings will be aligned with the iOS app.” That sounds similar to a universal binary which is maybe where my confusion lies. Thank you for helping out. I greatly appreciate it. :)
Replies
Boosts
Views
Activity
Jun ’26
UINavigationItemRenameDelegate does not work in IOS 16
I have an iPad app which is trying to support document renaming in the title bar. For IOS 17+ I set the renameDelegate to the document instance and it works fine. For IOS 16 I need to create an actual delegate, but no matter how I structure the code it fails with a permission error: Rename failed: “original_file_name” couldn’t be moved because you don’t have permission to access “Desktop”. It seems to always happen accessing the parent directory. I have tried using the file coordinator as well with the same result. It seems impossible to implement unless the callback contains a security permissioned url for the parent directory. Is there anyway to make this work in IOS 16 in the sandbox? Do I have to create my own rename functionality using a FilePicker? Seems like this should be built in like it is in MacOS, or even IOS17+ Here is the code: extension DocumentWindow : UINavigationItemRenameDelegate { func navigationItem(_ navigationItem: UINavigationItem, didEndRenamingWith title: String) { guard let
Replies
0
Boosts
0
Views
587
Activity
Jun ’26
Reply to FB16862332 (iOS 18.3 REGRESSION: UIDocumentViewController: Placeholder icon displayed instead of document icon in share menu item of document title menu)
The sandboxing has so many issues... poorly thought out imo. Similarly, if you try to support IOS before 17, and try to use the rename delegate, it won't work, because you don't have permission to the directory containing the file.
Topic: UI Frameworks SubTopic: UIKit
Replies
Boosts
Views
Activity
Jun ’26