獲取應(yīng)用包名.
打開Android 應(yīng)用工程的 AndroidManifest.xml配置文件,package 屬性所對(duì)應(yīng)的內(nèi)容為應(yīng)用包名。
獲取 Sha1 值.
目前(2016/06/06)為止,各大第三方的SDK 配置key需要兩種(圖1.1)(一般只要拿到發(fā)布模式的key即可):
1.開發(fā)模式(debug)
2.發(fā)布模式(release)
他們的 sha1 值是不同的,發(fā)布 apk時(shí) 需要根據(jù)發(fā)布apk對(duì)應(yīng)的keystore(** 簽名文件**
- 在eclipse 是 **.keystore **文件
- 在 Android Studio中就是 **.jks **文件)
并重新配置Key。
開發(fā)模式的key直接獲取debug.keystore即可,而發(fā)布模式的key則是生成的私有keystore
首先我們說下怎么獲取 SHA1 值 :
1.在 Eclipse 中獲取 SHA1 (圖2.1)
2. Android Studio獲取SHA1:
注意:在這之前請(qǐng)確保你的jdk的bin目錄添加到系統(tǒng)環(huán)境變量path中,具體方法請(qǐng)百度
打開Android Studio的Terminal工具( File-settings-plugins下面找到Termina,勾選上就可以)
-
輸入命令: jdk1.8版本** (圖2.2.1) **
jdk bin目錄 + keytool -list -keystore + jks 文件路徑
2.2.1 -
輸入密鑰庫口令
這里注意下,輸入密碼時(shí),一般都沒有*號(hào)之類的提示的,等你輸入完了,按回車就行了。
PS:1.6、1.7版本的JDK 可以在網(wǎng)上搜索 ,命令類似"jdk bin目錄"+ "keytool -list -v -keystore" + "jks 文件路徑"
下面我們看下怎么 生成keystore / jks 文件 以及 打包簽名apk 。
視圖界面生成簽名文件:####
Eclipse 生成 keystore 文件:
1. Eclipse工程中右鍵工程,彈出選項(xiàng)中選擇 android工具-生成簽名應(yīng)用包 (圖3.1.1):
2. 選擇需要打包的android項(xiàng)目工程(默認(rèn)為當(dāng)前的Project) (圖3.1.2):
3. 如果已有私鑰文件,選擇私鑰文件 輸入密碼,如果沒有私鑰文件見 第6和7步 (圖3.1.3):
4. 輸入私鑰別名和密碼** (圖3.1.4)**:
5. 選擇APK存儲(chǔ)的位置,并完成設(shè)置 開始生成** (圖3.1.5)**:
6. 沒有私鑰文件的情況,創(chuàng)建私鑰文件(注:這里私鑰文件的Location位置最好自己選擇一個(gè)新位置,便于牢記,而且最好把這個(gè)私鑰文件備份到其他地方去以免丟失,因?yàn)閼?yīng)用程序的更新需要同一私鑰文件)** (圖3.1.6)**:
7.輸入私鑰文件所需信息,并創(chuàng)建(注:這里的密碼是用于Key的別名的,和上面的KeyStore文件的不同,這點(diǎn)可以看步驟3和4。另外下面的名字,開發(fā)者資料等是不需要全部填寫的,dialog會(huì)有提示的)** (圖3.1.7)**:
Android Studio 生成 jks 文件:
1. 在上方的菜單導(dǎo)航條 選擇 Build > Generate Signed APK** (圖3.2.1)**:
2. 選擇Create new 新建一個(gè) ** (圖3.2.2)** 如果已有jks文件則直接看第 5 步
3. 選擇創(chuàng)建新的key,會(huì)出現(xiàn)這個(gè)目錄** (圖3.2.3.1)**,很簡單是不是。
注意:選擇保存keystore文件位置的時(shí)候需要自己填文件名** (如圖3.2.3.2)**
4. 這是填好的示例(如圖3.2.3.3)
5. 這一步 (如圖3.2.4)填寫好了直接next
6.選擇好生成的apk存放的目錄 ,以及編譯的類型,F(xiàn)lavors 是多渠道發(fā)布,這里暫時(shí)不說(如圖3.2.5),直接finish,然后就可以去文件夾看生成的apk了。
cmd中生成 keystore(這里以jdk1.7版本為例,jdk1.8和jdk1.7的算法有所不同)
1. 打開cmd命令提示符,轉(zhuǎn)到keytool所在的目錄下,這里是是在C:\Program Files\Java\jdk1.7.0_65\bin(看圖c1.png);
(如果是在C盤中一定要以管理員身份運(yùn)行,否則會(huì)出現(xiàn)keytool 錯(cuò)誤:java.io.FileNotFoundException: MyAndroidKey.keystore (拒絕訪問).的錯(cuò)誤)
2.輸入生成命令,一個(gè)個(gè)填過去就ok(看圖c2.png)
暫時(shí)就先寫這些,不足之處歡迎指出,謝謝