Delphi D10.X 安卓APP开发中创建密钥库文件

2023-10-08 14:59

本文主要是介绍Delphi D10.X 安卓APP开发中创建密钥库文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

APK签名是必须的

Android 系统要求所有 APK 必须先使用证书进行数字签名,然后才能安装到设备上或进行更新。
关于签名,同学使用delphi做开发的朋友通常都会忽略,特别是同时开始学习时,因为通常大家都没有习惯去注意签名的事,因为开发时好像根本没有这个操作,APK同样可以安装到手机上,并正常运行与调试。这是由于大家在开发过程中,Delphi在安装时就自动为APK的需要生成好开发签名证书,并在编译后的打包过程中自动完成“开发签名”,所以我们会毫无感觉。
但是,当你要把这个APP应用提交到诸如Google Play之类的应用商店,您就需要重新创建一个密钥库文件,并为APP应用进行签名,而不能再使用开发签名。当然,如果您已经拥有自己发布使用的密钥库文件,可直接使用,并忽略此博文。

在Delphi中快速生成密钥库

接下来,我们谈一下怎么在delphi中快速的建立一个新的密钥库文件。
(本篇只讲生成密钥库,不讲与密钥库相关的其他内容,例如发布使用)

使用一个或多个证书创建新的密钥库文件,然后我们可以使用这些证书为Android应用程序进行签名:

  1. 打开“ 创建新的密钥库/别名”向导:
    依次使用菜单(选项) :Tools > Options > Deployment > Provisioning
    在这里插入图片描述
    (请注意,delphi版本不同,可能打开向导的菜单有所差异)
  • 在“ Build Type ”项中,选择“Android - Application Store”类型。
  • 单击“ New Keystore”。
  1. 在“ New keystore information ”页面上,输入有关新密钥库文件的信息:
    在这里插入图片描述
  • 在“ File”项目中,单击省略号(…)按钮,然后选择要存储新密钥库文件的路径。
  • 输入密码与第二次的确认密码,以保护新建的密钥库文件。
  • 然后单击下一步继续。
  1. 在“ New key alias information ”页面上,输入有关要添加到新密钥库文件中的新证书的信息:
    在这里插入图片描述
  • 在Alias中,输入一个名称,该名称在新的密钥库文件中唯一标识您的新证书。例如:“ MyKey”。
  • 输入密码与第二次的确认密码,以保护您的新证书。
  • 更改“ Validity (days)”中的值(可选项),并填写完成其余数据项。
  • 单击完成以生成新的密钥库文件。
项目说明
Alias唯一标识新证书的别名。
Password用于保护证书的密码。
Confirm重复输入新证书的密码,保证密码的正确性。
Validity (days)新证书过期之前的天数。(安卓官方说法:密钥的有效期应至少为 25 年,以便您可以在应用的整个生命期内使用同一密钥为应用更新签名。所以Delphi设置的默认值也是25年)
First and Last Name您的名字和姓氏。
Organizational Unit您组织内部门的名称。
Organization您的组织的名称。
City or Locality您居住的地方的名称。
State or Province您的城市或地区所在的州或省的名称。
Country Code (XX)一个ISO 3166-1两字母代码识别您所在的国家。例如:CN(中国的代码)。

RAD Studio会使用新的密钥库文件和证书信息自动填充“Provisioning”页面的必填信息项。
在这里插入图片描述
Provisioning 页面同时也有管理其他证书的功能,以及增加已有证书、增加已有密钥库、查看证书信息(在某些接口开发,需要用到哦)等较多的功能,请自行学习。

警告: 您必须将密钥库文件存储在安全的地方,并确保不要忘记密钥库的密码或其中的证书。应用程序商店(例如Google Play)要求您的应用程序的新版本与应用程序的第一个版本使用相同的密钥库和证书进行签名。


 欢迎光顾本人小店:(https://shop63778938.taobao.com/) 小店也提供delphi方面其他技术支持、定制开发。   

现在就进店看看

以上信息对您有用的话请点赞收藏,就下面这行

这篇关于Delphi D10.X 安卓APP开发中创建密钥库文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/166096

相关文章

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

如何解决idea的Module:‘:app‘platform‘android-32‘not found.问题

《如何解决idea的Module:‘:app‘platform‘android-32‘notfound.问题》:本文主要介绍如何解决idea的Module:‘:app‘platform‘andr... 目录idea的Module:‘:app‘pwww.chinasem.cnlatform‘android-32

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

Python基于wxPython和FFmpeg开发一个视频标签工具

《Python基于wxPython和FFmpeg开发一个视频标签工具》在当今数字媒体时代,视频内容的管理和标记变得越来越重要,无论是研究人员需要对实验视频进行时间点标记,还是个人用户希望对家庭视频进行... 目录引言1. 应用概述2. 技术栈分析2.1 核心库和模块2.2 wxpython作为GUI选择的优

idea中创建新类时自动添加注释的实现

《idea中创建新类时自动添加注释的实现》在每次使用idea创建一个新类时,过了一段时间发现看不懂这个类是用来干嘛的,为了解决这个问题,我们可以设置在创建一个新类时自动添加注释,帮助我们理解这个类的用... 目录前言:详细操作:步骤一:点击上方的 文件(File),点击&nbmyHIgsp;设置(Setti