Ⅰ 如何生成android簽名文件
工具/原料
Win7 x64
adt-bundle-windows-x86_64-20140702
方法/步驟
新建一個工程命名為「HelloWorld」,操作如下圖所示, 處前兩個界面外,其他的界面都點擊默認值即可;
通過 「右鍵工程->Run As...->Android Application」, 在 工程目錄的 bin/HelloWorld.apk 會生成一個apk文件
點擊 「Use the Export Wizard」,如下圖所示:
點擊 Next, 如下圖所示:
1、選擇 "Create New Keystore",
2、輸入將要保存的數字簽名文件,如「D:\Android\key\HelloWorld.key」
3、輸入密碼,如:HelloWorld
4、輸入確認碼,如 HelloWorld
5、點擊 Next
效果如下:
輸入昵稱,密碼,確認碼,期限,名字後,點擊next,如下圖所示:
輸入需要簽名的apk包,點擊Finish後,就完成了對apk包的數字簽名
同時也會生成數字簽名用的文件,如:「"D:\Android\key\HelloWorld.key"」
Ⅱ Android簽名有什麼作用
平時我們的程序可以在模擬器上安裝並運行,是因為在應用程序開發期間,由於是以Debug面試進行編譯的,因此ADT根據會自動用默認的密鑰和證書來進行簽名,而在以發布模式編譯時,apk文件就不會得到自動簽名,這樣就需要進行手工簽名。給apk簽名可以帶來以下好處:1.、應用程序升級:如果你希望用戶無縫升級到新的版本,那麼你必須用同一個證書進行簽名。這是由於只有以同一個證書簽名,系統才會允許安裝升級的應用程序。如果你採用了不同的證書,那麼系統會要求你的應用程序採用不同的包名稱,在這種情況下相當於安裝了一個全新的應用程序。如果想升級應用程序,簽名證書要相同,包名稱要相同!2、應用程序模塊化:Android系統可以允許同一個證書簽名的多個應用程序在一個進程里運行,系統實際把他們作為一個單個的應用程序,此時就可以把我們的應用程序以模塊的方式進行部署,而用戶可以獨立的升級其中的一個模塊3、代碼或者數據共享:Android提供了基於簽名的許可權機制,那麼一個應用程序就可以為另一個以相同證書簽名的應用程序公開自己的功能。以同一個證書對多個應用程序進行簽名,利用基於簽名的許可權檢查,你就可以在應用程序間以安全的方式共享代碼和數據了。不同的應用程序之間,想共享數據,或者共享代碼,那麼要讓他們運行在同一個進程中,而且要讓他們用相同的證書簽名。
Ⅲ 如何查看android 應用簽名
1、查看自己的應用簽名可以通過兩種方式查看(1) debug的apk通過Eclipse查看,:
(2) 某個keystore簽名的應用,通過
Java
keytool -list -keystore E:\Trinea\keystore\appsearch.keystore
查看,會要求輸入簽名密碼,默認為android,:
2、查看三方應用或是系統應用簽名用winrar打開待查看的apk,將其中META-INF文件夾解壓出來,得到其中的CERT.RSA文件,通過
Java
keytool -printcert -file META-INF/CERT.RSA
命令列印證書信息,如微信證書信息:
可以查看簽名的MD5、SHA1、SHA256值及簽名演算法
Ⅳ 如何將android應用生成簽名
1.簽名的步驟
a.創建key
b.使用步驟a中產生的key對apk簽名
2.具體操作
方法一: 命令行下對apk簽名(原理)
創建key,需要用到keytool.exe (位於jdk1.6.0_24jrein目錄下),使用產生的key對apk簽名用到的是jarsigner.exe (位於jdk1.6.0_24in目錄下),把上兩個軟體所在的目錄添加到環境變數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。
Ⅳ 如何對Android的APP進行簽名
1、在Android Studio中打開工程,點擊「Build」菜單下的「Generate Signed APK」。
Ⅵ android 應用簽名怎麼獲取
方法/步驟
1
1 win7,開始菜單,搜索cmd
2
2 打開cmd
3
3 進入.android
4
4 使用命令keytool -list -v -keystore debug.keystore
5
5 需要安裝keytool,辦法是安裝jdk,網路搜索jdk並下載安裝;具體平台按實際情況選擇
6 安裝完畢,進入到jdk安裝bin目錄,並復制地址
7 回到cmd命令窗口,輸入cd + 空格,並在標題欄右側點擊粘貼
8 回車,進入到這個目錄
9 再次輸入keytool -list -v -keystore debug.keystore命令並回車,出現錯誤
10 先執行以下命令keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -keyalg RSA -validity 10000
11 按提示輸入密碼(自己定),密保答案等;到後來需要重新再輸入密碼,生成完成
12 到keytool目錄下,看到debug.keystore已經生成成功
13 將這個文件復制到.android文件夾下
14 現在再次鍵入生成android簽名的命令:keytool -list -v -keystore debug.keystore,按提示輸入密碼,即可成功生成簽名
15 在標題欄右鍵選擇標記復制其中的SHA1的值,即為android的簽名
Ⅶ android 簽名文件怎麼用
android sdk包含源碼。
調試Android程序的時候遇到「source not found」錯誤應該很抓狂,Goolge在發布SDK時沒有把源代碼包含進去著實有點讓人費解,對很多人來說Git無疑是個生澀的東西,而 framework中所有Java代碼加起來打個包也就是20多MB。
Android Eclipse plugin (ADT)不允許在項目屬性中attach源代碼到android.jar上。好在Eric Burke找到了把source加入到SDK中的辦法,通過分析ADT的源代碼知道ADT是從SDK目錄下的「sources」目錄來查找class對應的源代碼,這樣只要把源代碼放到sources目錄中ADT就可以自動找到對應的源代碼了。
Ⅷ 怎麼給Android應用程序簽名
Android系統要求所有的程序經過數字簽名才能安裝,如果沒有可用的數字簽名,系統將不許安裝運行此程序。不管是模擬器還是真實手機。因此,在設備或者是模擬器上運行調試程序之前,必須為應用程序設置數字簽名。·所有的程序都必須簽名,沒有被簽名的程序,系統將不能安裝。
·可使用自簽署證書簽署應用程序,無須授權憑證。
·系統僅僅會在安裝的時候測試簽名證書的有效期,如果應用程序的簽名是在安裝之後才到期,那麼應用程序仍然可以正常啟用。
·可以使用標准工具-Keytool and Jarsigner-生成密鑰,來簽名應用程序的.apk文件。
Android SDK 工具可以在調試時給應用程序簽名。ADT插件和Ant編譯工具都提供了兩種簽名模式-debug模式和release模式
·debug模式下,編譯工具使用JDK中的通用程序Keytool通過已知方法和密碼創建秘鎖和密鑰。每次編譯的時候,工具使用debug密鑰簽名應用程序的.apk文件。因為密碼是已知的,工具不需要在每次編譯的時候提示輸入密鎖和密鑰。
·當應用程序調試完畢准備要發布release版本時,可以在release模式下編譯。release模式下,編譯工具不會將.apk文件簽名。需要自己用Keytool生成密鑰和密鎖,再用JDK中的Jarsigner工具給.apk文件簽名。簽名基本設置 首先設置JAVA_HOME環境變數,告訴SDK如何找到Keytool,或者可以在Windows 系統環境變數PATH變數中添加Keytool的JDK路徑。
在發布release版本時,從Package面版上按選中你的project,按滑鼠右鍵,依次選擇Android Tools、Export Application Package。或者可以點擊Manifest Editor,overview 頁面上的「Exporting the unsigned .apk」連接 ,導出未簽名apk文件。保存.apk文件後,用Jarsigner及自己的密鑰給apk文件簽名,如果沒有密鑰, 可以用Keystore創建密鑰和密鎖。如果已經有一個密鑰了,如公共密鑰,就可以給.apk文件簽名了。也可以把上面這個完整的步驟寫成一個bat文件,這樣需要簽名的時候只要運行這個bat就可以了。下面給出一個完整的bat文件示例:
@Rem android簽名程序 //注釋指令
@Rem echo是顯示指令 格式:echo [{on|off}] [message]
@echo **********************************************************
@Rem 文件是否存在命令格式:if exist 路徑+文件名 命令
@if exist d:sign/MyFirstApp.keystore goto sign
@echo 創建簽名文件MyFirstApp.keystore
@Rem keytool命令格式:-genkey產生簽名 -alias別名 -keyalg加密演算法 -validity有效天數 -keystore生產簽名文件名稱
keytool -genkey -alias MyFirstApp.keystore -keyalg RSA -validity 40000 -keystore MyFirstApp.keystore
@echo 開始簽名:
@Rem jarsigner命令格式:-verbose輸出詳細信息 -keystore密鑰庫位置 -signedjar要生成的文件 要簽名的文件 密鑰庫文件
jarsigner -verbose -keystore MyFirstApp.keystore -signedjar MyFirstApp_signed.apk MyFirstApp.apk MyFirstApp.keystore@goto over:sign@echo 開始簽名:
jarsigner -verbose -keystore MyFirstApp.keystore -signedjar MyFirstApp_signed.apk MyFirstApp.apk MyFirstApp.keystore:over@echo ********************MyFirstApp.apk 簽名完成************************pause================以上是一個給應用簽名的完整bat文件,在運行這個bat文件時,還需要按照屏幕提示的步驟輸入一些必要信息,最後生成一個簽名後的文件是:MyFirstApp_signed.apk。簽名完成以後最好再把這個文件壓縮一下,使用Android SDK安裝路徑下tools文件夾里的zipalign進行壓縮,以剛才這個文件為例,也可以寫成一個bat文件,示例如下:
D:\soft\android-sdk-windows\tools\zipalign -c -v 4 MyFirstApp_zip.apkpause================上面的D:\soft\android-sdk-windows用你的實際Android SDK安裝路徑代替。按照以上步驟簽名、壓縮就完成了,最後把壓縮後的那個文件(比如例子中的MyFirstApp_zip.apk文件)復制到手機上就可以正常的安裝運行了。
Ⅸ android 通用簽名有哪些
系統默認的四種簽名類型:
四組默認簽名供Android.mk在編譯APK使用:
1、testkey:普通APK,默認情況下使用。
2、platform:該APK完成一些系統的核心功能。經過對系統中存在的文件夾的訪問測試,這種方式編譯出來的APK所在進程的UID為system。
3、shared:該APK需要和home/contacts進程共享數據。
4、media:該APK是media/download系統中的一環。
應用程序的Android.mk中有一個LOCAL_CERTIFICATE欄位,由它指定用哪個key簽名,未指定的默認用testkey.