In-App-Purchase: A/B-testing possible/allowed? - in-app-purchase

Is it possible and allowed to have A/B-testing for in-app-purchase for iOS and Android? I heard it's not allowed for iOS but didn't find an official document.
What about Android?

For iOS you can only test in app purchase in sandbox mode.
Now with the latest updates, iOS has launched percentage rollout feature so you can release your feature to partial users and see how your new feature is doing and then rollout to complete set.
And as for android- try going through below link and see if it helps:
https://developer.android.com/distribute/best-practices/develop/in-app-a-b-testing.html

Yes, it is possible to do A/B testing with in-app purchases but you will need to implement some custom code and either roll your own analytics platform or integrate with a third party.
If you are simply testing only the descriptions and or images that are displayed with your in-app purchase you can hard code the different variants on your client or fetch them from your own server instead of using the descriptions stored in iTunes Connect.
If you are experimenting with pricing you will have to create different versions of your in-app purchase in iTunes connect or Google Play and then your client or server can decide which price(s) to display and only show that subset of IAPs.
There are several third party analytics tools that work with iOS and Android that can help you track the performance of the different variants.

Related

How to test Trivial Drive example on a phone

I need to put in-app payments into my app. There are two problem areas at present.
Get the TrivialDrive Example app so I can run it on my phone correctly and recompile and install it easily.
Discover the structure of the TrivialDrive app and pick the parts that are relevant to me.
any help is welcome
Using Android Studio 12.5 and Java
The key feature of testing in-app payments is that, although you need to publish the app in (at least Internal Testing) google Play, you can in fact side-load newer builds directly to your device. So it needs to exist in the Google Play app store but subsequent builds can be tested on your device without uploading it to Play.Google
https://docs.google.com/document/d/1oPHyYYWpcfTyXjideWhicAkd1R1N1OwSsPi1xHILFBM/edit?usp=sharing
This document explains straightforwardly the steps to get to debugging on your phone using logcat.

IDFA not used, do we need to show App Tracking Transparency popup?

Seeking expert advice
I am working on an OTT platform for a client that has iOS and tvOS apps;
I am a bit confused about whether we should show the App Tracking Transparency pop up for this app if we are not using IDFA.
We are using the following analytical tools in our apps.
Firebase Analytics and Crashlytics
Mixpannel
Youbora
I made sure that any SDK is not using IDFA using this method.
Additionally, we send identifiers to large content delivery networks like Akamai to give the users a personalized experience.
When we submitted the tvOS app for the first time, it was rejected for not showing the ATT popup. (Existing iOS app is already showing it)
These are the App Privacy information added by the iOS team in App Store.
I seriously doubt that we don't need to show this popup since we are not using IDFA identifier. Is that correct? We can use these analytical tools and all even if the user denying the tracking option. So if we show this popup unnecessarily, it will create a negative impact on the user experience.

Can we release an update of an iOS app only to some users?

We have an iOS app available on the App Store.
We want to release an update of the app but we want the release to happen in a phase wise manner i.e. the updated app should be available to only 10% of the users initially. After some time, say 1 week, it should get available to 20% more users and so on.
I was told this is possible on Android.
Can it be done for iOS apps as well? I tried to search (including this link as well) but could not get concrete answers.
Thanks in advance!
Unfortunately, we cannot do this in AppStore. If you want to do A/B testing(https://en.wikipedia.org/wiki/A/B_testing), then there are several tools in market to assist you with that. If you want to do beta testing, then TestFlight is the one to go for.
https://itunespartner.apple.com/en/apps/videos#testflight-beta-testing
You can use TestFlight where you send you test subjects the app to their email, and then they open your app with the apple TestFlight app. The limit is 2,000 people I think.
Currently this is possible for both iOS and Android
Apple phased release
If you choose this option, your version update will be released over a 7-day period to a percentage of your users (selected at random by their Apple ID) on iOS with automatic updates turned on. Users are not notified that that they are in a phased release of your app.
Android staged rollouts
You can release an app update to production using a staged rollout. With a staged rollout, your update reaches only a percentage of your users, which you can increase over time.
For (beta) testing there are different options. You could create specific groups within TestFlight and rollout to them or share your app over DIAWI with the people you want to reach. For production - let's say AppStore - it's not possible to do a partial rollout or update cycle.

When publishing an Apple app, can a third party get access before published?

I am publishing my first iOS app to the App Store. However, the company that hired us wants to see the app work before we publish. Is there a way under the $99 developers plan to allow them to see the app work on a real iPhone?
For completeness there is another way. Although I've used TestFlight very happily for years, it can prove to be too complicated for some testers!
If your app has been approved by Apple (but you've set release date in the future), you can give people promo codes (which you can get from iTunesConnect) and they can download the unreleased app. This is great for getting your app to reviewers.
From iOS Developer Library:
Promo codes apply to a specific app version, so when users redeem
promo codes for a version of an app that hasn't been released yet,
they download the prerelease version.
https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/ProvidingPromoCodes.html
Obviously in your case, you probably want to get your client's approval before even submitting to Apple, therefore #Anil's answer is better for you.
This is possible through multiple platforms.
iOS 8
As mentioned above, refer to the following link:
http://blog.thebetafamily.com/2014/09/10/testflight-beta-testing-ios-8/
iOS 7 and below
Test Flight - https://www.testflightapp.com (Acquired by Apple and available on iOS8 as described above)
Hockey App - http://hockeyapp.net
Test Flight is free and simple to use. All you need to do is upload the certificate and it'll take care of the rest. Test Flight used to support other OS like Android. But after the acquisition, I think it only supports iOS.
Hockey App is also simple. But only supports certain numbers of builds or projects for the free version. Hockey App provides direct update during the app launch if a new build has been uploaded.

iOS Development: Updating Free App After Buying

Ok, i don't know how call it but here i'll try to explain it...
I am developing an app and i am almost finished with it, and what i wanted to do is, first upload it as a free app for preview where the user has limited usage of it (like some features are blocked), it has ads that says to buy the full version and when the user bought the full version, it will automatically updates and unlock the other features.
The first thing that comes to my mind is to have 2 different apps the one for free and the other one is the full version and both upload it on the app store, but i saw some application that automatically updates their version after buying the full version.
How will i able to that?
Three words: In. App. Purchases.
StoreKit Framework Reference: http://developer.apple.com/library/mac/documentation/StoreKit/Reference/StoreKit_Collection/_index.html
Full Tutorial: http://troybrant.net/blog/2010/01/in-app-purchases-a-full-walkthrough/
Have fun
You should set up an in app purchase:
http://troybrant.net/blog/2010/01/in-app-purchases-a-full-walkthrough/

Resources