0

假设我有不同的证书 A 证书和 B 证书,并且我签署了 3 个应用程序(一个带有 A,两个带有 B)

如何检查使用证书 B 签名的表单应用程序是否也使用 B 签名(不是使用 A)

我需要一些方法来以编程方式检查某个应用程序是否使用与其他应用程序相同的证书进行签名

方法存根应该是这样的

public boolean sameCertificate(String packagename1,String packagename2){
//some comparison
//return true/false
}
4

2 回答 2

1
public boolean sameCertificate(Context context, String packageName1, String packageName2) {
    return context.getPackageManager().checkSignatures(packageName1, packageName2) == PackageManager
            .SIGNATURE_MATCH;
}
于 2015-05-18T14:38:16.340 回答
-2

最简单的方法是甚至不需要检查自己——只需在清单中为这两个应用程序提供相同的共享用户 ID;这样,Android 将强制它们必须以相同方式签名。

如果您更喜欢手动方法,您可以使用 PackageManager 获取应用程序的签名。如何获取 APK 签名签名?向您展示更多细节。

于 2013-03-27T11:04:52.480 回答