Actually, I have 2 apps : free and paid (pro version).
I would like to migrate my 2 apps to a free app with an in-app-purchases.
Can I save all the people how have paid the pro version in my in-app-purchases ?
What is the best way to do that ?
This has to be handled logically.
1) Simply launch the in- app purchase version of App for everyone.
2) Put a simple check whether user has paid the pro version already (must be somewhere saved on your server side)
If Yes - allow him the in app purchase benefits
Else They will be shown In App purchase options.
What you could do as a workaround is to make an update to the pro version to remove all functionality and use it as a “unlock app” for the pro functions in your free app by checking if the old “pro app” exists for legacy users. This way you don’t have to migrate anything. The old users are this way still able to reinstall the old app and use it as an unlock app. The downside of this is that the old PRO app could still be purchased.
EDIT: This has actually been done before. SD Maid uses this as their main way of getting the pro version of the app.
Link to google play: https://play.google.com/store/apps/details?id=eu.thedarken.sdm&hl=nl
Actually, I have 2 apps : free and paid (pro version). I would like to
migrate my 2 apps to a free app with an in-app-purchases.
Can I save all the people how have paid the pro version in my
in-app-purchases ? What is the best way to do that ?
There are number of ways with prons and cons:
1)You can manage with two app and at Free app show Pro version features and If user want Pro Features then move to play store for download.
So due to this you will no loss Free app users.
2)single app with Pro Version so no need to manage both apps.
Related
I want to know the best scenario about what is happening when we have 2 versions from one application and the user at the first time only will install free version and then if he wants to use the paid features in the app it will automatically redirect user to download paid version and uninstall the free version from device ( automatically ) , this scenario is possible if we want have one version from app at all time in Android and IOS? OR what is the possible scenario in this case?
The most common model for a free/paid version of an app is to have just one app which is free to download, and make premium features available to a user by purchasing the app using In App Purchases.
This allows you to track user statistics and provide updates in just one place.
If you absolutely must have two versions of the app, you can direct the user to the play store to buy the premium version but it will be their responsibility to uninstall the free version if they no longer want it.
I am wondering what is the best way to have two different versions of an android app. I would like to have version of my app with ads and one without ads (the paid one). What is the easiest way to achieve this ? I have found something called version flavours here but since I am new to android development I am not sure if that is what I want. Please any suggestions for addressing this ?
You could have two versions of the application in Play store. However, you would have to maintain these separately and it is frustrating to upgrade from free to paid with this approach. If you chose this way of maintaining your application, you would have to have two projects, one for each version. This would result you into having two copies of almost identical source code.
One approach I've seen people do is that the free version also contains the premium features which are unlocked once the user installs a paid unlocker application from the store. However, this has the same result as the first option: you would have to maintain two applications (this time different, though) and the users would have to install additional software.
The best option is to include the premium version as an in-app purchase. The app would contain all the premium features but would be locked by default. Once the user pays for the in-app product (in this case the premium membership), he would unlock all the features.
You can read more about in-app billing here.
Why not just publish two apps with the free one as this :
MyApp
and the paid one as this:
MyApp(Paid).
And this is how to prepare them:
Get your app working, and add ads and then sign it and generate the apk. Publish it. MyApp.apk
Then go back, and remeove the ads, change the package name, add the Paid to the name, and then sign the apk. MyApp(Paid).apk
Then Publish it.
I'm having two versions of my app. Free and Pro. I'm going to remove the free version and change status of the Pro version from paid to free and use in app billing to unlock advanced features instead of having two different apps. Users already paid should start off with all features enabled.
Is there a way to check if a user has purchased the app after changing it to free?
From what I have read, LVL can't do this.
Is it possible with IAB v3?
There are several postsbelow here on StackOverflow concerning this topic. The short answer is that there's no fool-proof way to do it.
Some possibilities:
Check for some prexisting object exclusively from the Pro Version(db, pref, etc)
This won't work for new devices, only if it's a simple upgrade on an existing install
Use the old Pro app itself as the "key" to unlock(check PackageManager)
Suffers from the same problem as above, and even uglier
Create a unique id for each Pro customer, save it server-side and check on startup
Necessitates internet access for validation, not very secure, users hate data collection
A hybrid of more than one method would probably work best, but it depends highly on the implementation. No matter what you come up with, there will be some issues, and I don't think there's a way to 100% cover every existing customer.
How to migrate from a paid android application to an application paid for with in-app billing?
Converting an Android application from a free/paid model to in-app paid unlocking
Changing paid Android App to free with In App Billing - grandfathering existing customers
How can I use the paid version of my app as a "key" to the free version?
So Ive decided to turn my free app into a paid app, the question I have is how does this affect people who previously downloaded my app, for example If I release an update in the future will the people who already dowloaded the app when it was free have to pay to download the update? this I would like to avoid as I dont want bad ratings in android market, thanks in advance!
Once an app is free on the Android Market it cannot be made a paid app. You can unpublish it, and you can publish the app under a new package name for a fee, but your existing users will not auto-update to it.
#mah is right, though there is a way around that limitation - instead of replacing your free version with a paid version, you could implement in-app purchasing to license the additional functionality. Now, you can have the free, limited version and it is simple for the user to upgrade within the app to the full, paid version.
I have an Android app with free and paid versions, where the free version has a time limit, after which it redirects users to the Market to buy the paid version. The two versions have different package names and are submitted to the Market as separate applications.
However, when users buy the paid version, this doesn't replace the free version - they're left with both versions installed at once. I'd like it to install over the free version. Ideally it would also replace any existing shortcuts on the home screen with shortcuts to the new version, but that's less important.
Is there an elegant way to handle this?
You can't have the free version automatically deleted when a user buys the paid one. Only the user of the device can uninstall applications from the phone, and he must do so manually.
If the two icons thing really bothers you, you could always switch to a free version model only, using in-app billing to unlock features or contents in your app.
A popular way to handle this situation is to only release one fully-functional package.
Put all of the functionality into the "free" version, and then release a "Pro Key" which is just an empty package. Then you can add a function to the free version which checks whether the Pro Key is installed. You can then use this function to selectively unlock certain features of the application.
See How can I use the paid version of my app as a "key" to the free version? and Detect if app was downloaded from Android Market for more info about this process.