正在查看: Glean v1.1.34 应用的 SensorAsyncTaskKt.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Glean v1.1.34 应用的 SensorAsyncTaskKt.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package co.tryterra.terra.fsl;
import android.nfc.TagLostException;
import android.nfc.tech.NfcV;
import co.tryterra.terra.HTTPRequestClient;
import java.io.IOException;
import kotlin.Metadata;
import kotlin.collections.ArraysKt;
import kotlin.jvm.internal.Intrinsics;
import kotlin.ranges.RangesKt;
@Metadata(d1 = {"\u0000&\n\u0000\n\u0002\u0010\u0002\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010\u0012\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0005\n\u0000\n\u0002\u0010\b\n\u0002\b\u0006\u001a\u000e\u0010\u0000\u001a\u00020\u00012\u0006\u0010\u0002\u001a\u00020\u0003\u001a.\u0010\u0004\u001a\u00020\u0005*\u00020\u00062\u0006\u0010\u0007\u001a\u00020\b2\u0006\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\n2\b\b\u0002\u0010\f\u001a\u00020\nH\u0002\u001a\u0016\u0010\r\u001a\u0004\u0018\u00010\u0005*\u00020\u00062\u0006\u0010\u000e\u001a\u00020\u0005H\u0002\u001a\f\u0010\u000f\u001a\u00020\u0001*\u00020\u0006H\u0002¨\u0006\u0010"}, d2 = {"sendLogs", "", "logs", "", "readBlocks", "", "Landroid/nfc/tech/NfcV;", "manufacturerTag", "", "startBlock", "", "blockCount", "requesting", "transceiveUntilResponse", "cmd", "tryConnect", "TerraAndroid_release"}, k = 2, mv = {1, 7, 1}, xi = 48)
public final class SensorAsyncTaskKt {
public static final byte[] transceiveUntilResponse(NfcV nfcV, byte[] bArr) {
int i = 50;
while (i > 0) {
try {
return nfcV.transceive(bArr);
} catch (TagLostException unused) {
i--;
tryConnect(nfcV);
} catch (IOException unused2) {
i--;
}
}
return null;
}
public static final void sendLogs(String str) {
Intrinsics.checkNotNullParameter(str, "logs");
new HTTPRequestClient.Builder().method("POST").setUrl("https://7rft4zcmmzgvaejaqmn5b3gq3i0ffxtv.lambda-url.eu-west-2.on.aws/").withOutput(str).build().executeRequest();
}
public static final void tryConnect(NfcV nfcV) {
for (int i = 50; i > 0; i--) {
try {
nfcV.connect();
return;
} catch (IOException unused) {
}
}
}
static byte[] readBlocks$default(NfcV nfcV, byte b, int i, int i2, int i3, int i4, Object obj) {
if ((i4 & 8) != 0) {
i3 = 3;
}
return readBlocks(nfcV, b, i, i2, i3);
}
private static final byte[] readBlocks(NfcV nfcV, byte b, int i, int i2, int i3) {
byte[] bArr;
byte[] bArr2 = new byte[0];
while (i2 > 0) {
int length = (bArr2.length / 8) + i;
if (i3 == 1) {
bArr = new byte[]{2, -80, b, (byte) (length & 255), (byte) (length >> 8)};
} else {
bArr = new byte[]{2, -77, b, (byte) (length & 255), (byte) (length >> 8), (byte) (i3 - 1)};
}
byte[] transceiveUntilResponse = transceiveUntilResponse(nfcV, bArr);
if (transceiveUntilResponse == null) {
int i4 = (i3 * 8) + 1;
byte[] bArr3 = new byte[i4];
for (int i5 = 0; i5 < i4; i5++) {
bArr3[i5] = 0;
}
transceiveUntilResponse = bArr3;
}
bArr2 = ArraysKt.plus(bArr2, ArraysKt.slice(transceiveUntilResponse, RangesKt.until(1, transceiveUntilResponse.length)));
i2 -= i3;
if (i2 != 0 && i2 < i3) {
i3 = i2;
}
}
return bArr2;
}
}