android 創建的簽名文件在哪
兩種方式,一種開發工具eclipse,還有就是用apktool工具。I、隻要Run As Android Application 過,到工作目錄的bin文件夾下就能找到與項目同名的apk文件。II、 A.選中項目,右鍵=》Andoid Tools=》Export Unsigned Application Package,直接保存,未簽名的。 B.選中項目,右鍵=》Andoid Tools=》Export Signed Application Package,後麵一步步的去做,簽過名的。 APK簽名主要有兩種:1. 使用特殊的key簽名可以獲取到一些不同的權限。2. APK如果使用一個key簽名,發布時另一個key簽名的文件將無法安裝或覆蓋老的版本,這樣可以防止你已安裝的應用被惡意的第三方覆蓋或替換掉。
android studio 中,設置好打包簽名的密碼以後,關掉as,再重新打開就沒有了,如圖顯示那樣
開啟這裏了嗎
安卓開發 導出apk文件 一定要設置簽名嗎
不需要簽名的
生成apk最懶惰的方法是:
隻要你運行過android項目,到工作目錄的bin文件夾下就能找到與項目同名的apk文件,這種apk默認是已經使用debug用戶簽名的。
如果想要自己給apk簽名:
*
簽名的意義
為了保證每個應用程序開發商合法ID,防止部分開放商可能通過使用相同的Package Name來混淆替換已經安裝的程序,我們需要對我們發布的APK文件進行唯一簽名,保證我們每次發布的版本的一致性(如自動更新不會因為版本不一致而無法安裝)。
2.簽名的步驟
a.創建key
b.使用步驟a中產生的key對apk簽名
3.具體操作
方法一: 命令行下對apk簽名(原理)
創建key,需要用到keytool.exe (位於jdk1.6.0_24\jre\bin目錄下),使用產生的key對apk簽名用到的是jarsigner.exe (位於jdk1.6.0_24\bin目錄下),把上兩個軟件所在的目錄添加到環境變量path後,打開cmd輸入
D:\>keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore/*說明:-genkey 產生密鑰? ?? ? -alias demo.keystore 別名 demo.keystore? ?? ? -keyalg RSA 使用RSA算法對簽名加密? ?? ? -validity 40000 有效期限4000天? ?? ? -keystore demo.keystore */D:\>jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk demo.keystore/*說明:-verbose 輸出簽名的詳細信息? ?? ? -keystore??demo.keystore 密鑰庫位置? ?? ? -signedjar demor_signed.apk demo.apk demo.keystore 正式簽名,三個參數中依次為簽名後產生的文件demo_signed,要簽名的文件demo.apk和密鑰庫demo.keystore.*/
注意事項:android工程的bin目錄下的demo.apk默認是已經使用debug用戶簽名的,所以不能使用上述步驟對此文件再次簽名。正確步驟應該是:在工程點擊右鍵->Anroid Tools-Export Unsigned Application Package導出的apk采用上述步驟簽名。
方法二:使用Eclipse導出帶簽名的apk
Eclipse直接能導出帶簽名的最終apk,非常方便,推薦使用,步驟如下:
第一步:導出。
*
第二步:創建密鑰庫keystore,輸入密鑰庫導出位置和密碼,記住密碼,下次Use existing keystore會用到。
第三步:填寫密鑰庫信息,填寫一些apk文件的密碼,使用期限和組織單位的信息。
第四步:生成帶簽名的apk文件,到此就結束了。
第五步:如果下次發布版本的時候,使用前麵生成的keystore再簽名。
第六步:Next,Next,結束!
方法三:使用IntelliJ IDEA導出帶簽名的apk
方法步驟基本和Eclipse相同,大概操作路徑是:菜單Tools->Andrdoid->Export signed apk。
4.簽名之後,用zipalign(壓縮對齊)優化你的APK文件。
未簽名的apk不能使用,也不能優化。簽名之後的apk穀歌推薦使用zipalign.exe(位於android-sdk-windows\tools目錄下)工具對其優化:
D:\>zipalign -v 4 demo_signed.apk final.apk
如上,zipalign能夠使apk文件中未壓縮的數據在4個字節邊界上對齊(4個字節是一個性能很好的值),這樣android係統就可以使用mmap()(請自行查閱這個函數的用途)函數讀取文件,可以在讀取資源上獲得較高的性能,
PS:1.在4個字節邊界上對齊的意思就是,一般來說,是指編譯器吧4個字節作為一個單位來進行讀取的結果,這樣的話,CPU能夠對變量進行高效、快速的訪問(較之前不對齊)。
2.對齊的根源:android係統中的Davlik虛擬機使用自己專有的格式DEX,DEX的結構是緊湊的,為了讓運行時的性能更好,可以進一步用"對齊"進一步優化,但是大小一般會有所增加。
5.簽名對你的App的影響。
你不可能隻做一個APP,你可能有一個宏偉的戰略工程,想要在生活,服務,遊戲,係統各個領域都想插足的話,你不可能隻做一個APP,穀歌建議你把你所有的APP都使用同一個簽名證書。
使用你自己的同一個簽名證書,就沒有人能夠覆蓋你的應用程序,即使包名相同,所以影響有:
1) App升級。 使用相同簽名的升級軟件可以正常覆蓋老版本的軟件,否則係統比較發現新版本的簽名證書和老版本的簽名證書不一致,不會允許新版本安裝成功的。
2) App模塊化。android係統允許具有相同的App運行在同一個進程中,如果運行在同一個進程中,則他們相當於同一個App,但是你可以單獨對他們升級更新,這是一種App級別的模塊化思路。
3) 允許代碼和數據共享。android中提供了一個基於簽名的Permission標簽。通過允許的設置,我們可以實現對不同App之間的訪問和共享,如下:
AndroidManifest.xml:
其中protectionLevel標簽有4種值:normal(缺省值),dangerous, signature,signatureOrSystem。簡單來說,normal是低風險的,所有的App不能訪問和共享此App。dangerous是高風險的,所有的App都能訪問和共享此App。signature是指具有相同簽名的App可以訪問和共享此App。signatureOrSystem是指係統image中App和具有相同簽名的App可以訪問和共享此App,穀歌建議不要使用這個選項,因為簽名就足夠了,一般這個許可會被用在在一個image中需要共享一些特定的功能的情況下。
android簽名證書的sha1值怎麼獲取
一、百度官方方法
第一種:使用keytool
keytool -list -v keystorefile -storepass 123456
其中keytool為jdk自帶工具;keystorefile為Android 簽名證書文件
第二種:在adt 22中直接查看
如果使用adt 22,可以在eclipse中直接查看:winows -> preferance -> android -> build。 如下圖示:
其中"SHA1 fingerprint"值即為Android簽名證書的sha1值。
二、實際情況
原以為百度還挺人性,說就說了還截了個圖,咦呀,頓時那個仰慕之情滔滔江水啊,真正實操起來,悲催的事出現了,第二種方法的實際截圖是這個樣子的,然後就一臉黑線。
也就是第二種方法根本不能用!!!!MY GOD LADY GAGA
使用keytool
一、配置環境變量
由於要用到keytool工具,而keytool是jdk裏的一個工具,首先將jdk/bin所在的目錄加到環境變量的PATH中
看我的keytool所在位置
將所在路徑E:\Program Files\android others\jdk\bin加到PATH變量中:
二、找到另一個文件debug.keystore
這個文件是在你放工程的目錄下的,如果是默認的話,是在C:\Documents and Settings\Administrator\.android目錄下
三、運行命令
1、使用cd命令,將工作目錄切換到C:\Documents and Settings\Administrator\.android目錄下
2、輸入:keytool -list -keystore debug.keystore
3、輸入密鑰庫口令:如果沒設置,這裏就是空,直接回車就進去了。
求nokia 5233 手機簽名證書 imei:355932/04/097290/8 郵箱: as7624696@163.com
采納以後我可以幫你做手機塞班證書,今天完成以後我會第一時間將CER證書文件和KEY密鑰,以及專用簽名工具,證書的使用方法發到你郵箱。
誰能幫我設計一下簽名? 我叫王威, 我的郵箱是asqingyuan@163.com 希望哥哥姐姐們幫個忙
發了
記得及時查收
記得采納答案丫~
轉載請注明出處句子大全網 » android創建的簽名文件在哪