{"_id":"590a04f8ed80861900cbc7bc","parentDoc":null,"user":"55b2d5626862a10d00887af9","project":"55b2d5baa74a380d00e290c4","version":{"_id":"590a04f2ed80861900cbc737","project":"55b2d5baa74a380d00e290c4","__v":4,"createdAt":"2017-05-03T16:27:30.085Z","releaseDate":"2017-05-03T16:27:30.085Z","categories":["590a04f3ed80861900cbc738","590a04f3ed80861900cbc739","590a04f3ed80861900cbc73a","590a04f3ed80861900cbc73b","590a04f3ed80861900cbc73c","590a04f3ed80861900cbc73d","590a04f3ed80861900cbc73e","590a04f3ed80861900cbc73f","590a04f3ed80861900cbc740","590a04f3ed80861900cbc741","590a04f3ed80861900cbc742","590a04f3ed80861900cbc743","590a04f3ed80861900cbc744","590a04f3ed80861900cbc745","590a04f3ed80861900cbc746","590a04f3ed80861900cbc747","590a04f3ed80861900cbc748","590a04f3ed80861900cbc749","590a04f3ed80861900cbc74a","590a04f3ed80861900cbc74b","590a04f3ed80861900cbc74c","590a04f3ed80861900cbc74d","59124949de13f61900336a7a","5914b04e7c2c552d008b7104","5914b47242c6a22300b9dc20"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"7.0.0","version":"7"},"__v":0,"category":{"_id":"590a04f3ed80861900cbc743","project":"55b2d5baa74a380d00e290c4","__v":0,"version":"590a04f2ed80861900cbc737","sync":{"url":"","isSync":false},"reference":false,"createdAt":"2016-01-11T22:26:36.700Z","from_sync":false,"order":13,"slug":"android-keystores","title":"Android Keystores"},"updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-01-12T01:33:39.093Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":1,"body":"If you wish to override the buddybuild generated KeyStore during your build, you can upload your own. Buddybuild will pick up the uploaded KeyStore and use it for code signing your App.\n[block:callout]\n{\n  \"type\": \"info\",\n  \"body\": \"Release builds - like the ones that eventually end up in the Play Store - will require to be code signed with a KeyStore that is associated with a Developer.\",\n  \"title\": \"Release build keystores\"\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"danger\",\n  \"title\": \"Verify the keystore\",\n  \"body\": \"You can run \\\"**keytool -list -keystore .keystore -alias foo**\\\" to verify the keystore alias and password matches\"\n}\n[/block]\n\n[block:api-header]\n{\n  \"title\": \"Step 1: Upload a Keystore from your development machine\"\n}\n[/block]\nStart by clicking on **App Settings**.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/02aaf9e-Builds_-_Settings.png\",\n        \"Builds - Settings.png\",\n        1500,\n        483,\n        \"#ecf1f2\"\n      ],\n      \"sizing\": \"full\"\n    }\n  ]\n}\n[/block]\nNext, select **Build settings**, then **APK signing keystores**.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/a383f05-Settings_-_APK_Signing_Keystores_-_menu.png\",\n        \"Settings - APK Signing Keystores - menu.png\",\n        1500,\n        800,\n        \"#2c82d2\"\n      ],\n      \"sizing\": \"full\"\n    }\n  ]\n}\n[/block]\nLocate the KeyStore on your local machine and upload it. It is typically a file with a .keystore or .jks extension. Enter your KeyStore password, alias and alias password.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/7cab075-Settings_-_APK_Signing_Keystores.png\",\n        \"Settings - APK Signing Keystores.png\",\n        1500,\n        800,\n        \"#d8dfe4\"\n      ],\n      \"sizing\": \"full\"\n    }\n  ]\n}\n[/block]\nOnce uploaded, you will see your keystore listed on the page.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/60ae2f9-Settings_-_APK_Signing_Keystores_-_2.png\",\n        \"Settings - APK Signing Keystores - 2.png\",\n        1500,\n        640,\n        \"#38b950\"\n      ]\n    }\n  ]\n}\n[/block]\n\n[block:api-header]\n{\n  \"title\": \"Step 2: Assign the keystore to an application variant\"\n}\n[/block]\nNext, assign your keystore to an application variant. Buddybuild will build and sign the variant with the selected keystore.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/88e1a1d-Settings_-_APK_Signing_Keystores_-_3.png\",\n        \"Settings - APK Signing Keystores - 3.png\",\n        1500,\n        640,\n        \"#d5dce0\"\n      ]\n    }\n  ]\n}\n[/block]\nThat's it! Buddybuild will now use your uploaded KeyStore for subsequent builds.","excerpt":"","slug":"managing-your-keystores","type":"basic","title":"Managing Your KeyStores"}

Managing Your KeyStores


If you wish to override the buddybuild generated KeyStore during your build, you can upload your own. Buddybuild will pick up the uploaded KeyStore and use it for code signing your App. [block:callout] { "type": "info", "body": "Release builds - like the ones that eventually end up in the Play Store - will require to be code signed with a KeyStore that is associated with a Developer.", "title": "Release build keystores" } [/block] [block:callout] { "type": "danger", "title": "Verify the keystore", "body": "You can run \"**keytool -list -keystore .keystore -alias foo**\" to verify the keystore alias and password matches" } [/block] [block:api-header] { "title": "Step 1: Upload a Keystore from your development machine" } [/block] Start by clicking on **App Settings**. [block:image] { "images": [ { "image": [ "https://files.readme.io/02aaf9e-Builds_-_Settings.png", "Builds - Settings.png", 1500, 483, "#ecf1f2" ], "sizing": "full" } ] } [/block] Next, select **Build settings**, then **APK signing keystores**. [block:image] { "images": [ { "image": [ "https://files.readme.io/a383f05-Settings_-_APK_Signing_Keystores_-_menu.png", "Settings - APK Signing Keystores - menu.png", 1500, 800, "#2c82d2" ], "sizing": "full" } ] } [/block] Locate the KeyStore on your local machine and upload it. It is typically a file with a .keystore or .jks extension. Enter your KeyStore password, alias and alias password. [block:image] { "images": [ { "image": [ "https://files.readme.io/7cab075-Settings_-_APK_Signing_Keystores.png", "Settings - APK Signing Keystores.png", 1500, 800, "#d8dfe4" ], "sizing": "full" } ] } [/block] Once uploaded, you will see your keystore listed on the page. [block:image] { "images": [ { "image": [ "https://files.readme.io/60ae2f9-Settings_-_APK_Signing_Keystores_-_2.png", "Settings - APK Signing Keystores - 2.png", 1500, 640, "#38b950" ] } ] } [/block] [block:api-header] { "title": "Step 2: Assign the keystore to an application variant" } [/block] Next, assign your keystore to an application variant. Buddybuild will build and sign the variant with the selected keystore. [block:image] { "images": [ { "image": [ "https://files.readme.io/88e1a1d-Settings_-_APK_Signing_Keystores_-_3.png", "Settings - APK Signing Keystores - 3.png", 1500, 640, "#d5dce0" ] } ] } [/block] That's it! Buddybuild will now use your uploaded KeyStore for subsequent builds.