I have developed and released an app on the Android Market.
I compiled the release, signed and zipaligned with Eclipse ADT export.
This process created a Keystore for me in the wizard.
The steps i took are detailed in the Android dev guide.
I want to know, Where does the newly created keystore reside? I want to take it and reuse on another project but i am not sure where i can find it.
I thought it would be named something like my-release-key.keystore but i cant find it.
Sorry if this comes out as a dumb question but i am quite new to this and is a wearied thing to get stuck on.
Edit:
I used the Eclipse ADT Wizard and in there i entered the location as follows...
I am developing on a Mac and a very new mac user. I just dont know where this file has been placed. It i not in the project folder or the "cd /" location.
Thanks
OK, I found out the Eclipse ADT on Mac OS X saves keystores by default in Eclipse.app/Contents/Mac OS :-(
When using eclipse wizard you can explicitly set keystore destination folder. But if you didn't do it (in your case), eclipse will save new key in your home directory.
You should manually create it with keytool. This step described in Obtain a suitable private key part of the guide.
Basically in windows(Checked in Window 7) the release_kestore stores by default in C:\Users\xyz\release_keystore. Then we have to move it to our comfortable place.
Related
I'm developing some changes for an app. It worked properly and compile fine before I configured a VPN (I think this may be related to the problem). Since that the aplication compiles fine but I can't update from previous versions to the new one (let's say from 1.0.0 to 1.0.1), an error message says "The package appears to be corrupt". The version number and code are updated.
I've found this, but it doesn't fix my problem: I've compiled in release and debbug.
It's documentated that the problem is related with the signing of an app in Xamarin because I can install the apk from scracth without updating, I've loaded the keystore again, check the path %AppLocalData%, configure again the path manually... nothing. Besides, the 'debbug.keystore' file doesn't open when the app is compiled, nevertheless it's open when I use the command in the document to load it again. I don't know if it should open, just saying. The key file is the same, nothing else changed.
Thank you for your help!
The debug.keystore is as the name suggests, only for debugging. It will differ between different machines you install Visual Studio.
Make your own keystore and save it somewhere secure. Especially if you plan to release the App in Play Store. If you misplace it, you will have a bunch of issues.
Creating your own keystore will also ensure the same and correct signature every time, and you can configure your project to use your own keystore instead of the debug.keystore that Xamarin.Android defaults to.
I made everything above again and it worked, not sure what was wrong. For those of you that may have a similar problem that's what I tried:
Check your keystore (it must be the same for different compilations) and store in a safe place as Cheesebaron says.
Check you have well configured the path for your keystore.
You may have a wrong enviroment variable if the step above fails (i.e. %AppLocalData% pointing to other location).
Check your version number. The number for a version must be higher than previous versions, you may use YYMMddXX (XX for differnet compilations in the same day)
If you altern to compile in release/debug, make sure your code doesn't affect the path to the keystore
i want to move my android studio project to another pc but when im moving files from pc one to pc two and i'm trying to run the same app it's not launching and asking to remove old(the same package) app, but i want to save app signature how can i do it? for example i want to work at home, after i'm going to work and continue my project at work is it possible and how? and yes, sorry for my bad english...
image
but i want to save app signature how can i do it?
Each Android Studio installation will generate its own debug keystore for signing a debug apk. Quoting from the documentation on app signing:
"The first time you run or debug your project in Android Studio, the IDE automatically creates the debug keystore and certificate in $HOME/.android/debug.keystore, and sets the keystore and key passwords."
Apps signed with a different debug key are perceived to be different apps. So you need to copy one of the debug keystores to the $HOME/.android/ folder on the other development machine.
Download GitHub desktop and sign up. Then create repository and push project in repository. At the work in Android Studio go to File -> New -> Import Project and past a link to created repository.
https://desktop.github.com/
To see how to transfer the debug.keystore that is required so you don't get the message "The device already has an application with the same application but a different signature. In order to proceed you will have to uninstall the existing application." (and lose your data). See Update the app in another machine with same debug.keystore in android
I'm re taking some old app that has been in the Play Store for more than 5 years. However now that all my code is migrated to AST, everything is working and I'm ready to make a new update, I've come to realize that the key for signing the app has a diferent extension name. Now Android Studio ask for a file .jks but my old app used to use a .key file. I haven't find anything online.
The same file will work for Android Studio
for anyone possibly still struggling with this topic-
You may have forgotten the .jks file of that project.
Search for .jks files in File explorer.
Connect it to your project.
I have a slightly embarrassing problem:
I have an Android app on the store for which I'd like to push an update. My problem is that I've changed computers and now I can't find the keystore used to sign the App.
I most certainly have the file (and private key) as I have a full backup, but my problem is that I can't find the file in it (and cannot remember what I've named it in the first place).
What I would like to know is how I can track this file, either through some fulltext search for headers or by checking the (old) eclipse and/or android configuration files for a path to the file (since it Eclipse had already the path to the keystore everytime i built, it must be saved somewhere...)
I'm using Mac OS X (at the time, Snow Leopard)...
Thank you all for you time
EDIT:
I've partially answered my own question: Couldn't find the config file where Eclipse ADT caches the keystore path, but found out the Eclipse ADT on Mac OS X saves keystores by default in Eclipse.app/Contents/Mac OS (yes, inside the .app package) ... probably a oversight regarding "current directory", but silly nonetheless...
its may in
C:\Users\nainit\.android
I'm surprisingly frustrated by this, and I suspect the answer is simple.
I have compiled and signed my android app using the Export Wizard, as described here in the section 'Compile and sign with Eclipse ADT'.
I would like to backup the keystore and have it handy for future app updates, but I can't figure out for the life of me where the keystore is saved. I of course can use Eclipse to go through the process, but if something happens to my computer I'll be pretty screwed.
Does anyone know where it is stored?
I just spent a lot of time on this very annoying problem. On Windows, if you do not specify a full path when you create the keystore, Eclipse will hide it in its own directory. So in my case it was C:\eclipse\mykeystore
It doesn't hide it. One of the first steps of the export (where you create or use existing keystore) asks you where you want to save it. You might want to go through the export steps again to see which path it is currently defaulted to and then check there.
It is typically saved with the name key (no extension).
it is very easy to creat the KeyStore, just follow the steps in your java environment, for exemplemine is java EDT
in your workspace (at the left), you have your project under(Package Explorer, Navigator), click on Navigator right clik on the top of your name project and you will have a list of items, at the last ones choose click on Android Tools ==> it will show another list, this one will display exporte unsigned package, export signed package ... and so on.
choose signed package and follow the steps where the system will put your key store(it's you ho decide will it should be)
choose any location you went, and give a pwd for that
good luck
RachidM
So, here is how it is,
When you first export the project you will see the name of the keystore is the same as .apk
Change this! make it projectname.keystore for example
It was bit misleading but when you save the apk then it will replace the keystore and you cant really find it again.
Then everytime you export the project select the .keystore file
I too was not paying attention when creating the keystore. I am using the Motodev-wrapped Eclipse installation. The default location for the keystore there is $HOME\motodevstudio\tools.
The Android plugin hides its keystores in either %HOMEPATH%\.android or ~/.android