關於android簽名的基本概念,我在之前的文章已經提過:
android如何簽名
但是這個簽名應該如何獲取呢?
這個簽名工具可以查詢三種簽名。
這個沒有什麼好說的,我就直接附**吧,需要注意的是,要想獲取應用簽名,需要應用的包名,通過包名可以得到packageinfo
/**
* 獲取簽名的md5摘要
*/public static
string getsignaturedigest(packageinfo pkginfo)
signature signature = pkginfo.signatures[0];
messagedigest md5 = null;
try catch (nosuchalgorithmexception e)
byte digest = md5.digest(signature.tobytearray()); // get digest with md5 algorithm
return tohexstring(digest);
}/**
* 將位元組陣列轉化為對應的十六進製制字串
*/private static
string tohexstring(byte rawbytearray)
return
newstring(chars);
}private static final char hex_char = ;複製**
這時候我們得到的字串就是md5簽名,各個平台需要填寫的簽名都是全小寫的,通過tolowercase再轉成小寫即可。
private static
string facebookhashkey(packageinfo info)
} catch (nosuchalgorithmexception e)
return
null;
}複製**
有人可能會問函式名為什麼叫facebookhashkey,其實當時在用的時候是需要為facebook的授權提供keyhash,後來發現許多國外平台都需要這個,而國內平台需要的簽名都是md5
public static
string getcertificatesha1fingerprint(packageinfo packageinfo) catch (certificateexception e)
x509certificate c = null;
try catch (certificateexception e)
string hexstring = null;
try catch (nosuchalgorithmexception e1) catch (certificateencodingexception e)
return hexstring;
}private static
string byte2hexformatted(byte arr)
return str.tostring();
}複製**
Android 獲取應用簽名
android studio中獲取應用簽名通過在as的terminal中,keystore路徑下執行 1 debug版本 android studio會預設生成乙個debug.keystore簽名檔案,它的預設位置在 home android debug.keystore 2 release版本 首...
Android應用程式簽名
android系統要求所有的程式經過數字簽名才能安裝,如果沒有可用的數字簽名,系統將不許安裝執行此程式,不管是模擬器還是真實手機。因此,在裝置或者是模擬器上執行除錯程式之前,必須為應用程式設定數字簽名。android 系統僅僅會在安裝的時候測試簽名證書的有效期,如果應用程式的簽名是在安裝之後才到期,...
Android 應用程式簽名
android應用程式簽名相關的理論知識包括 什麼是簽名 為什麼要給應用程式簽名 如何給應用程式簽名等。1 什麼是簽名?如果這個問題不是放在android開發中來問,如果是放在乙個普通的版塊,我想大家都知道簽名的含義。可往往就是將一些生活中常用的術語放在計算機這種專業領域,大家就開始迷惑了。計算機所...