获取Android SHA1 、生成jks密钥、签名Apk

获取应用包名.

打开Android 应用工程的 AndroidManifest.xml配置文件,package 属性所对应的内容为应用包名。


获取 Sha1 值.

目前(2016/06/06)为止,各大第三方的SDK 配置key需要两种(图1.1)(一般只要拿到发布模式的key即可):

1.1

1.开发模式(debug) 
2.发布模式(release)

他们的 sha1 值是不同的,发布 apk时 需要根据发布apk对应的keystore(签名文件 
- 在eclipse 是 .keystore 文件 
- 在 Android Studio中是 .jks 文件)

并重新配置Key。 
开发模式的key直接获取debug.keystore即可,而发布模式的key则是生成的私有keystore

首先我们说下怎么获取 SHA1 值 :

1. 在 Eclipse 中获取 SHA1 (图2.1)

2.1

2. Android Studio获取SHA1:
  1. 打开Android Studio的Terminal工具( File-settings-plugins下面找到Termina,勾选上就可以)
  2. 输入命令: jdk1.8版本* (图2.2.1) * 
    jkd bin目录 + keytool -list -keystore + jks 文件路径 
    2.2.1

  3. 输入密钥库口令 
    这里注意下,输入密码时,一般都没有*号之类的提示的,等你输入完了,按回车就行了。 
    PS:1.6、1.7版本的JDK 可以在网上搜索 ,命令类似

    “jkd bin目录”+ “keytool -list -v -keystore” + “jks 文件路径”

下面我们看下怎么 生成keystore / jks 文件 以及 打包签名apk 。

视图界面生成签名文件:

Eclipse 生成 keystore 文件:
1. Eclipse工程中右键工程,弹出选项中选择 android工具-生成签名应用包 (图3.1.1)

3.1.1

2. 选择需要打包的android项目工程(默认为当前的Project) (图3.1.2)

3.1.2

3. 如果已有私钥文件,选择私钥文件 输入密码,如果没有私钥文件见 第6和7步 (图3.1.3)

3.1.3

4. 输入私钥别名和密码* (图3.1.4)*

3.1.4

5. 选择APK存储的位置,并完成设置 开始生成* (图3.1.5)*

3.1.5

6. 没有私钥文件的情况,创建私钥文件(注:这里私钥文件的Location位置最好自己选择一个新位置,便于牢记,而且最好把这个私钥文件备份到其他地方去以免丢失,因为应用程序的更新需要同一私钥文件)* (图3.1.6)*

3.1.6

7.输入私钥文件所需信息,并创建(注:这里的密码是用于Key的别名的,和上面的KeyStore文件的不同,这点可以看步骤3和4。另外下面的名字,开发者资料等是不需要全部填写的,dialog会有提示的)* (图3.1.7)*

3.1.7

Android Studio 生成 jks 文件:
1. 在上方的菜单导航条 选择 Build > Generate Signed APK** (图3.2.1)**:

3.2.1

2. 选择Create new 新建一个 * (图3.2.2)* 如果已有jks文件则直接看第 5 步

3.2.2

3. 选择创建新的key,会出现这个目录* (图3.2.3.1)*,很简单是不是。

3.2.3.1

注意:选择保存keystore文件位置的时候需要自己填文件名* (如图3.2.3.2)*

3.2.3.2

4. 这是填好的示例(如图3.2.3.3)

3.2.3.3

5. 这一步 (如图3.2.4)填写好了直接next

3.2.4

6.选择好生成的apk存放的目录 ,以及编译的类型,Flavors 是多渠道发布,这里暂时不说(如图3.2.5),直接finish,然后就可以去文件夹看生成的apk了。

3.2.5


cmd中生成 keystore(这里以jdk1.7版本为例,jdk1.8和jdk1.7的算法有所不同)

1. 打开cmd命令提示符,转到keytool所在的目录下,这里是是在C:\Program Files\Java\jdk1.7.0_65\bin(看图c1.png);

(如果是在C盘中一定要以管理员身份运行,否则会出现keytool 错误:java.io.FileNotFoundException: MyAndroidKey.keystore (拒绝访问).的错误)

c1.png

2.输入生成命令,一个个填过去就ok(看图c2.png)

c2.png

暂时就先写这些,不足之处欢迎指出,谢谢!

本文来自于: http://blog.csdn.net/u013323045/article/details/51596335

### 回答1: 在 Studio中,签名密钥可以通过以下步骤生成APK文件: 1. 在“Gradle”面板中,打开“app”文件夹并展开“Tasks”>“android”>“signingReport”。 2. 单击“signingReport”并等待一段时间,Gradle将生成签名密钥并在“Run”面板中显示。 3. 复制签名密钥的内容,包括“SHA1”和“MD5”指纹以及“debug”和“release”密钥别名。 4. 在“Build”菜单中,选择“Generate Signed Bundle / APK”。 5. 在“Generate Signed Bundle or APK”对话框中,选择“APK”并单击“Next”。 6. 在“Keystore path”字段中,输入签名密钥的路径。如果您没有现成的签名密钥,可以单击“Create new”并按照向导创建一个新的。 7. 输入密钥库密码、密钥别名和密钥密码。 8. 选择“Release”版本的构建类型并单击“Finish”。 9. 这将生成一个签名APK文件,可以在“app / release”文件夹中找到。 ### 回答2: 在安卓应用开发中,生成签名密钥”(Signing Key)是为了保证 APK 文件的完整性和身份验证。下面是一种常用的方式来生成 APK 文件的签名密钥: 1. 首先,在开发环境中使用 Java Development Kit (JDK) 来生成一个签名密钥。可以使用 JDK 提供的 keytool 工具来完成此操作。在命令行界面中,输入以下命令: ``` keytool -genkeypair -alias myalias -keyalg RSA -keysize 2048 -validity 10000 -keystore mykeystore.jks ``` 2. 上述命令中的 `-alias` 参数指定了密钥的别名,可以为其指定任意名称。`-keyalg` 参数指定了密钥的算法,这里使用 RSA 算法。`-keysize` 参数指定了密钥的长度,这里选择 2048 位。`-validity` 参数指定了有效期,以天为单位。`-keystore` 参数指定了密钥库的名称,这里为 `mykeystore.jks`。 3. 运行上述命令后,系统会提示输入一些信息,如姓名、组织等。按照提示逐步输入并确认相关信息。 4. 完成上述步骤后,系统将生成一个名为 `mykeystore.jks` 的密钥库文件,并在该文件中存储了生成的私钥和公钥对。 5. 接下来,将该密钥库文件放置在开发环境合适的目录下,并在项目的构建过程中引用该文件。在 Android Studio 中,可以在构建 gradle 脚本文件中指定签名密钥的位置。 6. 在构建 APK 文件时,使用具有签名权限的密钥库文件和别名对 APK 进行签名。可通过运行下面的命令来签名 APK: ``` jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore mykeystore.jks myapp.apk myalias ``` 7. 运行上述命令后,将需要签名APK 文件(这里为 `myapp.apk`)以及密钥库文件和别名作为参数传入。系统将使用密钥库中的私钥为 APK 文件进行签名。 通过以上步骤,将会生成一个经过签名APK 文件。签名密钥的目的是确保 APK 文件的完整性和来源,以防止未经授权的篡改和欺骗。 ### 回答3: 在Android应用的开发过程中,签名密钥(Signing Key)起着至关重要的作用,用于确保APK文件的完整性并验证应用的身份。以下是签名密钥生成APK文件的步骤。 首先,我们需要生成一个私钥文件(keystore)作为签名密钥的载体。可以使用Java Keytool工具来生成私钥文件。打开命令行或终端窗口,输入以下命令: ``` keytool -genkey -v -keystore mykey.keystore -alias mykey -keyalg RSA -keysize 2048 -validity 10000 ``` 这个命令会生成一个名为mykey.keystore的私钥文件,并创建一个别名为mykey的密钥对。 在生成私钥文件时,我们需要设置以下内容: - 密钥存储库的密码(-keystore):这是用于保护私钥文件的密码。 - 别名(-alias):用于标识密钥对的别名,可以自定义。 - 密钥算法(-keyalg):指定加密算法的名称,通常选择RSA。 - 密钥大小(-keysize):指定密钥的长度,一般选择2048位。 - 有效期(-validity):指定密钥的有效期,单位为天。 生成私钥文件后,我们可以使用它来为APK文件进行签名。在Android Studio中,可以将私钥文件添加到项目的“app”目录下,并在构建配置中指定签名配置。具体操作为: 1. 打开项目中的build.gradle文件,找到android -> signingConfigs -> config项。 2. 在config项中添加以下代码,指定私钥文件的路径和密码: ``` storeFile file("mykey.keystore") storePassword "密钥存储库密码" keyAlias "别名" keyPassword "密钥密码" ``` 3. 在buildTypes中的release项中,添加以下代码,将签名配置指定为config: ``` signingConfig signingConfigs.config ``` 完成以上配置后,即可使用签名密钥生成APK文件。每次进行构建时,Android Studio将使用私钥文件对APK文件进行签名,以确保APK文件的完整性和应用的身份验证。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值