93 lines
4.1 KiB
Java
93 lines
4.1 KiB
Java
package io.fabric.sdk.android.services.settings;
|
|
|
|
import android.content.res.Resources;
|
|
import io.fabric.sdk.android.Fabric;
|
|
import io.fabric.sdk.android.Kit;
|
|
import io.fabric.sdk.android.KitInfo;
|
|
import io.fabric.sdk.android.services.common.AbstractSpiCall;
|
|
import io.fabric.sdk.android.services.common.CommonUtils;
|
|
import io.fabric.sdk.android.services.common.ResponseParser;
|
|
import io.fabric.sdk.android.services.network.HttpMethod;
|
|
import io.fabric.sdk.android.services.network.HttpRequest;
|
|
import io.fabric.sdk.android.services.network.HttpRequestFactory;
|
|
import java.io.Closeable;
|
|
import java.io.InputStream;
|
|
import java.util.Collection;
|
|
import java.util.Locale;
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
/* loaded from: classes2.dex */
|
|
public abstract class AbstractAppSpiCall extends AbstractSpiCall implements AppSpiCall {
|
|
public AbstractAppSpiCall(Kit kit, String str, String str2, HttpRequestFactory httpRequestFactory, HttpMethod httpMethod) {
|
|
super(kit, str, str2, httpRequestFactory, httpMethod);
|
|
}
|
|
|
|
private HttpRequest b(HttpRequest httpRequest, AppRequestData appRequestData) {
|
|
httpRequest.e("app[identifier]", appRequestData.b);
|
|
httpRequest.e("app[name]", appRequestData.f);
|
|
httpRequest.e("app[display_version]", appRequestData.c);
|
|
httpRequest.e("app[build_version]", appRequestData.d);
|
|
httpRequest.a("app[source]", Integer.valueOf(appRequestData.g));
|
|
httpRequest.e("app[minimum_sdk_version]", appRequestData.h);
|
|
httpRequest.e("app[built_sdk_version]", appRequestData.i);
|
|
if (!CommonUtils.a(appRequestData.e)) {
|
|
httpRequest.e("app[instance_identifier]", appRequestData.e);
|
|
}
|
|
if (appRequestData.j != null) {
|
|
InputStream inputStream = null;
|
|
try {
|
|
try {
|
|
inputStream = this.e.d().getResources().openRawResource(appRequestData.j.b);
|
|
httpRequest.e("app[icon][hash]", appRequestData.j.a);
|
|
httpRequest.a("app[icon][data]", "icon.png", "application/octet-stream", inputStream);
|
|
httpRequest.a("app[icon][width]", Integer.valueOf(appRequestData.j.c));
|
|
httpRequest.a("app[icon][height]", Integer.valueOf(appRequestData.j.d));
|
|
} catch (Resources.NotFoundException e) {
|
|
Fabric.g().b("Fabric", "Failed to find app icon with resource ID: " + appRequestData.j.b, e);
|
|
}
|
|
} finally {
|
|
CommonUtils.a((Closeable) inputStream, "Failed to close app icon InputStream.");
|
|
}
|
|
}
|
|
Collection<KitInfo> collection = appRequestData.k;
|
|
if (collection != null) {
|
|
for (KitInfo kitInfo : collection) {
|
|
httpRequest.e(b(kitInfo), kitInfo.c());
|
|
httpRequest.e(a(kitInfo), kitInfo.a());
|
|
}
|
|
}
|
|
return httpRequest;
|
|
}
|
|
|
|
public boolean a(AppRequestData appRequestData) {
|
|
HttpRequest a = a();
|
|
a(a, appRequestData);
|
|
b(a, appRequestData);
|
|
Fabric.g().d("Fabric", "Sending app info to " + b());
|
|
if (appRequestData.j != null) {
|
|
Fabric.g().d("Fabric", "App icon hash is " + appRequestData.j.a);
|
|
Fabric.g().d("Fabric", "App icon size is " + appRequestData.j.c + "x" + appRequestData.j.d);
|
|
}
|
|
int g = a.g();
|
|
String str = "POST".equals(a.k()) ? "Create" : "Update";
|
|
Fabric.g().d("Fabric", str + " app request ID: " + a.c("X-REQUEST-ID"));
|
|
Fabric.g().d("Fabric", "Result was " + g);
|
|
return ResponseParser.a(g) == 0;
|
|
}
|
|
|
|
private HttpRequest a(HttpRequest httpRequest, AppRequestData appRequestData) {
|
|
httpRequest.c("X-CRASHLYTICS-API-KEY", appRequestData.a);
|
|
httpRequest.c("X-CRASHLYTICS-API-CLIENT-TYPE", "android");
|
|
httpRequest.c("X-CRASHLYTICS-API-CLIENT-VERSION", this.e.i());
|
|
return httpRequest;
|
|
}
|
|
|
|
String a(KitInfo kitInfo) {
|
|
return String.format(Locale.US, "app[build][libraries][%s][type]", kitInfo.b());
|
|
}
|
|
|
|
String b(KitInfo kitInfo) {
|
|
return String.format(Locale.US, "app[build][libraries][%s][version]", kitInfo.b());
|
|
}
|
|
}
|