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

Post

Replies

Boosts

Views

Activity

My App does not show up in search results using keywords
When I search for "recipes", my app should come up, but it doesn't show in the list anywhere. I've tried a bunch of different keywords and even put 'recipes' in the title-still nothing. It's not even last in the list when I scroll through the 50+ recipe apps... I can type in the name of my app (morphood) and it finds it, but how is that useful? I am trying to get new people to find my app who are looking for "AI, Recipes, Ingredients, Nutrition, Cooking, Diet, Food, Health, Keto, Gluten-Free, Vegan, Compare" If you know the name of the app, then you already know about it.... Any help would be appreciated
4
0
229
Apr ’24
App rejected for 1.4.0 Safety: Physical Harm
Hi, I developped an app which is an alcohol level calculator (cf image for few screens). I did lots of modification to the app is accepted, but none works. I also asked to the verification team, but they can't help me more. However similar app already exists like https://apps.apple.com/fr/app/alcootel-by-maaf/id6444157056 or https://apps.apple.com/fr/app/%C3%A9thylom%C3%A8tre/id688242393. I even copy the description of the first app. So, could you help me about what I can change in order to the app is validated, or do the new rules make my app "out of the Apple laws". Thank you
0
0
259
Apr ’24
CopyCat Rejection - Which documents are necessary to prove that the app belongs to me and how?
This app or its metadata appears to be misrepresenting itself as another popular app or game already available on the App Store, from a developer's website or distribution source, or from a third-party platform. Apps should be unique and should not attempt to deceive users into thinking they are downloading something they are not.... For the past four years, my app has been live on the Play Store and is also accessible on several other platforms. Despite this, my attempts to publish it on the App Store have been consistently rejected citing Guideline 4.1 - Design - Copycats. Apple has not specified the exact proof of rights they are looking for. To address this, I have recorded my personal Google Play Developer Console account to showcase that I possess all the required rights to manage the app on Google Play. I am seeking advice on the best course of action to resolve this issue.
1
0
253
Apr ’24
Explicitly Loading Third Party Dylibs Without Violating App Store Connect Policies
I am trying to build a Swift app for iOS which depends on an open-source API called BrainFlow. BrainFlow is written in C++. Due to App Store restrictions, the API must be built by hand into a framework so that it can be signed with my developer certificate. So that's what I did. I now have a signed framework that I can embed in my app and that Apple is OK with. BrainFlow depends on a third-party library called SimpleBLE, an open-source API for connecting to BLE devices. So I built that too into its own signed framework. So far so good. The problem comes when my app tries to connect to a BLE device via BrainFlow. BrainFlow is designed to explicitly load its third-party libs like plug-ins, and it is hardcoded to assume that all dylibs are located in the same directory. However, when I build the BrainFlow framework so that it embeds the SimpleBLE dylib in the same directory as the BrainFlow dylib, App Store Connect rejects my app due to a policy violation. One solution might be to query dyld and have it return the resolved location of the SimpleBLE dylib. For example if the dylib is referenced as @rpath/libsimpleble-c.dylib, then the query would return its full path after resolving @rpath. I do not know how to do that or even if it's possible. Another solution might be to embed the SimpleBLE dylib into the BrainFlow framework in such a way that it does not violate App Store policy. Again I am unable to figure out how to do that or even if it is possible. The relevant BrainFlow code can be found in the init_dll_loader() function of the following code: https://github.com/brainflow-dev/brainflow/blob/master/src/board_controller/ble_lib_board.cpp That function calls DLLLoader(), which can be found here: https://github.com/brainflow-dev/brainflow/blob/master/src/utils/inc/runtime_dll_loader.h Thanks in advance for your thoughtful suggestions and comments.
1
0
272
Apr ’24
Best practices for determining a user's country in a React Native financial app for fraud prevention
We are developing a mobile app for our financial institution using React Native. As part of our fraud prevention measures, we need to determine the country a user is located in. However, we have noticed that the permission requests seem excessive for our requirements, especially since we only need this information if a user changes countries. Also, is there a way to only be notified when a user changes countries? Our primary goal is to identify the user's country without requesting unnecessary permissions or compromising the user experience. We want to avoid requesting location permissions if possible, as it may raise concerns among our users. What are the best practices and recommended approaches for financial institutions to determine a user's country in a React Native app, while minimizing the use of sensitive permissions? Are there any iOS-specific APIs, frameworks, or third-party libraries that can help us achieve this in a privacy-friendly manner? We would greatly appreciate any guidance, insights, or examples from the developer community to help us strike the right balance between security and user privacy. Thank you in advance for your assistance!
0
0
293
Apr ’24
Disappearing empty Smart App Banner
We are trying to add the Smart App Banner to our website to promote the app, but the banner is not shown. When the page loads, there is a flash of an empty Smart App Banner before it is automatically dismissed. If I put use an app ID of other apps the banner appears. I've triple checked that I'm using the correct app ID. So it seems like it is an issue with my app. I can see my app in the App Store, so I know it's available. I've tested on multiple phones. App ID: 413258417 App Url: https://apps.apple.com/us/app/gnc-livewell/id413258417 Below is the tag used to display banner: - When the page loads, there is a flash of an empty Smart App Banner before it is automatically dismissed. When i use other APP id for ex: Reddit - Banner appears
0
0
237
Apr ’24
Invalid Binary, no reason given
I have uploaded 5 binaries to the app store, intending to publish it, not to test it. Every time I do, the builds appear inside TestFlight marked as “invalid binary”. Why do they appear on TestFlight is a mystery... I have uploaded it by two methods, Xcode and xcrun altool. The app passes the validation. No reason is given, no email received from Apple. I have contacted Apple two days ago, and as expected, no answer. How can I discover what is going on?
2
0
323
Apr ’24
Privacy Manifests: Incorrect "Missing API Declaration" error
I received an email from Apple saying my app is using the following privacy-restricted APIs without an API declaration. NSPrivacyAccessedAPICategoryUserDefaults NSPrivacyAccessedAPICategoryFileTimestamp NSPrivacyAccessedAPICategorySystemBootTime It's true, my app is using those features, in multiple pods that I depend on. For example, my app depends on the FBAudienceNetwork cocoapod, and I've upgraded it to version 6.15.0, which added a privacy manifest specifically to ensure that Apple wouldn't flag my app with an error. https://developers.facebook.com/docs/audience-network/setting-up/platform-setup/ios/changelog/ I can see its privacy manifest explicitly covers these APIs, below: <?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>NSPrivacyTrackingDomains</key> <array> <string>ep1.facebook.com</string> <string>ep6.facebook.com</string> </array> <key>NSPrivacyCollectedDataTypes</key> <array> <dict> <key>NSPrivacyCollectedDataType</key> <string>NSPrivacyCollectedDataTypeAdvertisingData</string> <key>NSPrivacyCollectedDataTypeLinked</key> <true/> <key>NSPrivacyCollectedDataTypeTracking</key> <true/> <key>NSPrivacyCollectedDataTypePurposes</key> <array> <string>NSPrivacyCollectedDataTypePurposeThirdPartyAdvertising</string> <string>NSPrivacyCollectedDataTypePurposeAnalytics</string> </array> </dict> <dict> <key>NSPrivacyCollectedDataType</key> <string>NSPrivacyCollectedDataTypeDeviceID</string> <key>NSPrivacyCollectedDataTypeLinked</key> <true/> <key>NSPrivacyCollectedDataTypeTracking</key> <true/> <key>NSPrivacyCollectedDataTypePurposes</key> <array> <string>NSPrivacyCollectedDataTypePurposeThirdPartyAdvertising</string> </array> </dict> </array> <key>NSPrivacyAccessedAPITypes</key> <array> <dict> <key>NSPrivacyAccessedAPIType</key> <string>NSPrivacyAccessedAPICategoryUserDefaults</string> <key>NSPrivacyAccessedAPITypeReasons</key> <array> <string>CA92.1</string> </array> </dict> <dict> <key>NSPrivacyAccessedAPIType</key> <string>NSPrivacyAccessedAPICategorySystemBootTime</string> <key>NSPrivacyAccessedAPITypeReasons</key> <array> <string>35F9.1</string> </array> </dict> <dict> <key>NSPrivacyAccessedAPIType</key> <string>NSPrivacyAccessedAPICategoryFileTimestamp</string> <key>NSPrivacyAccessedAPITypeReasons</key> <array> <string>C617.1</string> </array> </dict> </array> <key>NSPrivacyTracking</key> <true/> </dict> </plist> So, why is Apple flagging my app with "Missing API Declaration" errors? The API declaration is right there. What am I still missing?
1
0
574
Apr ’24
My app was reject because "Strings propurse"
Hello community, This is my first application that I try to publish, however my app has been rejected several times due to issues with the "purpose strings". I have already made several modifications to the texts but even so the app continues to be rejected, add the permissions in the infoPlist and texts, but they keep rejecting me, could someone advise me to comply with this requirement and publish my app. Apple sends me these comments Issue Description One or more purpose strings in the app do not sufficiently explain the use of protected resources. Purpose strings must clearly and completely describe the app's use of data and, in most cases, provide an example of how the data will be used. Examples of unclear purpose strings: "App would like to access your Contacts" "App needs microphone access" Next Steps Update the location and AppTrackingTransparency framework purpose string to explain how the app will use the requested information and provide an example of how the data will be used. See the attached screenshot. Thanks !!!
2
0
1k
Apr ’24
Creating identical app as app I own for the purpose of white-labeling it
I'm working with a business who is now offering to white label their service. This will greatly benefit me and the other clients they have. Currently, they have an app that allows us to communicate with their AI directly from our phones. Now that they are offering to us to white label their services to clients of our own, we would like to white label their app as well. The developer said that he doesn't want to fight with the Apple App Review Dept. because they reject apps that are too similar. Here is my suggestion: Since there will only need to be one more app added (we will all use the same "gray-label" nondescript app), there will only be two similar apps on the App store. That's hardly spamming. We don't need to create branded apps for each of us. We all simply want to be able to use the same gray-labeled, nondescript app instead of our partner's branded app. For example: His app is App_A. We want him to create an App_B that is not branded to his or our stores, but is generic enough that we can use it with our own clients. I've read the documentation (https://developer.apple.com/app-store/review/guidelines/#minimum-functionality) and many of the forums. But to be honest, it seems that the Apple App Review team arbitrarily chooses apps to approve and others to reject. Sometimes a simple icon change and the Review Team accepts. Other times, it's rejected. It doesn't seem like there is a clear distinction between who gets accepted or rejected. Still the solution which is offered by Apple App Review is to put all the apps into a container. This is not a solution as we need to direct our customers to our app, and our partner will not want to put his app into a container to share with other apps. I would like to work with someone to help push this gray-label app through. We only need one similar, gray-labeled app so that we don't have to use our partner's branded app. That will add much functionality to our offers. Plus, it will not be spam or clutter because our partner will continue to direct their clientele to their branded app, App_A, and we will all direct our clientele to the gray-label app, App_B. So there will be no confusion. I've heard of other solutions such as obfuscating the code or opening up a new developer account, as well. If there is anyway to work with a single person to help this project get pushed through, that would be very appreciated.
0
0
247
Apr ’24
Question about tracking domains
We have a question about tracking domains: If we found a tracking domain in our app(eg."example.tracking.com"), but not put it into the PrivacyInfo.xcprivacy -> tracking domain list (refer to https://developer.apple.com/documentation/bundleresources/privacy_manifest_files), will iOS auto block the connection of this domain even when the tracking permission is granted? At the current time, the answer seems to be NO, but we are not sure about the situation in the future. Add this is the test result: tracking domains added + tracking permission granted -> not blocked tracking domains added + tracking permission not granted -> blocked tracking domains not added + tracking permission granted -> not blocked tracking domains not added + tracking permission not granted -> not blocked So it there any suggestion about the question? Thanks!
0
0
392
Apr ’24
Is it possible to use App Store Server API for getting transaction info in PHP
I am trying to call Get Transaction Info inApps/v1/transactions/{transactionId} from PHP server but it always send me back 404 transactions not found, I receive the transactionId from the app/client when the frontend developer extract the transactionId from the Recipe. I have generated a good JWT it work with the other endoints such as making some product reads. I didn't configured server url as I will not use the notification.
2
0
313
Apr ’24
Anti-Piracy measures for Mac App Store apps?
As an indy developer, it's prohibitive to start developing backend receipt validation services. Is there anything else in Apple's technologies that we can use to verify whether the person who is using my app, has paid for it? The first thing I thought of when Apple rolled out Sign in with Apple ID, was hopefully, it would include some API that would allow me to ask a simply question: did this Apple ID pay for my app? As an indy developer, this is the one feature that would keep my paid app on the Mac App Store. Anyone have any good suggestions for solving this as an indy developer?
7
0
571
Apr ’24