Как и все мы, у меня есть приложение, подписанное debug.keystore (по умолчанию), когда оно находится в режиме разработки (сборка). Когда он идет в производство, мы подписываем его нашим закрытым ключом. Есть ли способ определить во время выполнения, что текущий пакет подписан с помощью debug.keystore (находится в режиме разработки) или подписан нашим закрытым ключом (находится в рабочем режиме).
Я пробовал что-то вроде
PackageManager packageManager = getPackageManager();
try {
Signature[] signs = packageManager.getPackageInfo(getPackageName(), PackageManager.GET_SIGNATURES).signatures;
for (Signature signature : signs) {
Log.d(TAG, "sign = " + signature.toCharsString());
}
} catch (NameNotFoundException e) {
e.printStackTrace();
}
Я не знаю, что делать дальше? Это правильный способ сделать это? Как получить сопоставимую подпись debug.keystore?
Я знаю, что существует MD5 Fingerprint keytool -list -keystore ~ / .android / debug.keystore
, но в классе Signature нет «отпечатка пальца md5» метод.
Я хочу сделать это из-за MapView Key, Logging, LicenseChecker и тому подобного.