<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE task PUBLIC "-//OASIS//DTD DITA Task//EN" "../dtd/task.dtd">
<task id="t_keystore-importing" xml:lang="en-us">
  <title>Importing a keystore</title>
  <shortdesc>A keystore created outside of MOTODEV Studio can be imported into the Signing and Keys view for use within that view.</shortdesc>
  <prolog>
    <metadata>
      <keywords>
        <!--<indexterm></indexterm>-->
      </keywords>
    </metadata>
  </prolog>
  <taskbody>
    <steps>
      <step>
        <cmd>If necessary, open the Signing and Keys view by <ph product="webui android-studio">selecting <menucascade>
              <uicontrol>Window</uicontrol>
              <uicontrol>Show View</uicontrol>
              <uicontrol>Other</uicontrol>
            </menucascade> and then selecting <menucascade>
              <uicontrol>MOTODEV Studio</uicontrol>
              <uicontrol>Signing and Keys</uicontrol>
            </menucascade> from the list of views</ph>. Note that this view is part of the MOTODEV Studio for Android
          perspective and is thus normally opened when you switch to that perspective.</cmd>
      </step>
      <step>
        <cmd>Click <image href="../images/KeystoreImport.png"/> (Import Keystore).</cmd>
        <stepresult>The Import Keystore dialog is displayed.</stepresult>
      </step>
      <step>
        <cmd>Using the <uicontrol>Keystore Filename</uicontrol> field, specify the keystore to be imported.</cmd>
      </step>
      <step>
        <cmd>Specify the keystore file format using the <uicontrol>Keystore Type</uicontrol> pull-down list. Note that
          the keystore being imported must be of one of the listed types.</cmd>
      </step>
      <step>
        <cmd>Click <uicontrol>Finish</uicontrol>.</cmd>
      </step>
    </steps>
    <result>The specified keystore is imported and shown in the Signing and Keys view. You can now sign Android packages
      using the keystore's keys. <note>Although you don't need to supply the keystore password as part of the import
      process, you will need to do so when you attempt to display its contents in the Signing and Keys
      view.</note></result>
  </taskbody>
</task>
