當前位置:首頁 » 安卓系統 » android應用簽名

android應用簽名

發布時間: 2022-02-24 23:48:05

㈠ Android簽名有什麼作用-apk簽名可以帶來的好處 詳細�0�3

平時我們的程序可以在模擬器上安裝並運行,是因為在應用程序開發期間,由於是以 Debug 面試進行編譯的,因此ADT 根據會自動用默認的密鑰和證書來進行簽名,而在以發布模式編譯時,apk 文件就不會得到自動簽名,這樣就需要進行手工簽名。 給apk 簽名可以帶來以下好處: 1.、應用程序升級:如果你希望用戶無縫升級到新的版本,那麼你必須用同一個證書進行簽名。這是由於只有以同一個證書簽名,系統才會允許安裝升級的應用程序。 如果你採用了不同的證書,那麼系統會要求你的應用程序採用不同的包名稱,在這種情況下相當於安裝了一個全新的應用程序。如果想升級應用程序,簽名證書要相同,包名稱要相同! 2.、應用程序模塊化:Android 系統可以允許同一個證書簽名的多個應用程序在一個進程里運行,系統實際把他們作為一個單個的應用程序,此時就可以把我們的應用程序以模塊的方式進行部署,而用戶可以獨立的升級其中的一個模塊 3.、代碼或者數據共享:Android 提供了基於簽名的許可權機制,那麼一個應用程序就可以為另一個以相同證書簽名的應用程序公開自己的功能。以同一個證書對多個應用程序進行簽名,利用基於簽名的許可權檢查,你就可以在應用程序間以安全的方式共享代碼和數據了。 4.不同的應用程序之間,想共享數據,或者共享代碼,那麼要讓他們運行在同一個進程中,而且要讓他們用相同的證書簽名。

㈡ 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中怎樣將自己的應用程序的簽名改為系統簽名一樣

試試下面方法:
1、在應用程序manifest.xml文件根節點中加入屬性:Android:sharedUserId="android.uid.system"
2.使用已經存在的簽名到處android應用程序的apk
3.使用壓縮軟體打開apk,進入META-INF目錄下,刪除應用程序的3個簽名文件
4.到android系統目錄build/target/proct/security/拷貝系統簽名文件:platform.x509.pem、platform.pk8到應用apk中。
5.利用簽名工具signapk.jar修改應用程序簽名:命令為:java -jar signapk.jar platform.x509.pem platform.pk8 test.apk testnew.apk

㈣ 如何判斷 Android 應用的 Apk 簽名是否一致

Android應用的發布形式apk中包含的簽名加密方法除了RSA還有DSA,所以不能只從apk中提取常見的META-INF/CERT.RSA,應該是檢查apk中具體的簽名文件。
1.FILE="yourapp.apk"
cert_XSA=`jar tf $FILE | grep SA`
此時得到的cert_XSA可能是META-INF/*.RSA或者META-INF/*.DSA。

2.apk中提取具體的簽名文件。
jar xf $FILE $cert_XSA
此時會在當前目錄得到cert_XSA文件。

3.對於得到的簽名文件,提取其中簽名的MD5值
keytool -printcert -file $cert_XSA | grep MD5 > "$FILE.certMD5"
這時候yourapp.certMD5這個文件中就保存了yourapp.apkk中的簽名MD5值。

4.最後比較兩個app的簽名可以用diff
FILE1="yourapp1.apk"
FILE2="yourapp2.apk"
//經過上述步驟得到$FILE1.certMD5和$FILE2.certMD5
certMD5_diff=`diff $FILE1.certMD5 $FILE2.certMD5`
if [ "$certMD5_diff" = "" ]; then
echo "$FILE1.certMD5 == $FILE2.certMD5"
fi
若輸出yourapp1.apk.certMD5 == yourapp2.apk.certMD5那麼這兩個應用的簽名就一致。

㈤ 怎麼給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的APP進行簽名

1、在Android Studio中打開工程,點擊「Build」菜單下的「Generate Signed APK」。

㈦ 如何查看android應用簽名文件的信息

以下介紹查看自己的應用簽名及三方APK或系統APK簽名信息,包含其中的MD5、SHA1、SHA256值和簽名演算法等信息。

1、查看自己的應用簽名可以通過兩種方式查看(1) debug的apk通過Eclipse查看,如下圖:

可以查看簽名的MD5、SHA1、SHA256值及簽名演算法

㈧ 如何查看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值及簽名演算法

㈨ 如何獲取生成安卓應用的應用簽名

public void getSingInfo() {
try {
PackageInfo packageInfo = getPackageManager().getPackageInfo(
"com.example.yao", PackageManager.GET_SIGNATURES);
Signature[] signs = packageInfo.signatures;
Signature sign = signs[0];
parseSignature(sign.toByteArray());
} catch (Exception e) {
e.printStackTrace();
}
}
public void parseSignature(byte[] signature) {
try {
CertificateFactory certFactory = CertificateFactory
.getInstance("X.509");
X509Certificate cert = (X509Certificate) certFactory
.generateCertificate(new ByteArrayInputStream(signature));
String pubKey = cert.getPublicKey().toString();
String signNumber = cert.getSerialNumber().toString();
System.out.println("pubKey:" + pubKey);
System.out.println("signNumber:" + signNumber);
} catch (CertificateException e) {
e.printStackTrace();
}
}

㈩ 如何將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。

熱點內容
i西安編程 發布:2024-04-25 16:55:35 瀏覽:262
核磁看壓縮 發布:2024-04-25 16:37:22 瀏覽:431
訪問不上光貓 發布:2024-04-25 16:13:44 瀏覽:319
部隊電腦配置有哪些 發布:2024-04-25 16:13:43 瀏覽:970
霍曼密碼鎖什麼價位 發布:2024-04-25 16:08:01 瀏覽:750
ftp雙機熱備 發布:2024-04-25 16:03:48 瀏覽:360
我的世界伺服器限制模組 發布:2024-04-25 15:55:32 瀏覽:888
平板電腦能連接雲伺服器嗎 發布:2024-04-25 15:54:05 瀏覽:937
多看怎麼上傳雲 發布:2024-04-25 15:45:31 瀏覽:39
山東ftp 發布:2024-04-25 15:44:46 瀏覽:261