处理 SonarQube 问题

1. 移除冗余判断
2. 处理可空异常
3. 处理捕获 InteruptionException 的状态
4. 调整类是否一致的判断方式
This commit is contained in:
juntao
2021-12-22 10:58:25 +08:00
parent 4eba49b625
commit 53a9f408e7
12 changed files with 23 additions and 23 deletions

View File

@ -15,6 +15,7 @@ import android.os.Bundle;
import android.os.PowerManager;
import android.text.TextUtils;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.android.apksig.ApkVerifier;
@ -226,6 +227,7 @@ public class PackageUtils {
* String[1] 为接口风格的公钥字符串
* 请自行根据需要取用
*/
@NonNull
public static String[] getApkSignatureByPackageName(Context context, String packageName) {
try {
PackageInfo packageInfo = context.getApplicationContext().getPackageManager()
@ -334,7 +336,7 @@ public class PackageUtils {
* 解析签名
*/
private static String[] parseSignature(byte[] signature) {
String[] ret = null;
String[] ret;
try {
CertificateFactory certFactory = CertificateFactory.getInstance("X.509");
X509Certificate cert = (X509Certificate) certFactory.generateCertificate(
@ -344,6 +346,7 @@ public class PackageUtils {
ret[1] = "DSAPublicKey{" + ApkSigningBlockUtilsLite.toHex(cert.getPublicKey().getEncoded()) + "}";
}
} catch (CertificateException e) {
ret = new String[]{null, null};
e.printStackTrace();
}
return ret;
@ -842,6 +845,9 @@ public class PackageUtils {
process.waitFor();
} catch (Exception e) {
e.printStackTrace();
if (e instanceof InterruptedException) {
Thread.currentThread().interrupt();
}
} finally {
if (bufferedReader != null)
try {