Is it allowed to load your own ads in iPhone app? - ios

Is it allowed to load your own ads in iPhone app? I mean, I want to periodically load some ad images from internet to the app, while my user uses it without using iAds network. Is it allowed by Apple? I have read AppStore Review Guidelines and found no restrictions, if the App is not designed only for ads.

Yes, that is allowed and not a subject endangering the Apple approval process.

sure it is.
that's what i do here with my free "lite" app:
http://itunes.apple.com/app/i-love-valmalenco-lite/id459172948?mt=8%20target=
i use an iAd, but when no ads are available (most of the time)
i use my own banner which links to the iStore address of my "fullVersion" app
(so... a very personal ad of my own... but i know of examples apps which use other commercial ads as adsense...)

Yes. You can load other networks ads too if you want. Or just roll your own.
MobClix is good in that it provides a framework that includes iAds.

Related

Is it possible to publish an app containing only a WebView on Appstore?

I want to make an app that will basically load an e-commerce site(Made by me). Is there any possibility to get rejected from the apple review team?
I've seen countless webview apps get published on the App Store. If you provide enough value to your potential users and customers, your app has high changes of getting on the App Store. (But your store should have a top mobile-optimized UI!)
If you want to increase your chances, you use a service like Gonative.io to add even more custom native features (tab bar, side bar, Biometrics etc.)
As stated in App Store review guidelines
4.2 Minimum Functionality
Your app should include features, content, and UI that elevate it beyond a repackaged website.
So answer is yes.

Webviews on iOS

The company, that I work for, wants to develop mobile apps using react native. The idea is to reuse the content on the websites instead of creating native views.
The current decision is to implement the apps like follows:
Create a react native app with bottom navigation and webviews as the
content.
Each time the user clicks on a different section of the
navigation, the webview loads a different page of the website into the web
view.
For example the login functionality will be the login page from the website in a webview.
Is this sort of apps allowed to be published in the appStore? My thinking is that the app will not be allowed because the content of the pages can be changed!
No, you are not allowed to wrap a web app in a WebView and release it apple app store (btw: Google Play may reject your app too eventually).
you can make this if the web app is a small part of your whole app (for example: some food delivery apps use a WebView for chat with support, which is totally acceptable)
4.2 Minimum Functionality
Your app should include features, content, and UI that elevate it beyond a repackaged website. If your app is not particularly useful, unique, or “app-like,” it doesn’t belong on the App Store. If your App doesn’t provide some sort of lasting entertainment value or adequate utility, it may not be accepted. Apps that are simply a song or movie should be submitted to the iTunes Store. Apps that are simply a book or game guide should be submitted to the Apple Books Store.
you may get this rejection letter:
If you develop such an app you will get the following feedback from apple:
We found that the experience your app provides is not sufficiently different from a web browsing experience, as it would be by incorporating native iOS functionality.
While your app content may differ from your web site or other existing sites, the experience it provides does not differ significantly from the general experience of using Safari, as required by the App Store Review Guidelines.
You may wish to provide convenient access to a web property for a select or niche group of users - and may enhance that experience with features such as Push Notifications. However, such apps do not include enough native iOS functionality to be appropriate for the App Store. As an alternative, you may wish to provide instructions to your users on how to create a Safari web clip to add to their iOS device Home Screen. Or, if you would like to share the app with a select group of users, we recommend the Ad Hoc distribution method. See the iOS Provisioning Portal for details on Ad Hoc Distribution.
We encourage you to review your app concept and evaluate whether you can incorporate additional features to enhance the user experience.
As apple guidelines says that:
4.2 Minimum Functionality
Your app should include features, content, and UI that elevate it beyond a repackaged website. If your app is not particularly useful, unique, or “app-like,” it doesn’t belong on the App Store. If your App doesn't provide some sort of lasting entertainment value, or is just plain creepy, it may not be accepted. Apps that are simply a song or movie should be submitted to the iTunes Store. Apps that are simply a book or game guide should be submitted to the iBooks Store.

How can I upload my ios app to apple store?

My iOS app is based on WebView.
I want to register this app to app store.
After submit, I can see this message from support team.
Hello,Thank you for your patience.
Regarding 4.2.0, your app provides a limited user experience as it is not sufficiently different from a mobile website. Specifically, your app does not contain any native iOS features within the app.
To resolve this issue, it would be appropriate to revise your app to provide a more robust user experience by including additional native iOS functionality..
We look forward to reviewing your resubmitted app."
How can I upload my app to app store?
My app is just to show only website on iOS webview. Just a simple app.
Please help me with this problem.
You can't.
I know this isn't the answer you were hoping for, but unless you change your app to significantly use some native iOS features, Apple will continue to decline your app. This is to ensure a minimum level of quality in the apps available. Due to this regulation, WebView-centric apps will not be accepted on the store. Please have a read on the guidelines to help you understand
If you really want to get it up on the store, you will have to add features. Otherwise, there are alternative distribution solutions that don't require publishing to the App store, but more often than not they are for businesses & in-house deployment.

Does this app use the Advertising Identifier (IDFA)? - AdMob 6.8.0

I'm currently uploading my App to the App Store and Apple is asking me if this app users IDFA. I'm using the latest Admob SDK or 6.8.0 and I don't know if it uses IDFA or not, and if it does which check boxes should I hit X.X
Image http://i.gyazo.com/a7d36f95ac0cc066e5654517d4ec2f3f.png
I'm having the same issue here and I was a bit afraid of checking the last box, since I have no idea what the 3rd party SDK will do with the data collected and if they will respect the Limit Ad Settings.
But I found a post by a Google Admob programmer, Eric Leichtenschlag, on their forums:
The Google Mobile Ads SDK and the Google Conversion Tracking SDK utilize Apple's advertising identifier introduced in iOS 6 (IDFA). While each developer is responsible for how they access device data, the SDKs use IDFA under the guidelines laid out in the iOS developer program license agreement, including Limit Ad Tracking.
Including Limit Ad Tracking. This is what the last box is all about. So you must check the that box if you use AdMob. If you use other SDK I strongly recommend checking if they respect the guidelines as well.
Since I run only ads (Google AdMob), I checked the first (Serve ads...) and last box (I, ___, confirm...). App was approved and released, no issues.
Source: https://groups.google.com/forum/#!topic/google-admob-ads-sdk/BsGRSZ-gLmk
If you are lazy to check on each third party SDK if they use or not the IDFA you can use this command:
fgrep -R advertisingIdentifier . (don't forget the dot at the end of the command)
Go to your project/workspace folder and run the command to find which files are using the advertising identifier.
Then you just have to look in the guidelines of those SDKs to see what you need to do about the IDFA.
I recently submitted an app to Apple's App Store. My app was built using iOS 12, Xcode 10, and Swift 4.2. My app uses Google AdMob for the sole purpose of showing Interstitial Ads. When prompted these question, this is what I did:
1) Does this app use the Advertising Identifier (IDFA)? ANSWER: YES
a) Serve advertisements within the app - CHECKED
b) Attribute this app ... - NOT CHECKED
c) Attribute an action ... - NOT CHECKED
I, (my name), confirm that this app ... - CHECKED
My app was accepted and "Ready for Sale" in less than 24 hrs.
You can track all calls to [ASIdentifierManager advertisingIdentifier] with symbolic breakpoint in Xcode:
Yes, it does. From the AdMob page:
The Mobile Ads SDK for iOS utilizes Apple's advertising identifier (IDFA). The SDK uses IDFA under the guidelines laid out in the iOS developer program license agreement. You must ensure you are in compliance with the iOS developer program license agreement policies governing the use of this identifier.
If you have Google analytics or Facebook api in you app, you need to check all of them to make sure it works!
Edit: This is an old answer - see comments or other answers for an exact answer.
In app store connect now if we are using ads in our app then we will answer as yes to Does this app use the Advertising Identifier (IDFA)?
further 3 questions will be asked as
if your using just admob then check the first one and leave other two unchecked. Other two options (2nd , 3rd ) will be checked if your using app flyer to show ads.
all options are explained with detail here
BTW, Yandex Metrica also uses IDFA.
./Pods/YandexMobileMetrica/libYandexMobileMetrica.a
They say on their GitHub page that
"Starting from version 1.6.0 Yandex AppMetrica became also a tracking instrument and uses Apple idfa to attribute installs. Because of that during submitting your application to the AppStore you will be prompted with three checkboxes to state your intentions for idfa usage. As Yandex AppMetrica uses idfa for attributing app installations you need to select Attribute this app installation to a previously served advertisement."
So, I will try to select this checkbox and send my app without actually no any ads in it.
It seems many indie developers like me are desperately looking for an answer to these questions for years. Strangely, even after 5 years this question was asked, it seems the answer to this question is still not clear.
As far as I can see, there is not any official statement in Google AdMob documentation or website about how a developer can safely answer these questions. It seems developers are left on their own in the mystery about answering some legally binding questions about the SDK.
In their support forums they can advice questioners to reach out to Apple Support:
Hi there,
I believe it would be best for you to reach out to Apple Support for
your concern as it tackles with Apple Submission Guidelines rather
than our SDK.
Regards, Joshua Lagonera Mobile Ads SDK Team
Or they can say that it is out of their scope of support:
Hello Robert,
On this forum, we deal with Mobile Ads SDK related technical concerns
only. We would not be able to address you question as this is out of
scope for our team.
Regards, Deepika Uragayala Mobile Ads SDK Team
The only answer I could find from a "Google person" is about the 4th question. It is not in the AdMob forum but in the "Tag Manager" forum but still related. It is like so:
Hi Jorn,
Apple asks you about your use of IDFA when submitting your application
(https://developer.apple.com/Library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/SubmittingTheApp.html).
For an app that doesn't display advertising, but includes the
AdSupport framework for conversion attribution, you would select the
appropriate checkbox(es). In respect to the Limit Ad Tracking
stipulation, all of GTM's tags that utilize IDFA respect the limit ad
tracking stipulations of the SDK.
Thanks,
Eric Burley Google Tag Manager.
Here is an Internet Archive link in case they remove this page.
Lastly, let me mention about AdMob's only statement I've seen about this issue (here is the Internet Archive link):
The Mobile Ads SDK for iOS utilizes Apple's advertising identifier
(IDFA). The SDK uses IDFA under the guidelines laid out in the iOS
developer program license agreement. You must ensure you are in
compliance with the iOS developer program license agreement policies
governing the use of this identifier.
In conclusion, it seems most developers using AdMob simply checks 1st and 4th checkmarks and submit their apps without being completely sure about what Google exactly does in its SDK and without any official information about it. I wish good luck to us all.

How do iphone apps know about other apps?

I recently downloaded an app (Overkill) and they have an in game "virtual currency" called "overkill medals" or "OM". You can use the in-app purchase system to buy more OM, or you can earn it, through their service called "Tapjoy."
Tapjoy (inside the Overkill app) brings up a menu with eligible apps, and a link to the iTunes store to download it and requires you to "download and open" the app in order to earn your OM.
How does this app know that I have downloaded and opened the app, in order to award me the OM?
Edit: It also seems to know when I had the app already
The app is likely checking to see if another app has registered a custom URL scheme, by calling UIApplication canOpenURL, against a list of known schemes dolled out by Tapjoy to each implementor.
The isn't anything within the Apple's iOS SDK that would allow this, so in all likelihood each of these apps is registering with a web service. The server is tracking installation and use of the various apps by relating the unique device id.

Resources