I have an Android app on the Play Store, built in Xamarin. I'm going to rewrite using Java and Android Studio - is there anything stopping me from updating/switching language on my already-published app?
You just need to make sure to use:
the same Package Name
the same signature you signed the old one with
a bigger Version Code than the previous one.
Related
I have a "normal" Android app, made in Eclipse/java, published in Play Store, already at version 3.x, all works fine.
Now I am thinking to move the project to Xamarin/c#, and make the 4.0 there.
My question, what should I take care/be aware, that this change should be a natural continuation of the 3.x from Google Play/Users perspective?
So that I could simple upload the APK made by Xamarin to Dev Console as a new version upgrade, and not as a new App.
Like:
Existing signing key should be reused in Xamarin?
Package name (java <> xamarin c#) must be the same?
???
Thanks
There is absolutely no difference for google what language you natively used to write an app. By the way Xamarin will be compiled to java before packaging into apk.
Also Xamarin uses the installed Android SDK and installed Java SDK you have used before to sign the apk and compile the app. It also is going to use same keys so sign the apk.
So no worries, keep same package name and you're good for the update.
Information:
Currently, I have an application on the market that is actively used. Rather than refactor all my code to rebuild the application, I rebuilt the whole application from scratch in a new Android Studio Project with identical/updated information (applicationId/packageId/versions). I want to upload this apk to the google play store to have it update users normally.
Problem:
Testing this situation on my devices hasn't worked. I have a device with the 'old' application on it and I attempt to install the 'new' version and I receive this error during installation: "The package seems to be corrupt"
Question:
Is this process even possible? If so, why might I be getting this error? If not, what is the method by which I could do this?
Thanks!
It is possible as you say, however you need to keep three things in mind:
Package name must be the same
Signing key must be the same
Version number must be higher than last version
Other than that, there should be no problems
You are not going to be able to push the update to the play store with your new project, because the file that you sign the application with (signing key), is associated with your project old SHA 1 and without that file, you cannot push an update.
I suggest you create a new copy of your old project and work there
How can I preserve my android app's code then edit (add features or fix some bugs) to obtain an updated version of the app (ex: v:1.1), so that I can return to my (v1) version of the app if I want so.
I'm using Android Studio.
Thanks in Advance.
Basically you have version code which must be update to upload a new version to the market. You have version name as well which can be anything you want — this is human-readable field.
Versioning docs
I have developed different versions of an android applications and exported them to my phone.I have renamed the different apk files like Myapp1.0.apk,MyApp1.1.apk etc.I have also given different names to all the apps.But whenever I am installing a specific version of the app,the previous version is getting automatically uninstalled.
I am confused what is uninstalling the earlier app version automatically??
Can anybody throw some light on this??
Android works by package name. If you install another app with the same package name, it replaces the previous app with that package name. Its how Android does updates. The name of the apk means nothing.
Also, if you try to install another apk with the same package name signed by a different key, it will fail due to security checks- so if you work with multiple people on the same app, you should share debug keys to prevent having to manually uninstall all the time.
Your package is probably the same in every version. This is what identifies your application in the android system. So the versions you install are just new version of the same app... and if you install a new version android automatically removes the old version.
Hope it helps.
the identity of an android application is it's application package. If you use a same package name then it will replace the existing apps. That's how the update of app works.
If you want to run two instance of same app in a device for some purposes, then just rename the application package and install.
I guess you are using the Same package Name for all the versions and in android you can't install two applications with same package try to change the package name and try to install it again hope this will work....
I am writing some test Android apps using Eclipse. I created my 1st project, a simple hello app, built the apk (app1.apk), and was able to install and run that on an Android tablet.
I then created a new project in eclipse, for a 2nd app. I exported the apk (app2.apk). But, when I try to install this 2nd apk (app2.apk) on the tablet, it warns me that it wants to REPLACE the 1st app.
When I built the apks, I used a different key for app1 vs. app2, and the project and class names are different, so what is it that the Android installer is using that makes it think that both apks are the same app?
Thanks,
Jim
It sounds like you are using the same package name in both apps.