discord-jadx/app/src/main/java/androidx/browser/trusted/Token.java

46 lines
1.4 KiB
Java

package androidx.browser.trusted;
import android.content.pm.PackageManager;
import android.util.Log;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import java.io.IOException;
import java.util.List;
public final class Token {
private static final String TAG = "Token";
@NonNull
private final TokenContents mContents;
private Token(@NonNull TokenContents tokenContents) {
this.mContents = tokenContents;
}
@Nullable
public static Token create(@NonNull String str, @NonNull PackageManager packageManager) {
List<byte[]> fingerprintsForPackage = PackageIdentityUtils.getFingerprintsForPackage(str, packageManager);
if (fingerprintsForPackage == null) {
return null;
}
try {
return new Token(TokenContents.create(str, fingerprintsForPackage));
} catch (IOException e) {
Log.e("Token", "Exception when creating token.", e);
return null;
}
}
@NonNull
public static Token deserialize(@NonNull byte[] bArr) {
return new Token(TokenContents.deserialize(bArr));
}
public boolean matches(@NonNull String str, @NonNull PackageManager packageManager) {
return PackageIdentityUtils.packageMatchesToken(str, packageManager, this.mContents);
}
@NonNull
public byte[] serialize() {
return this.mContents.serialize();
}
}