Navigate the App Store landscape. Share strategies for app submission, distribution, marketing, and user acquisition. Discuss best practices for getting your app discovered and downloaded.

General Documentation

Posts under General subtopic

Post

Replies

Boosts

Views

Activity

watchOS architecture requirements
Hi Apple Team, I hope you are doing well. I am reaching out regarding the upcoming watchOS architecture requirements announced in your official communication. According to the notice, beginning April 2026, watchOS apps uploaded to App Store Connect must include the arm64 architecture and be built with the watchOS 26 SDK. zoom current watchOS app, however, only supports arm64_32, and the app size is already over 60 MB in its current form. If we add support for both arm64_32 and arm64, the binary will almost certainly exceed the 75 MB app size limit, and potentially violate the size constraints for each architecture slice as well. This raises practical concerns about how a dual-architecture watchOS app can remain within the required size limits. Could you please advise whether Apple has any recommended approach or best practice for this scenario? For example: Does Apple suggest that developers transition to arm64-only and drop support for arm64_32 devices? Are there any exceptions, additional guidelines, or alternative mechanisms for handling apps that exceed the size limit when including both architectures? Are there recommended techniques specifically for watchOS to reduce binary size when supporting multiple architectures? Any guidance would be greatly appreciated, as we want to ensure our watchOS app remains compliant with the new requirements while continuing to deliver a reliable experience for our users. Thank you very much for your support, and we look forward to your advice.
1
0
68
10h
Apple’s age rating deadline: will apps be blocked after 31 Jan 2026?
Apple sent a final reminder asking developers to complete the updated age rating questions in App Store Connect. Final reminder: Answer the updated age ratings questions. We’re reaching out because you have not provided responses to the updated age ratings questions in the App Information section of your app in App Store Connect. If you don’t answer these questions by January 31, 2026, you won’t be able to submit app updates in App Store Connect. The email says that if the age rating questions are not answered by 31 January 2026, you will not be able to submit app updates. What is not clear is what actually happens after that date. Many of us are in the middle of development and may not be ready to submit a new build before the deadline. The email does not explain whether this means: A) You can still submit updates after 31 January 2026, as long as you complete the age rating questionnaire before submitting, or B) The app becomes locked and cannot be updated at all once the deadline passes This is not stated explicitly in the email, which makes it confusing for me. It would be helpful if Apple could clearly confirm what developers should expect after 31 January 2026, especially for apps that are still undergoing active development. Anyone knows?
0
0
56
12h
App rejected, In-app lost, won't review again because in-app missing
Hi, at first I submitted an app where you asked for a way to review everything while you mentioned a demo mode would be fine. I added a demo mode and submitted the app together with in-app purchases. Now you are asking for an actual API token for an external service which I cannot provide. I responded with the info about the demo mode. The next review was rejected because the in-app purchases are kind of lost. I cannot map them. Next re-submit was rejected because the in-app purchases are missing. The in-app purchases are stuck in a waiting status. Please do whatever you need to do to either release the in-app and let me map them again or map them yourself. Regards, Vitali
0
0
19
17h
Critical Bug: "Session Bleed" during Enrollment - Payment renewed wrong account despite correct UI
I experienced a severe backend session handling error where the payment gateway used a wrong billing token, despite the frontend UI explicitly displaying the current user's details. This resulted in an accidental renewal of a different developer account. The Setup You opened the Developer App and logged in as ____. You filled in your details correctly (Name: AB, Last Name: CD). The screen confirmed this: "You are paying for ____." The Action You pressed the Enroll/Pay button. You approved the payment with your card/UPI. The Invisible Switch (The Bug) At the exact moment you clicked "Pay," the Apple App didn't look at the screen you were seeing. Instead, it looked deep into your phone’s history and said: "Wait, I know this phone! This phone belongs to an old account that already has a membership. I'll just renew that one." The Result The system took your money and sent it to the Old Account it remembered from history, completely ignoring the New Account (____) that was right there on the screen. The Outcome New Account (____): Still says "Pending" because it never got the money. Old Account: Got renewed instantly because the system prioritized the "device history" over the "logged-in user." It was a bait-and-switch by the app. You clicked "Pay" for AB, but the wire connected to Old Friend.
1
0
23
18h
How to properly use PermissionKit to ask permission
For testing permission response we can use the sandbox account However, when testing permission requests using the AskCenter API, none of the ask API works for me in xcode 26.2 rc and iOS 26.2 rc. For SignificantAppUpdateTopic, I got errors like "The user is in a region that does not support this type of ask" in the console log, but I've already set my billing address to Texas. For CommunicationTopic, the console shows several XPC-related errors, and I’m not sure which of them are relevant. Both of them show an alert view of "Can't ask, An unknown error occurred" Can someone help to guide us how to test the request flow? Thanks
6
1
275
18h
How can I prevent Intel‑based Macs from downloading my app?
We have initiated the development of a new application, which is exclusively compatible with Apple silicon chips. As our application utilizes artificial intelligence, it is not operational on Intel-based systems due to specific technical constraints. Using the Transporter app, we tried to submit a package that only supports arm64 but we received the following message: "Validation failed (409) Invalid bundle. The “live-mac.moises.ai.pkg/Payload/Moises Live.app” bundle supports arm64 but not Intel-based Mac computers. Your build must include the x86_64 architecture to support Intel-based Mac computers. For details, view: https://developer.apple.com/documentation/xcode/building_a_universal_macos_binary. (ID: 8b93f8c7-ac3d-4665-934a-e1a81832cc18)" Upon reviewing your documentation, I noticed that: "To only support Macs with Apple silicon, your application must require a minimum OS version of macOS Monterey 12 or later and must never have supported Intel-based Macs." Given that we launched a universal package as our initial version, I would like to inquire if there are any alternative approaches that would allow us to limit the distribution of this application to exclude Intel chips.
0
0
25
21h
Questions about SignificantAppChangeApprovalRequired and detecting significant app changes
#1) The docs for the significantAppChangeApprovalRequired option (https://developer.apple.com/documentation/declaredagerange/agerangeservice/parentalcontrols/significantappchangeapprovalrequired) are a bit unclear of the meaning. If this is set to true, does that mean (a) its an indication from Apple that the user is in a jurisdiction that requires approvals for significant app changes or (b) the App store has detected a significant app change and the app needs to use PermissionKit to re-obtain approval. #2) In section Sec.A121.053 of SB2420, it states "The developer of a software application shall provide notice to each app store through which the developer makes the software application available before making any significant change..." and there are several subsections that define what constitutes a signficant app change that include items like "change of personal data stored", etc. How can developers notify the app store that a significant change has occurred and how can the app then query the app store to detect these changes?
1
8
170
1d
DeclaredAgeRange framework new cases and properties cause runtime crash with missing symbol
I'm making a wrapper library to abstract away some of the 'missing platform support' of DeclaredAgeRange until hopefully it expands to additional platforms. When I'm trying to fully enumerate all of the cases of AgeRangeDeclaration, which they all state available starting 26.0 (mysteriously added in Xcode 26.2 beta), the app crashes due to a missing symbol at launch time. This happens both for Xcode 26.1, 26.2 beta 2, and matching Xcode Cloud builds. So I've isolated it beyond "doesn't work on my machine". I just made a handful of crashes and attached a sysdiagnose to a fresh feedback. FB21121092 - DeclaredAgeRange: Eligibility property and new declaration cases unavailable on iOS 26.1 device contradicting documentation - causes runtime symbol not found crash If anyone is curious what these crashes look like I've attached the DiagnosticPayload.jsonRepresentation() generated from one of my favorite frameworks, MetricKit. Very clearly articulated in the diagnostic metadata you can see the symbol not found. "diagnosticMetaData" : { "platformArchitecture" : "arm64e", "terminationReason" : "Symbol not found: _$s16DeclaredAgeRange0bC7ServiceV0bC11DeclarationO14paymentCheckedyA2EmFWC\nReferenced from: <1894EDCB-3263-3604-8938-97D465FF3720> \/Volumes\/VOLUME\/*\/PerformanceOrganizer.app\/PerformanceOrganizer\nExpected in: <B8FD2C23-0CC9-3D94-902D-875900307A7A> \/System\/Library\/Frameworks\/DeclaredAgeRange.framework\/DeclaredAgeRange", "exceptionType" : 10, "appBuildVersion" : "745", "isTestFlightApp" : true, "osVersion" : "iPhone OS 26.1 (23B85)", "bundleIdentifier" : "dev.twincitiesapp.performanceorganizer", "deviceType" : "iPhone18,1", "exceptionCode" : 0, "signal" : 6, "regionFormat" : "US", "appVersion" : "2.0.0", "pid" : 22987, "lowPowerModeEnabled" : false } DiagnosticPayload.json This is the offending code in a type I control and make available on other platforms but leave unused. extension AgeRangeDeclaration { // A factory or initializer that takes the AgeRangeService.AgeRangeDeclaration and maps to the common AgeRangeDeclaration type public init?(platform value: AgeRangeService.AgeRangeDeclaration?) { guard let value else { return nil } switch value { // Xcode 26.1 visible cases case .selfDeclared: self = .selfDeclared case .guardianDeclared: self = .guardianDeclared // Xcode 26.2 visible cases // This is the first culprit, all of the following symbols would crash, this is just the first case .checkedByOtherMethod: self = .checkedByOtherMethod case .guardianCheckedByOtherMethod: self = .guardianCheckedByOtherMethod case .governmentIDChecked: self = .governmentIDChecked case .guardianGovernmentIDChecked: self = .guardianGovernmentIDChecked case .paymentChecked: self = .paymentChecked case .guardianPaymentChecked: self = .guardianPaymentChecked @unknown default: // Apple added new cases in Xcode 26.2 betas that were available in iOS 26.0, // so it is probable that this could happen again. If it does, assert to let developers // bring it to my attention. assertionFailure("Invalid or out of date knowledge of age range declaration \(value)") self = .unknown } } } For what it is worth, the same is also true for isEligibleForAgeFeatures which I suspect was also added to Xcode 26.2 somehow but not made available to real devices running [26.0 - 26.2). As a side note, thank you for this property, it will let me check what states I need to perform extra checks for in a clean way, I just will need it to now not crash my app on 26.0 and 26.1 runtime devices. :) Edit: DTS did confirm on a comment I had in another thread that this is a bug. Now just to wait for an Xcode beta update. https://developer.apple.com/forums/thread/807906?answerId=867205022#867205022 In any case, this is a great example of how MetricKit totally rocks capturing things other off the shelf crash tools might not have a chance to get. I did have to roll back my TestFlight to an earlier build, but MetricKit was there to send me the previous crashes as soon as the app could launch. Thanks MetricKit team!
4
1
623
1d
Final reminder: Answer the updated age ratings questions.( WHICH EMAIL IS IT?)
Hello recevied this email: Hello, We’re reaching out because you have not provided responses to the updated age ratings questions in the App Information section of your app in App Store Connect. If you don’t answer these questions by January 31, 2026, you won’t be able to submit app updates in App Store Connect. These new questions cover: In-app controls. Capabilities. Medical or wellness topics. Violent themes in your app or game. Your answers to these questions will help ensure the correct rating is assigned and help you deliver an age-appropriate experience. Learn more about age ratings values and definitions Learn how to set your app rating As a reminder, we’ve updated the age rating system for apps and games in order to provide people with more granular age ratings and categories. You can view the age rating for each of your apps under the updated system and respond to the new questions in the App Information section of your app in App Store Connect. The updated age rating system adds 13+, 16+, and 18+ to the existing 4+ and 9+ ratings. Age ratings are assigned to each country or region and may vary based on region-specific suitability standards. These changes will be reflected on Apple devices running a minimum of iOS 26, iPadOS 26, macOS Tahoe 26, tvOS 26, visionOS 26, and watchOS 26. Please also note that the Texas SB2420 legislation goes into effect January 1, 2026. Under this law, making an age rating change to apps distributed in Texas would be considered a significant change. If you update your age rating after this date, you may need to trigger the significant change consent process. If you have any questions, please contact us. The Apple Developer Relations Team I don't even know which app they are talking about? No notification about this inside apple developer account /console stuff? What am I supposed to do? Someone on reddit saying you need to make new release and redo the age thing but what if you have 10 apps? Anyway,WHAT APP IS IT? what is this GENERAL EMAIL? Should we ignore it?
2
0
184
1d
Strategies for Age Assurance using DeclaredAgeRange when installed via MDM
I develop and maintain an app for craft breweries. It is very clearly 18+ due to frequent references of alcohol. Integrating DeclaredAgeRange is pretty straightforward, I should ask for the age signal, and check / require the user to be 18+ to align with my app terms of service. Under the limit, user declined, and unavailable, YOU SHALL NOT PASS. The moment that I introduce the concept of having an 'admin' or 'brewery mode' of that same public app, things break down. Why? Because I would be enabling this brewery or admin mode to run when the app is installed via MDM, and configured via MDM. The downside of this strategy is that Business Essentials for as long as it has listed, has not supported app-based configuration. Neither the legacy configuration, nor the new ManagedApp framework configuration. FB19980558 - Business Essentials: Add Support for Managed App Configuration (via UserDefaults) and newer Managed App Framework (August 2025) FB13398533 - Business Essentials: Add ability to send managed application configuration to an application installed via Apple Small Business Essentials app (November 2023) FB9967549 - Business Essentials: Add ability to send MDM Configuration payload to MDM managed applications (March 2022) There is a real integration issue when trying to use a public app on MDM devices. Making a fully custom app distribution is an option, then don't do Age Assurance in it, but, that doesn't seem to fit with the new regional requirements because even a Custom App is still distributed using App Store technologies and I don't want to argue semantics and play it safe, and a custom app also introduces additional friction for B2B customers that can't just find it on the App Store to buy licenses for the app. In the context of the app being installed via MDM, the user's age range might not be available, after all the device could be 'supervised' and considered company owned--the user might not even be able to sign in. I could be a warehouse iPad shared amongst workers and not really have a singular 'identity'. I'd like Apple to provide a mechanism to enable developers to make apps that do age assurance for standard downloads via DeclaredAgeRange API as it exists today, and, add support for these MDM based installs. I will assume that the App Configuration solution is out of the picture due to the lack of adoption by MDM vendors, including Business Essentials. So the next best thing would be a configuration profile, either a new restriction, or new enablement, that tells the DeclaredAgeRange system missing details. I can't just assume that if I can detect installed via MDM that it is enough and to allow the user to pass when the age signal comes up as notAvailable. I need to go further because of Apple School Manager. With respect to DeclaredAgeRange and MDM I see these scenarios: Installed via Apple School Manager MDM for K-12 - Minor (student) Installed via Apple School Manager MDM for K-12 - Adult (instructor, older student) Installed via Apple School Manager MDM for College - Minor / Adult (student) Installed via Apple School Manager MDM for College - Adult (student | instructor) Then the business side Installed via Apple Business Manager MDM - Adult (employee) Installed via Apple Business Manager MDM - Minor (younger worker, 16+?) In my particular instance, 18+ app with a hard 'you need to be 18' requirement, I'd only want to allow a pass through and more or less 'AgeRangeDeclaration.verifiedByMDM' or something to that nature. I think that Age Assurance should be built into the platform to support ABM and ASM use cases. Assuming that a personal Apple Account can be used by DeclaredAgeRange API when installed via MDM (user-enrolled or supervised), the argument can easily be made to 'just have the user sign in with a personal account'. But for several reasons this won't be feasible at all times. Either due to device restrictions, or a supervised device is shared amongst employees (brewery warehouse / inventory). FB21340165 - DeclaredAgeRange: Add mechanism to determine that no signal is available due to mdm-based install
0
0
42
1d
Promo code for Watch-only IAP failing
Hi, I have an "Apple Watch Only" app that you can download for free and conduct a 7 day trial. After that, there is an IAP to unlock a lifetime license. For the life of me I can't find out how the process of redeeming promo codes for the IAP should work. Once generated, people try to redeem them in the AppStore (on their phone), but then they end up in a hanging process saying it's reinstalling the app to redeem the offer. But then nothing happens. Also running "Restore Purchase" within the app to pickup any maybe by now activated license is not working. Why does it even want to reinstall the (free) app? This doesn't sound right. Does anyone have IAP for a watch-only app and can shed some light on the promo code topic?
0
0
29
1d
Cannot Update Age Rating
Recently I got an email stating I need to update age rating questionnaire. I have tried to update age rating for my app in App Store using the account owner already. I have followed this tutorial (https://developer.apple.com/help/app-store-connect/manage-app-information/set-an-app-age-rating/), but the age rating cannot be updated. Anyone know how to update this, please let me know
23
5
2.2k
3d
Apple's new Age Ratings: do I have to submit a new binary?
I have 2 apps. I do not want to update the binaries as we are doing overhauling in the meantime. I actually attended to these issues a couple of months back when I received the first notification and thought everything was ok until we received the final reminder email hours ago. I have two apps: app_1: the age rating was auto computed in August 2025 with no missing fields and the new age rating is in line with our expectations, so I just left it as it is app_2: the age rating had some missing answers, and I was unable to input anything so I created a new release and then updated the age ratings. the app is now in "pending submission" stage but the age ratings have been updated. I did not submit the release for review. !!! in both cases, the updated age ratings are updated & LIVE for both our apps and can be seen in our appstore listings !!! but I still get the final reminder email anyway. Q1) should I do anything? Q2) anyone else in the same boat (not keen to submit a new binary for review)? We really are in the middle of some changes and can't submit a new build now Q3) what happens after 31 Jan 2026? Can we still submit a new release with the latest age rating questions? Or totally can't update anymore?
5
1
574
3d
What happens if I dont't answer age rating questions before January 31?
I just got a warning about age rating questions. It says that: "If you don’t answer these questions by January 31, 2026, you won’t be able to submit app updates in App Store Connect". Hope someone can clarify what this actually means. Let's say I forget to answer these questions for one of my apps before this date: Will I be unable to submit updates in general, i.e. for all my apps? Will this app be blocked forever or will I be able to submit a new version once I have answered them?
0
0
50
4d
Age Rating Confirmation Completed but Email Warning Still Appears
Hello, We have completed the Age Rating confirmation form and submitted it successfully. Additionally, we increased the app version, rebuilt, and uploaded a new build as recommended. However, we still received the email stating that “Your app requires additional information”. Could you please confirm whether any further action is required on our side, or if this is a known issue on App Store Connect? Thank you.
0
0
22
4d
Clarification Needed Regarding App Ownership Documentation for SaaS Platform Apps
Hello, Our company (ORDER SYSTEMS FOR COMMUNICATIONS AND INFORMATION TECHNOLOGY CO.) is a SaaS provider. We develop apps for clients, but we are not the owner of the business (جباتي وكرك | Chapati & Karak). We already submitted an official authorization letter, fully signed and stamped by the business owner, confirming our permission to build and publish the app — but it was still rejected. The client does not have an Apple Developer account, which is why we are submitting the app on their behalf through our platform. Could you please clarify: What exact documentation is required in this SaaS case? Is a signed and stamped authorization letter never acceptable? Do you require the client to open their own Apple Developer account even though they are using a SaaS system? Thank you.
1
0
24
4d