*/function getcertificatesha 1 fingerprint(){//獲取包管理器letpm = context。getpackagemanager()//獲取當前要獲取的SHA包名稱。也可以使用其他包名,但需要註意的是//使用其他包名的前提是,該方法傳遞的參數Context應該是對應的包tpackagename = Context . get package name();//返回簽名信息letflags = packagemanager。獲取包中包含的_ signatures//獲取包的所有內容信息類,讓packageinfo =。getpackageinfo(package name,flags);//簽名信息let signatures = packageinfo。簽名;Etcert =簽名【0】。toByteArray()//將名稱轉換為字節數組流,etinpenettearrayinputstream(cert);//證書工廠類,實現了工廠證書算法的功能,讓cf = certificatefactory。getinstance(“x509“);//X509證書,X.509是很常見的證書格式let c = cf.generate certificate(輸入);//加密算法類,其中的參數可以使加密算法如MD4和MD5 let MD = messagedigest。getinstance(“sha 1“);//獲取公鑰let公鑰= MD . digest(c . Get encoded());//從字節到十六進制的格式轉換Let Hexstring = Byte2Hexformatted(公鑰);返回hexString//下面是函數byte 2 hex formated(arr),用於將獲得的代碼轉換為16 { let str = new stringbuilder(arr。長度* 2);for(設I = 0;I 2)h = h . substring(l-2,l);str . append(h . toupper case()if(I