codecamp

通过工件生成已签名的发布APK

要在物理设备上部署和运行 Android 应用程序,您需要对应用程序进行数字签名。使用 IntelliJ IDEA,您可以在打包提取时使用现有版本密钥对您的 Android 应用程序包(.apk 文件)进行签名。IntelliJ IDEA 还集成了一个可在包装过程中调用的发布密钥生成工具。生成的密钥保存在密钥库二进制文件中。

您可以根据需要使用任意数量的密钥库文件和密钥,并使用现有的密钥,或在现有密钥库中创建新密钥,甚至创建新的密钥库。

除了使用“生成签名APK向导(Generate Signed APK Wizard)”,您还可以通过创建 Android 应用程序工件定义将 .apk 文件配置为工件。当 IntelliJ IDEA 根据此定义构建包时,包会自动签名。

使用工件定义提取并签署发布的Android应用程序包

  1. 从主菜单中选择:文件| 项目结构(File | Project structure),并且单击左侧窗格的Artifacts
  2. 点击新建按钮,并从上下文菜单中选择“Android应用程序(Android Application)”。
  3. 在弹出菜单中,通过选择以下选项之一来定义工件内容:
    • 要创建一个空的布局定义,请选择“空(Empty)”。
    • 要在工件中包含模块数据,请选择“从模块<模块名称>(From module <module name>)”

    新工件的常规设置将显示在右侧的“工件布局(Artifact Layout)”窗格中。

  4. 指定工件的常规设置。在“输出目录(Output directory)”文本框中,指定目标程序包.apk文件的位置。
  5. 通过以下步骤完成工件定义:
    • 配置工件结构。
    • 将资源添加到工件。
    • 排列工件中包含的元素。
    • 如有必要,指定在“预处理(Pre-processing)”和“后处理(Post-Processing)”选项卡中构建工件之前和之后要执行的其他活动。
  6. 切换到“Android选项卡(Android tab )”选项,然后从“类型(Type)”下拉列表中选择“发布签名(Release signed)”。
  7. 指定要使用的发行版密钥和包含它的密钥库文件。执行以下操作之一:
    • 使用现有密钥库文件中的密钥对软件包进行签名:
      1. 在“密钥库路径(Key store path)”文本框中指定文件位置。手动键入路径或单击选择“现有按钮(Choose existing)”,然后在打开的对话框中选择该文件。在“密钥库密码(Key store password)”文本框中,输入所选密钥库的密码。
      2. 指定密钥别名并输入密码以访问密钥。
    • 要在现有密钥库中生成新密钥,请执行以下操作:
      1. 在“密钥库路径(Key store path)”文本框中指定文件位置。手动键入路径或单击选择“现有按钮(Choose existing)”,然后在打开的对话框中选择该文件。在“密钥库密码(Key store password)”文本框中,输入所选密钥库的密码。
      2. 单击 Create new 按钮,并通过填写打开的 New Key Store 对话框中的数据来配置要生成的释放键。
    • 使用新密钥生成新的密钥库文件:
      1. 点击“新建(Create new)”按钮。在打开的“新建密钥库(New Key Store)”对话框中,指定要在密钥库路径文本框中生成的文件的位置。手动键入路径或单击浏览按钮,然后选择父文件夹并指定文件的名称。
      2. 指定并确认密码以访问密钥库。
      3. 填写密钥区域中的数据以配置新版本密钥。

    点击“下一步”。

  8. 要让 IntelliJ IDEA 在打包过程中对应用程序进行模糊处理,请选中“运行ProGuard(Run ProGuard)”复选框并指定 proguard.txt 配置文件的位置。该文件在创建项目时生成并存储在项目根目录中。IntelliJ IDEA 在“配置文件路径(Config file path)”文本框中建议这个默认位置。接受建议或通过单击“浏览”按钮,并在打开的对话框中选择所需的文件来指定自定义配置文件。
IntelliJ IDEA:使用向导生成签名发布APK
生成未签名的发布Android应用程序包
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

IntelliJ IDEA的一般准则

什么是IntelliJ IDEA项目

使用IntelliJ IDEA的意图行为

IntelliJ IDEA使用运行/调试配置

特定于VCS的程序

IntelliJ IDEA语言和特定框架指南

IntelliJ IDEA的数据库和SQL功能

IntelliJ IDEA使用之JavaServer Faces(JSF)

IntelliJ IDEA:分析PHP应用程序的性能

IntelliJ IDEA:调试PHP应用程序

IntelliJ IDEA:适用于PHP的Google App Engine

IntelliJ IDEA更多内容

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }