what-the-bank/sources/com/huawei/hms/utils/HMSPackageManager.java

767 lines
30 KiB
Java
Raw Permalink Normal View History

2024-07-27 18:17:47 +07:00
package com.huawei.hms.utils;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ApplicationInfo;
import android.content.pm.ComponentInfo;
import android.content.pm.PackageItemInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.os.Build;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.AndroidException;
import android.util.Pair;
import com.huawei.hms.android.SystemUtils;
import com.huawei.hms.common.HmsCheckedState;
import com.huawei.hms.common.PackageConstants;
import com.huawei.hms.framework.common.ContainerUtils;
import com.huawei.hms.support.api.entity.common.CommonConstant;
import com.huawei.hms.support.log.HMSLog;
import com.huawei.hms.utils.PackageManagerHelper;
import java.security.cert.X509Certificate;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Objects;
/* loaded from: classes2.dex */
public class HMSPackageManager {
/* renamed from: o, reason: collision with root package name */
private static HMSPackageManager f6499o;
private static final Object p = new Object();
private static final Object q = new Object();
private static final Object r = new Object();
private static final Map<String, String> s;
private final Context a;
private final PackageManagerHelper b;
private String c;
private String d;
private int e;
private String f;
private String g;
private String h;
private String i;
private int j;
private int k;
private long l;
private boolean m;
private int n;
/* loaded from: classes2.dex */
public static class PackagePriorityInfo implements Comparable<PackagePriorityInfo> {
private String a;
private String b;
private String c;
private String d;
private String e;
private Long f;
public PackagePriorityInfo(String str, String str2, String str3, String str4, String str5, long j) {
this.a = str;
this.b = str2;
this.c = str3;
this.d = str4;
this.e = str5;
this.f = Long.valueOf(j);
}
@Override // java.lang.Comparable
public int compareTo(PackagePriorityInfo packagePriorityInfo) {
if (TextUtils.equals(this.e, packagePriorityInfo.e)) {
return this.f.compareTo(packagePriorityInfo.f);
}
return this.e.compareTo(packagePriorityInfo.e);
}
}
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes2.dex */
public class a implements Comparator<ResolveInfo> {
final HMSPackageManager a;
a(HMSPackageManager hMSPackageManager) {
this.a = hMSPackageManager;
}
@Override // java.util.Comparator
/* renamed from: a, reason: merged with bridge method [inline-methods] */
public int compare(ResolveInfo resolveInfo, ResolveInfo resolveInfo2) {
String str = (String) PackageItemInfo.class.getField(CommonConstant.ReqAccessTokenParam.PACKAGE_NAME).get(ComponentInfo.class.getField("applicationInfo").get(resolveInfo.serviceInfo));
String str2 = (String) PackageItemInfo.class.getField(CommonConstant.ReqAccessTokenParam.PACKAGE_NAME).get(ComponentInfo.class.getField("applicationInfo").get(resolveInfo2.serviceInfo));
if (HMSPackageManager.s.containsKey(str) && HMSPackageManager.s.containsKey(str2)) {
return str.compareTo(str2);
}
if (HMSPackageManager.s.containsKey(str)) {
return -1;
}
return HMSPackageManager.s.containsKey(str2) ? 1 : 0;
}
}
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes2.dex */
public class b implements Runnable {
final HMSPackageManager a;
b(HMSPackageManager hMSPackageManager) {
this.a = hMSPackageManager;
}
@Override // java.lang.Runnable
public void run() {
HMSLog.i("HMSPackageManager", "enter asyncOnceCheckMDMState");
try {
List<ResolveInfo> queryIntentServices = this.a.a.getPackageManager().queryIntentServices(new Intent("com.huawei.hms.core.aidlservice"), 128);
if (queryIntentServices == null || queryIntentServices.size() == 0) {
return;
}
Iterator<ResolveInfo> it = queryIntentServices.iterator();
while (it.hasNext()) {
if ("com.huawei.hwid".equals(PackageItemInfo.class.getField(CommonConstant.ReqAccessTokenParam.PACKAGE_NAME).get(ComponentInfo.class.getField("applicationInfo").get(it.next().serviceInfo)))) {
this.a.d();
}
}
HMSLog.i("HMSPackageManager", "quit asyncOnceCheckMDMState");
} catch (Exception e) {
StringBuilder sb = new StringBuilder("asyncOnceCheckMDMState query hms action failed. ");
sb.append(e.getMessage());
HMSLog.e("HMSPackageManager", sb.toString());
}
}
}
static {
HashMap hashMap = new HashMap();
s = hashMap;
hashMap.put("com.huawei.hwid", "B92825C2BD5D6D6D1E7F39EECD17843B7D9016F611136B75441BC6F4D3F00F05");
hashMap.put("com.huawei.hwid.tv", "3517262215D8D3008CBF888750B6418EDC4D562AC33ED6874E0D73ABA667BC3C");
}
private HMSPackageManager(Context context) {
this.a = context;
this.b = new PackageManagerHelper(context);
}
private boolean c(String str, String str2) {
return Objects.equals(str2, this.b.getPackageSigningCertificate(str)) || Objects.equals(str2, this.b.getPackageSignature(str));
}
private Pair<String, String> d(String str, String str2) {
if (!s.containsKey(str) || !PackageConstants.SERVICES_SIGNATURE_V3.equalsIgnoreCase(str2)) {
return null;
}
this.n = 3;
return new Pair<>(str, str2);
}
private void e(String str) {
if (SystemUtils.isHuawei() || SystemUtils.isSystemApp(this.a, str) || Build.VERSION.SDK_INT < 28 || b(str)) {
AgHmsUpdateState.getInstance().setCheckedState(HmsCheckedState.NOT_NEED_UPDATE);
}
}
private void f() {
synchronized (q) {
this.c = null;
this.d = null;
this.e = 0;
}
}
public static HMSPackageManager getInstance(Context context) {
synchronized (p) {
if (f6499o == null && context != null) {
if (context.getApplicationContext() != null) {
f6499o = new HMSPackageManager(context.getApplicationContext());
} else {
f6499o = new HMSPackageManager(context);
}
f6499o.k();
f6499o.b();
}
}
return f6499o;
}
private Pair<String, String> h() {
Pair<String, String> g = g();
if (g != null) {
StringBuilder sb = new StringBuilder("aidlService pkgName: ");
sb.append((String) g.first);
HMSLog.i("HMSPackageManager", sb.toString());
this.h = "com.huawei.hms.core.aidlservice";
this.i = null;
return g;
}
ArrayList<PackagePriorityInfo> i = i();
if (i == null) {
HMSLog.e("HMSPackageManager", "PackagePriorityInfo list is null");
return null;
}
Iterator<PackagePriorityInfo> it = i.iterator();
while (it.hasNext()) {
PackagePriorityInfo next = it.next();
String str = next.a;
String str2 = next.b;
String str3 = next.c;
String str4 = next.d;
String packageSignature = this.b.getPackageSignature(str);
StringBuilder sb2 = new StringBuilder();
sb2.append(str);
sb2.append(ContainerUtils.FIELD_DELIMITER);
sb2.append(packageSignature);
sb2.append(ContainerUtils.FIELD_DELIMITER);
sb2.append(str2);
if (a(sb2.toString(), str3, str4)) {
StringBuilder sb3 = new StringBuilder("result: ");
sb3.append(str);
sb3.append(", ");
sb3.append(str2);
sb3.append(", ");
sb3.append(next.f);
HMSLog.i("HMSPackageManager", sb3.toString());
this.h = PackageConstants.GENERAL_SERVICES_ACTION;
d(str2);
return new Pair<>(str, packageSignature);
}
}
return null;
}
private ArrayList<PackagePriorityInfo> i() {
try {
List<ResolveInfo> queryIntentServices = this.a.getPackageManager().queryIntentServices(new Intent(PackageConstants.GENERAL_SERVICES_ACTION), 128);
if (queryIntentServices != null && !queryIntentServices.isEmpty()) {
ArrayList<PackagePriorityInfo> arrayList = new ArrayList<>();
for (ResolveInfo resolveInfo : queryIntentServices) {
String str = (String) PackageItemInfo.class.getField(CommonConstant.ReqAccessTokenParam.PACKAGE_NAME).get(ComponentInfo.class.getField("applicationInfo").get(resolveInfo.serviceInfo));
long packageFirstInstallTime = this.b.getPackageFirstInstallTime(str);
Bundle bundle = (Bundle) PackageItemInfo.class.getField("metaData").get(resolveInfo.serviceInfo);
if (bundle == null) {
StringBuilder sb = new StringBuilder("package ");
sb.append(str);
sb.append(" get metaData is null");
HMSLog.e("HMSPackageManager", sb.toString());
} else {
String a2 = a(bundle, "hms_app_checker_config");
String a3 = a(a2);
if (TextUtils.isEmpty(a3)) {
HMSLog.i("HMSPackageManager", "get priority fail. hmsCheckerCfg: ".concat(String.valueOf(a2)));
} else {
String a4 = a(bundle, "hms_app_signer_v2");
if (TextUtils.isEmpty(a4)) {
HMSLog.i("HMSPackageManager", "get signerV2 fail.");
} else {
String a5 = a(bundle, "hms_app_cert_chain");
if (TextUtils.isEmpty(a5)) {
HMSLog.i("HMSPackageManager", "get certChain fail.");
} else {
StringBuilder sb2 = new StringBuilder("add: ");
sb2.append(str);
sb2.append(", ");
sb2.append(a2);
sb2.append(", ");
sb2.append(packageFirstInstallTime);
HMSLog.i("HMSPackageManager", sb2.toString());
arrayList.add(new PackagePriorityInfo(str, a2, a4, a5, a3, packageFirstInstallTime));
}
}
}
}
}
Collections.sort(arrayList);
return arrayList;
}
HMSLog.e("HMSPackageManager", "query aglite action, resolveInfoList is null or empty");
return null;
} catch (Exception e) {
StringBuilder sb3 = new StringBuilder("query aglite action failed. ");
sb3.append(e.getMessage());
HMSLog.e("HMSPackageManager", sb3.toString());
return null;
}
}
private void j() {
synchronized (q) {
Pair<String, String> g = g();
if (g == null) {
HMSLog.e("HMSPackageManager", "<initHmsPackageInfo> Failed to find HMS apk");
f();
return;
}
String str = (String) g.first;
this.c = str;
this.d = (String) g.second;
this.e = this.b.getPackageVersionCode(str);
StringBuilder sb = new StringBuilder("<initHmsPackageInfo> Succeed to find HMS apk: ");
sb.append(this.c);
sb.append(" version: ");
sb.append(this.e);
HMSLog.i("HMSPackageManager", sb.toString());
}
}
private void k() {
synchronized (q) {
Pair<String, String> h = h();
if (h == null) {
HMSLog.e("HMSPackageManager", "<initHmsPackageInfoForMultiService> Failed to find HMS apk");
e();
AgHmsUpdateState.getInstance().setCheckedState(HmsCheckedState.NOT_NEED_UPDATE);
return;
}
this.f = (String) h.first;
this.g = (String) h.second;
this.j = this.b.getPackageVersionCode(getHMSPackageNameForMultiService());
e(this.f);
StringBuilder sb = new StringBuilder("<initHmsPackageInfoForMultiService> Succeed to find HMS apk: ");
sb.append(this.f);
sb.append(" version: ");
sb.append(this.j);
HMSLog.i("HMSPackageManager", sb.toString());
}
}
private boolean l() {
Bundle bundle;
PackageManager packageManager = this.a.getPackageManager();
if (packageManager == null) {
HMSLog.e("HMSPackageManager", "In isMinApkVersionEffective, Failed to get 'PackageManager' instance.");
return true;
}
try {
} catch (AndroidException unused) {
HMSLog.e("HMSPackageManager", "In isMinApkVersionEffective, Failed to read meta data for HMSCore API level.");
} catch (RuntimeException e) {
HMSLog.e("HMSPackageManager", "In isMinApkVersionEffective, Failed to read meta data for HMSCore API level.", e);
}
if (!TextUtils.isEmpty(this.h) && (this.h.equals(PackageConstants.GENERAL_SERVICES_ACTION) || this.h.equals(PackageConstants.INTERNAL_SERVICES_ACTION))) {
StringBuilder sb = new StringBuilder("action = ");
sb.append(this.h);
sb.append(" exist");
HMSLog.i("HMSPackageManager", sb.toString());
return false;
}
ApplicationInfo applicationInfo = packageManager.getPackageInfo(getHMSPackageName(), 128).applicationInfo;
if (applicationInfo != null && (bundle = (Bundle) PackageItemInfo.class.getField("metaData").get(applicationInfo)) != null && bundle.containsKey("com.huawei.hms.kit.api_level:hmscore") && (getHmsVersionCode() >= 50000000 || getHmsVersionCode() <= 19999999)) {
HMSLog.i("HMSPackageManager", "MinApkVersion is disabled.");
return false;
}
return true;
}
public String getHMSPackageName() {
HMSLog.i("HMSPackageManager", "Enter getHMSPackageName");
refresh();
String str = this.c;
if (str != null) {
if (PackageManagerHelper.PackageStates.NOT_INSTALLED.equals(this.b.getPackageStates(str))) {
HMSLog.i("HMSPackageManager", "The package name is not installed and needs to be refreshed again");
j();
}
String str2 = this.c;
if (str2 != null) {
return str2;
}
}
HMSLog.i("HMSPackageManager", "return default packageName: com.huawei.hwid");
return "com.huawei.hwid";
}
public String getHMSPackageNameForMultiService() {
HMSLog.i("HMSPackageManager", "Enter getHMSPackageNameForMultiService");
refreshForMultiService();
String str = this.f;
if (str != null) {
if (PackageManagerHelper.PackageStates.NOT_INSTALLED.equals(this.b.getPackageStates(str))) {
HMSLog.i("HMSPackageManager", "The package name is not installed and needs to be refreshed again");
k();
}
String str2 = this.f;
if (str2 != null) {
return str2;
}
}
HMSLog.i("HMSPackageManager", "return default packageName: com.huawei.hwid");
return "com.huawei.hwid";
}
public PackageManagerHelper.PackageStates getHMSPackageStates() {
synchronized (p) {
refresh();
PackageManagerHelper.PackageStates packageStates = this.b.getPackageStates(this.c);
PackageManagerHelper.PackageStates packageStates2 = PackageManagerHelper.PackageStates.NOT_INSTALLED;
if (packageStates == packageStates2) {
f();
return packageStates2;
}
if ("com.huawei.hwid".equals(this.c) && d() == 1) {
return PackageManagerHelper.PackageStates.SPOOF;
}
return (packageStates != PackageManagerHelper.PackageStates.ENABLED || c(this.c, this.d)) ? packageStates : packageStates2;
}
}
public PackageManagerHelper.PackageStates getHMSPackageStatesForMultiService() {
synchronized (p) {
refreshForMultiService();
PackageManagerHelper.PackageStates packageStates = this.b.getPackageStates(this.f);
PackageManagerHelper.PackageStates packageStates2 = PackageManagerHelper.PackageStates.NOT_INSTALLED;
if (packageStates == packageStates2) {
e();
return packageStates2;
}
if ("com.huawei.hwid".equals(this.f) && d() == 1) {
return PackageManagerHelper.PackageStates.SPOOF;
}
return (packageStates != PackageManagerHelper.PackageStates.ENABLED || c(this.f, this.g)) ? packageStates : packageStates2;
}
}
public int getHmsMultiServiceVersion() {
return this.b.getPackageVersionCode(getHMSPackageNameForMultiService());
}
public int getHmsVersionCode() {
return this.b.getPackageVersionCode(getHMSPackageName());
}
public String getServiceAction() {
return !TextUtils.isEmpty(this.h) ? this.h : "com.huawei.hms.core.aidlservice";
}
public boolean isApkNeedUpdate(int i) {
int hmsVersionCode = getHmsVersionCode();
StringBuilder sb = new StringBuilder("current versionCode:");
sb.append(hmsVersionCode);
sb.append(", target version requirements: ");
sb.append(i);
HMSLog.i("HMSPackageManager", sb.toString());
return hmsVersionCode < i;
}
public boolean isApkUpdateNecessary(int i) {
if (isUpdateHmsForThirdPartyDevice()) {
return true;
}
int hmsVersionCode = getHmsVersionCode();
StringBuilder sb = new StringBuilder("current versionCode:");
sb.append(hmsVersionCode);
sb.append(", minimum version requirements: ");
sb.append(i);
HMSLog.i("HMSPackageManager", sb.toString());
return l() && hmsVersionCode < i;
}
public boolean isUpdateHmsForThirdPartyDevice() {
return "com.huawei.hwid".equals(this.f) && AgHmsUpdateState.getInstance().isUpdateHms();
}
public void refresh() {
if (TextUtils.isEmpty(this.c) || TextUtils.isEmpty(this.d)) {
j();
}
c(this.c);
}
public void refreshForMultiService() {
if (TextUtils.isEmpty(this.f) || TextUtils.isEmpty(this.g)) {
k();
}
c(this.f);
}
public void resetMultiServiceState() {
e();
}
private boolean b(String str) {
return !"com.huawei.hwid".equals(str) || this.n == 3;
}
private Pair<String, String> g() {
try {
List<ResolveInfo> queryIntentServices = this.a.getPackageManager().queryIntentServices(new Intent("com.huawei.hms.core.aidlservice"), 128);
if (queryIntentServices != null && queryIntentServices.size() != 0) {
a(queryIntentServices);
for (ResolveInfo resolveInfo : queryIntentServices) {
String str = (String) PackageItemInfo.class.getField(CommonConstant.ReqAccessTokenParam.PACKAGE_NAME).get(ComponentInfo.class.getField("applicationInfo").get(resolveInfo.serviceInfo));
String packageSigningCertificate = this.b.getPackageSigningCertificate(str);
String packageSignature = this.b.getPackageSignature(str);
Pair<String, String> d = d(str, packageSigningCertificate);
if (d != null) {
HMSLog.i("HMSPackageManager", "signature V3 check success");
return d;
}
Pair<String, String> a2 = a((Bundle) PackageItemInfo.class.getField("metaData").get(resolveInfo.serviceInfo), str, packageSigningCertificate, packageSignature);
if (a2 != null) {
HMSLog.i("HMSPackageManager", "DSS signature check success");
return a2;
}
Pair<String, String> a3 = a(str, packageSignature);
if (a3 != null) {
HMSLog.i("HMSPackageManager", "signature V2 check success");
return a3;
}
}
return null;
}
HMSLog.e("HMSPackageManager", "query hms action, resolveInfoList is null or empty.");
return null;
} catch (Exception e) {
StringBuilder sb = new StringBuilder("getHmsPackageName query hms action failed. ");
sb.append(e.getMessage());
HMSLog.e("HMSPackageManager", sb.toString());
return null;
}
}
private void a(List<ResolveInfo> list) {
if (list.size() <= 1) {
return;
}
Collections.sort(list, new a(this));
}
private boolean b(String str, String str2) {
Map<String, String> map = s;
return map.containsKey(str) && map.get(str).equalsIgnoreCase(str2);
}
private void c(String str) {
if ("com.huawei.hwid".equals(str) && AgHmsUpdateState.getInstance().isUpdateHms() && this.b.getPackageVersionCode(str) >= AgHmsUpdateState.getInstance().getTargetVersionCode()) {
AgHmsUpdateState.getInstance().resetUpdateState();
HMSLog.i("HMSPackageManager", "refresh update state for HMS V3");
}
}
public boolean hmsVerHigherThan(int i) {
if (this.e >= i || !l()) {
return true;
}
int packageVersionCode = this.b.getPackageVersionCode(getHMSPackageName());
this.e = packageVersionCode;
return packageVersionCode >= i;
}
private void b() {
new Thread(new b(this), "Thread-asyncOnceCheckMDMState").start();
}
private void d(String str) {
String a2 = a(str);
if (TextUtils.isEmpty(a2)) {
return;
}
this.i = a2.substring(9);
}
private void e() {
synchronized (q) {
this.f = null;
this.g = null;
this.h = null;
this.i = null;
this.j = 0;
}
}
private Pair<String, String> a(Bundle bundle, String str, String str2, String str3) {
String str4;
if (bundle == null) {
StringBuilder sb = new StringBuilder("DSS check: ");
sb.append(str);
sb.append(" for metadata is null");
HMSLog.e("HMSPackageManager", sb.toString());
return null;
}
this.n = 2;
if (a(bundle, str, str2)) {
HMSLog.i("HMSPackageManager", "support DSS V3 check");
str3 = str2;
str4 = "hms_app_signer_v3";
} else {
str4 = "hms_app_signer";
}
if (!bundle.containsKey(str4)) {
StringBuilder sb2 = new StringBuilder("skip package ");
sb2.append(str);
sb2.append(" for no ");
sb2.append(str4);
HMSLog.e("HMSPackageManager", sb2.toString());
return null;
}
if (!bundle.containsKey("hms_app_cert_chain")) {
StringBuilder sb3 = new StringBuilder("skip package ");
sb3.append(str);
sb3.append(" for no cert chain");
HMSLog.e("HMSPackageManager", sb3.toString());
return null;
}
StringBuilder sb4 = new StringBuilder();
sb4.append(str);
sb4.append(ContainerUtils.FIELD_DELIMITER);
sb4.append(str3);
if (!a(sb4.toString(), bundle.getString(str4), bundle.getString("hms_app_cert_chain"))) {
HMSLog.e("HMSPackageManager", "checkSigner failed");
return null;
}
if (str4.equals("hms_app_signer_v3")) {
this.n = 3;
}
return new Pair<>(str, str3);
}
/* JADX INFO: Access modifiers changed from: private */
public int d() {
synchronized (r) {
HMSLog.i("HMSPackageManager", "enter checkHmsIsSpoof");
long packageFirstInstallTime = this.b.getPackageFirstInstallTime("com.huawei.hwid");
if (this.k != 3 && this.l == packageFirstInstallTime) {
StringBuilder sb = new StringBuilder("quit checkHmsIsSpoof cached state: ");
sb.append(a(this.k));
HMSLog.i("HMSPackageManager", sb.toString());
return this.k;
}
this.k = c() ? 2 : 1;
this.l = this.b.getPackageFirstInstallTime("com.huawei.hwid");
StringBuilder sb2 = new StringBuilder("quit checkHmsIsSpoof state: ");
sb2.append(a(this.k));
HMSLog.i("HMSPackageManager", sb2.toString());
return this.k;
}
}
private boolean c() {
String hmsPath = ReadApkFileUtil.getHmsPath(this.a);
if (hmsPath == null) {
HMSLog.i("HMSPackageManager", "hmsPath is null!");
return false;
}
if (!ReadApkFileUtil.isCertFound(hmsPath)) {
HMSLog.i("HMSPackageManager", "NO huawer.cer in HMS!");
return false;
}
if (!ReadApkFileUtil.checkSignature()) {
HMSLog.i("HMSPackageManager", "checkSignature fail!");
return false;
}
if (ReadApkFileUtil.verifyApkHash(hmsPath)) {
return true;
}
HMSLog.i("HMSPackageManager", "verifyApkHash fail!");
return false;
}
private Pair<String, String> a(String str, String str2) {
if (b(str, str2)) {
return new Pair<>(str, str2);
}
StringBuilder sb = new StringBuilder("check sign fail: ");
sb.append(str);
sb.append("_");
sb.append(str2);
HMSLog.w("HMSPackageManager", sb.toString());
return null;
}
private boolean a(Bundle bundle, String str, String str2) {
return bundle.containsKey("hms_app_signer_v3") && !b(str, str2) && Build.VERSION.SDK_INT >= 28;
}
private String a(Bundle bundle, String str) {
if (!bundle.containsKey(str)) {
StringBuilder sb = new StringBuilder("no ");
sb.append(str);
sb.append(" in metaData");
HMSLog.e("HMSPackageManager", sb.toString());
return null;
}
return bundle.getString(str);
}
private String a(String str) {
if (TextUtils.isEmpty(str)) {
return null;
}
int indexOf = str.indexOf("priority=");
if (indexOf == -1) {
HMSLog.e("HMSPackageManager", "get indexOfIdentifier -1");
return null;
}
int indexOf2 = str.indexOf(",", indexOf);
if (indexOf2 == -1) {
indexOf2 = str.length();
}
return str.substring(indexOf, indexOf2);
}
private boolean a(String str, String str2, String str3) {
if (!TextUtils.isEmpty(str2) && !TextUtils.isEmpty(str3)) {
List<X509Certificate> b2 = com.huawei.hms.device.a.b(str3);
if (b2.size() == 0) {
HMSLog.e("HMSPackageManager", "certChain is empty");
return false;
}
if (!com.huawei.hms.device.a.a(com.huawei.hms.device.a.a(this.a), b2)) {
HMSLog.e("HMSPackageManager", "failed to verify cert chain");
return false;
}
X509Certificate x509Certificate = b2.get(b2.size() - 1);
if (!com.huawei.hms.device.a.a(x509Certificate, "Huawei CBG HMS")) {
HMSLog.e("HMSPackageManager", "CN is invalid");
return false;
}
if (!com.huawei.hms.device.a.b(x509Certificate, "Huawei CBG Cloud Security Signer")) {
HMSLog.e("HMSPackageManager", "OU is invalid");
return false;
}
if (com.huawei.hms.device.a.a(x509Certificate, str, str2)) {
return true;
}
HMSLog.e("HMSPackageManager", "signature is invalid: ".concat(String.valueOf(str)));
return false;
}
HMSLog.e("HMSPackageManager", "args is invalid");
return false;
}
private static String a(int i) {
if (i == 1) {
return "SPOOFED";
}
if (i == 2) {
return "SUCCESS";
}
if (i == 3) {
return "UNCHECKED";
}
HMSLog.e("HMSPackageManager", "invalid checkMDM state: ".concat(String.valueOf(i)));
return "";
}
public void setUseOldCertificate(boolean z) {
this.m = z;
}
public boolean isUseOldCertificate() {
return this.m;
}
public String getInnerServiceAction() {
return PackageConstants.INTERNAL_SERVICES_ACTION;
}
public String getHMSFingerprint() {
String str = this.d;
return str == null ? "B92825C2BD5D6D6D1E7F39EECD17843B7D9016F611136B75441BC6F4D3F00F05" : str;
}
}