Overview

Post

Replies

Boosts

Views

Created

notarytool is giving me HTTP status error
I am using the xcrun notarytool submit --apple-id xxxxx@gmail.com --password xxxxx--team-id xxxxxx --output-format json --wait --no-progress /my/dmg/file to notarize my DMG file. But it always gives me back the error, Error: HTTP status code: 403. A required agreement is missing or has expired. This request requires an in-effect agreement that has not been signed or has expired. Ensure your team has signed the necessary legal agreements and that they are not expired. I did log in my developer account and found no place to sign any agreement. Actually in the morning when I logged in the developer account, it indeed pop up the agreement for me to sign and I did sign it. But now it seems I don't have any more agreements to sign. So, any ideas about what I should do?
3
0
406
3d
Making sure uploads continue in background, but also works in foreground
Hello! I have read most of the "Background Tasks Resources" here https://developer.apple.com/forums/thread/707503 - but still have a few questions that I need clarified. To provide our context, our usecase is that our user wants to upload files to our servers. This is an active decision by the user to initiate the upload, but we also want make sure the files are uploaded, even if the user chooses to background our app. If we use a URLSession.backgroundto initiate the uploadTask, I understand that we are passing it of to the urlsession deamon to handle the upload. Which is great, if the user chooses to background our app. But, what if they just stay with the app in the foreground? Will it start uploading immediately? Can we expect the same latency that a standard URLSession will provide? And the potential delay will only occur if they actually background our app. Also, what happens if a background upload is in-progress and the user enters our app again? Will it gain priority, and run with similar latency as standard URL session? I.e., can we just always rely on using a background session, or should we kick of a beginBackgroundTask with a standard URL session, and only trigger a background uploadTask if we do not finish the standard upload before getting told we are about to get killed? A different question. I know there is the rate-limit delay added if we trigger multiple background URL tasks. Does that effect the following use case? We would like to send an additional HTTP request to our servers when the upload is completed, to notify it of the completion, but are we allowed to do that when the app is woken from the background? So, basically calling .dataTask from handleEventsForBackgroundURLSession for example?
1
0
75
3d
Feedback concerning submission.
Hello all! My name is Luke, and I'm a 14 year old with a idea for SSC. This is my first SSC submission ever. I would like some feedback concerning a question. My app is an AI powered academic planner that helps you and your life. I won't give too much away, but I believe it's a really helpful concept. It uses a mini on-device LLM (built with simple if this word typed then do this logic) to help organize assignments. This is a real business I am building, and I put inside of my app simulated features such as the app saying "scanning your Google Classroom..", would this go against any terms and make the app less likely to win? I also have my app fully polished, and feels like an actual app and finished product, with demo assignments pre-loaded, and most stuff is placeholders. Should the app be more like a guided simulator? Such as "click here to see how this will be simulated in a final release" or again should it be polished? I just want some feedback, since I only have 3 minutes, and the app needs to be offline, I just want to improvise. Hopefully I can get some feedback from the community, and/or ex-winners! Thanks all! And good luck! :) - Luke
2
0
445
3d
Stuck in a loop between Guideline 2.1 and 2.2: Reviewer refuses 5 mins of gameplay
Title: Stuck in a loop between Guideline 2.1 and 2.2: Reviewer refuses to play for 5 minutes. Body: I am an independent developer struggling with a repetitive rejection cycle for over a month. I need advice on how to handle a clear contradiction in the review process. The Loop: Initial Rejection (2.1): Reviewer said they couldn't locate the IAP. My Action: I added a prominent "IAP Test" button on the title screen to skip gameplay. Second Rejection (2.2): A different reviewer said the "IAP Test" button is a "Beta feature" and not appropriate for production. My Action: I removed the button and implemented a "Secret Command" (Easter Egg) that enables an "Assist Mode" (extending the timer to 5 minutes) so the reviewer can easily clear the game and reach the IAP screen in about 5-6 minutes. Latest Rejection (2.1): The reviewer now says: "While we appreciate you provide an instruction... we require a quicker way to access in-app purchases without spending significant time to play games." The Current Solution: In my next submission, I am implementing a "Direct Warp" feature. Tapping the title logo 7 times will trigger a secret transition directly to the Ending Scene (IAP screen). The Contradiction & Question: Apple forbids "Test Buttons" (2.2), but now they refuse to spend even 3-5 minutes of gameplay to reach the IAP. I am forced to implement a "Warp" feature just to satisfy the reviewer's convenience. Has anyone else experienced a reviewer refusing to perform 5-6 minutes of gameplay? Is a "Secret Warp" considered a "Beta feature" under 2.2, or is it an acceptable compromise for 2.1? I want to ensure I don't get rejected for 2.2 again.
3
0
148
3d
Question about submission.
Hello all! My name is Luke, and I'm a 14 year old with a idea for SSC. This is my first SSC submission ever. I would like some feedback concerning a question. My app is an AI powered academic planner that helps you and your life. It uses a mini on-device LLM to help organize assignments. This is a real business I am building, and I put inside of my app simulated features such as the app saying "scanning your Google Classroom..", would this go against any terms and make the app less likely to win? I also have my app fully polished, and feels like an actual app and finished product, with demo assignments pre-loaded, and most stuff is placeholders. Should the app be more like a guided simulator? Such as "click here to see how this will be simulated in a final release" or again should it be polished? I just want some feedback, since I only have 3 minutes, and the app needs to be offline, I just want to improvise. You can check out the basis of my app at my website. https://whiteb0x.me Hopefully I can get some feedback from the community, and/or ex winners! Thanks all! - Luke
1
0
57
3d
Clarifying the intended scope of DL-TDoA ranging in Nearby Interaction
Does DL-TDoA ranging in the Nearby Interaction framework support building a traditional RTLS-style TDoA localization system, where a device’s absolute position is computed from time-difference measurements across multiple deployed anchors, or is DL-TDoA strictly limited to system-managed, relative ranging and direction estimation (distance/direction) between nearby devices? If DL-TDoA ranging in Nearby Interaction is not intended to support traditional RTLS-style TDoA localization, is there any public documentation or reference material that describes the intended DL-TDoA architecture, such as the expected system setup, device roles, and deployment constraints (for example, how ranging is expected to be performed between an iPhone and nearby accessories), beyond the high-level API documentation? Regards.
0
0
25
3d
Apple Wallet Extension Implementation
Hello Dear Network, We are developing a banking application and are implementing Apple Wallet In-App Provisioning with Wallet UI and Non-UI extensions. Our App Store submission fails with the error: "Missing entitlement com.apple.developer.payment-pass-provisioning" for both Wallet UI and Non-UI extensions. In the Apple Developer portal, we do not see the "Apple Pay" or "In-App Provisioning" capabilities available for our App ID or extension App IDs. We would like to request enablement of: Apple Pay Payment Pass Provisioning In-App Provisioning for our Apple Developer Team and related App IDs. Please let us know what we need to do for can upload build with that Entitlements, what can be problem? Thank you.
0
0
42
4d
HealthKit backgroundDelivery is only triggering in the background while charging
HealthKit background delivery only triggers when charging. I have set step monitoring to hourly frequency. Despite step changes, callbacks fail to arrive after 3-4 hours on battery, but trigger immediately upon connecting power. Observed for 2 days: background updates are only received when charging. The device is not in Low Power Mode, and Background App Refresh is enabled for the app in Settings.
1
0
58
4d
What trends or updates in the App Store influence ASO in 2026
User spending on mobile apps keeps rising, but competition is growing faster, making App Store Optimization a critical pillar of mobile growth by improving visibility, reducing cost per install, and driving stronger organic performance. This post highlights the most important ASO trends for 2026, including AI driven optimization, user intent focus, localization, creative testing, analytics, and privacy first strategies to help apps grow consistently on the App Store.
0
0
17
4d
Component package and notarization of helper executables
Hello, we have a product package which is structured like this: / Installer.pkg / Distribution / Main Component.pkg / Scripts / preinstall / postinstall / helper [ Mach-O executable ] / Payload / Application Bundle.app / Another Component.pkg ... The helper is our custom CLI helper tool which we build and sign and plan to use it in pre/post install scripts. I'd like to ask if we need to independently notarize and staple the helper executable or just the top level pkg notarization is sufficient in this case? We already independently notarize and staple the Application Bundle.app so it has ticket attached. But that's because of customers who often rip-open the package and pick only the bundle. We don't plan to have helper executable used outside of installation process. Thank you, o/
1
0
171
4d
Guideline 4.3(b) Rejection Inconsistency - App Review Not Acknowledging Unique Features or Reading Appeal Notes
I am seeking guidance after experiencing what appears to be an inconsistent and unresponsive review process. My app was rejected under Guideline 4.3(b) (Spam - saturated category) and Guideline 2.1 (App Completeness - IAP not found in binary). I would like to highlight several concerns: Regarding 2.1 - IAP Issue: The rejection states that In-App Purchase products "could not be found in the submitted binary." However, a previous reviewer successfully accessed and screenshotted the exact purchase screen in an earlier review cycle. The IAP is clearly implemented and functional. This inconsistency suggests the current reviewer may not have thoroughly tested the app. Regarding 4.3(b) - Spam: I have submitted detailed appeal notes explaining the unique, differentiating features of my app that are not found in any competing applications in this category. These include: Integration with real-time external data sources (not static content) Cultural and regional elements unique to my market AI-powered contextual features beyond template-based functionality A distinctive companion feature focused on reflective dialogue rather than predictions Despite providing this documentation, I receive identical templated rejection responses with no acknowledgment of the specific points raised in my appeals. My Questions: How can I ensure that reviewers actually read and consider the detailed notes provided in appeals? If a previous reviewer could access the IAP screen, why would the current reviewer claim it doesn't exist? Apple actively features apps in this category in editorial collections. What specific criteria differentiates "approved" apps from those rejected as spam? I have invested significant development time and resources into creating something genuinely innovative, not a clone. I respectfully request that my submission receive a thorough, hands-on evaluation rather than a surface-level category-based rejection. Any guidance from Apple staff or developers who have navigated similar situations would be greatly appreciated. Most Importantly: This experience is deeply discouraging and exhausting. This process does not feel developmental or constructive that it feels like a barrier designed to wear down independent developers. The inconsistency between platforms is striking: my app was approved on Google Play without any issues, and we were expecting simultaneous production releases. Instead, I am trapped in a rejection loop here while my competitor advantage erodes daily. How can it be that one platform recognizes the legitimacy of my work while the other dismisses it with templated responses? Simply providing vague assurances and surface-level category rejections helps no one, not developers, not users, not the ecosystem. Independent developers are the backbone of app marketplace diversity. When the review process becomes this opaque and unresponsive, it doesn't protect quality that it stifles innovation and consolidates the market in favor of established players who can afford to wait indefinitely. I am not asking for special treatment. I am asking for a fair, thorough, and consistent review.
0
0
71
4d
How does one get the locale-specific character set encoding on a Cocoa App
If (in terminal) I type 'env', I'll see a line that looks like: LANG=en_GB.UTF-8 And I can parse that to get the 2-char 'en' locale-code, the sub-domain 'GB' and the character-set encoding of UTF-8. All well and good. However in a Cocoa app, I can't seem to find the equivalent for the "UTF-8" part. This is a cross-platform app, but at this point I'll go with any solution... I've tried: NSLocale *loc = NSLocale.currentLocale; NSString *lang = loc.localeIdentifier; setlocale(LC_ALL, NULL); char *text = nl_langinfo(CODESET); if (text) NSString *charset = [NSString stringWithUTF8String:text]; NSLog(@"lang:%@\nchar:%@\n",lang, charset); which displays: lang:en-GB char:US-ASCII Also tried: // Search for locale info by preferred environment variable NSProcessInfo *pi = NSProcessInfo.processInfo; NSDictionary<NSString *,NSString *> *env = pi.environment; NSString *spec = env[@"LC_ALL"]; if (spec == nil) spec = env[@"LC_CTYPE"]; if (spec == nil) spec = env[@"LANG"]; NSLog(@"spec:%@\n", spec); which displays: spec:(null) Also tried: CFStringEncoding sys = CFStringGetSystemEncoding(); CFStringRef enc = CFStringConvertEncodingToIANACharSetName(sys); NSString *nsEnc = (__bridge NSString *)enc; NSLog(@"iana:%@", nsEnc); enc = CFStringGetNameOfEncoding(sys); nsEnc = (__bridge NSString *)enc; NSLog(@"name:%@", nsEnc); CFStringEncoding compat = CFStringGetMostCompatibleMacStringEncoding(sys); enc = CFStringGetNameOfEncoding(compat); nsEnc = (__bridge NSString *)enc; NSLog(@"name:%@", nsEnc); which displays: iana:macintosh name:Western (Mac OS Roman) name:Western (Mac OS Roman) Any ideas ?
3
0
63
4d
Our app submission is being rejected many times
Hi, Our app submission is being rejected many times. We have provided the required adjustments but still receiving the following: Guideline 3.1.2 - Business - Payments - Subscriptions Issue Description The submission did not include all the required information for apps offering auto-renewable subscriptions. The app's binary is missing the following required information: A functional link to the Terms of Use (EULA) A functional link to the privacy policy Next Steps Update the app binary to include the information specified above. Resources Apps offering auto-renewable subscriptions must include all of the following required information in the binary: Title of auto-renewing subscription (this may be the same as the in-app purchase product name) Length of subscription Price of subscription, and price per unit if appropriate Functional links to the privacy policy and Terms of Use (EULA) The app metadata must also include functional links to the privacy policy in the Privacy Policy field in App Store Connect and the Terms of Use (EULA) in the App Description or EULA field in App Store Connect. Pls help, thank you.
0
0
77
4d
"Waiting on review" since 12 december
Hello App Review Team, My app has been in review since December 12 (TestFlight), and I wanted to kindly ask if there is any additional information, clarification, or action required from my side to proceed with the review. App ID: com.prestige.Listie Name of app: Listie Shop & Share Please let me know if anything is missing or if I can assist in any way to help complete the review process. Thank you very much for your time and support. Best regards, Filip
0
0
41
4d
Is it safe to manually edit Package.swift (iOS Version & Orientation) for SSC 2026?
Hi everyone, I am working on my submission for the Swift Student Challenge 2026 using a Swift App Playground (.swiftpm). The default project was set to iOS 16, but I manually edited the Package.swift file to change the minimum version to iOS 18.0 so I can use the latest APIs. I also modified the supportedInterfaceOrientations to lock the app to Portrait mode only. I know the file contains a warning saying "Do not edit it by hand," so I am worried about two things: Disqualification: Will manually changing the iOS version from the default 16.0 to 18.0 cause any issues with the submission validator or the judging environment? Orientation: Is it acceptable to strictly force .portrait mode for the challenge, or are we required to support landscape/responsive layouts for the judges' iPads? I want to make sure these manual changes won't technically invalidate my playground. Thanks for your help!
1
0
93
4d
I'm developing a macOS File Provider Extension and encountering a `-2014` (Extension not registered) error when using Testing Mode only.
File Provider Extension Testing Mode -2014 Error Issue I'm developing a macOS File Provider Extension and encountering a -2014 (Extension not registered) error when using Testing Mode only. Environment macOS: 13.0+ Xcode: Latest version Developer Account: Paid Developer Account Extension Type: NSFileProviderReplicatedExtension Current Status App ID Configuration App ID: kr.it.flux.FluxDrive2.FileProvider Capabilities: ✅ com.apple.developer.fileprovider.testing-mode (enabled) ❌ General com.apple.developer.fileprovider (not visible) Extension Configuration NSExtensionPointIdentifier: com.apple.fileprovider NSExtensionPrincipalClass: FluxDrive2FileProvider.FileProviderExtension Code Signing: Valid (Team Identifier verified) Info.plist: Valid Error Message Error Domain=NSFileProviderErrorDomain Code=-2014 The operation couldn't be completed. (NSFileProviderErrorDomain error -2014.) Underlying error: Error Domain=NSFileProviderErrorDomain Code=-2001 Extension cannot be used Attempted Solutions ✅ Verified and corrected Extension Info.plist ✅ Verified Extension code signing ✅ Added App Group (group.kr.it.flux.FluxDrive2) ✅ Clean Build and rebuild ✅ Verified installation in /Applications ❌ Attempted to enable Extension in System Settings (Testing Mode doesn't appear) Observations Extension is not actually loaded (FileProviderExtension.init() is never called) NSFileProviderManager.add(domain) immediately returns -2014 error Extension file is built correctly and included in the app bundle Questions Shouldn't Testing Mode allow testing of File Provider Extension? Why is the -2014 error occurring? The general com.apple.developer.fileprovider capability is not visible in Developer Portal. How can I enable it? Is it normal for Extension not to be registered in the system when using Testing Mode, or are additional settings required? Is the general File Provider capability mandatory for App Store submission? Additional Information Extension code correctly implements NSFileProviderReplicatedExtension protocol All required methods (item, enumerator, fetchContents, etc.) are implemented Network permission (com.apple.security.network.client) is configured Any help would be greatly appreciated!
1
0
46
4d
I'm developing a macOS File Provider Extension and encountering a `-2014` (Extension not registered) error when using Testing Mode only.
File Provider Extension Testing Mode -2014 Error Issue I'm developing a macOS File Provider Extension and encountering a -2014 (Extension not registered) error when using Testing Mode only. Environment macOS: 13.0+ Xcode: Latest version Developer Account: Paid Developer Account Extension Type: NSFileProviderReplicatedExtension Current Status App ID Configuration App ID: kr.it.flux.FluxDrive2.FileProvider Capabilities: ✅ com.apple.developer.fileprovider.testing-mode (enabled) ❌ General com.apple.developer.fileprovider (not visible) Extension Configuration NSExtensionPointIdentifier: com.apple.fileprovider NSExtensionPrincipalClass: FluxDrive2FileProvider.FileProviderExtension Code Signing: Valid (Team Identifier verified) Info.plist: Valid Error Message Error Domain=NSFileProviderErrorDomain Code=-2014 The operation couldn't be completed. (NSFileProviderErrorDomain error -2014.) Underlying error: Error Domain=NSFileProviderErrorDomain Code=-2001 Extension cannot be used Attempted Solutions ✅ Verified and corrected Extension Info.plist ✅ Verified Extension code signing ✅ Added App Group (group.kr.it.flux.FluxDrive2) ✅ Clean Build and rebuild ✅ Verified installation in /Applications ❌ Attempted to enable Extension in System Settings (Testing Mode doesn't appear) Observations Extension is not actually loaded (FileProviderExtension.init() is never called) NSFileProviderManager.add(domain) immediately returns -2014 error Extension file is built correctly and included in the app bundle Questions Shouldn't Testing Mode allow testing of File Provider Extension? Why is the -2014 error occurring? The general com.apple.developer.fileprovider capability is not visible in Developer Portal. How can I enable it? Is it normal for Extension not to be registered in the system when using Testing Mode, or are additional settings required? Is the general File Provider capability mandatory for App Store submission? Additional Information Extension code correctly implements NSFileProviderReplicatedExtension protocol All required methods (item, enumerator, fetchContents, etc.) are implemented Network permission (com.apple.security.network.client) is configured Any help would be greatly appreciated!
1
0
87
4d