{"id":483613,"date":"2026-06-15T07:05:14","date_gmt":"2026-06-15T07:05:14","guid":{"rendered":"https:\/\/savepearlharbor.com\/?p=483613"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=483613","title":{"rendered":"\u041f\u043e\u043b\u043d\u0430\u044f \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0431\u0430\u0437\u0430 \u0430\u0443\u0434\u0438\u0442\u0430 \u043c\u0435\u0441\u0441\u0435\u043d\u0434\u0436\u0435\u0440\u0430 MAX"},"content":{"rendered":"<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u041a\u0430\u043a \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e<\/p>\n<pre><code>1. \u0421\u043a\u0430\u0447\u0430\u0442\u044c APK \u043c\u0435\u0441\u0441\u0435\u043d\u0434\u0436\u0435\u0440\u0430 MAX2. \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0432 JADX (jadx-gui)3. \u041d\u0430\u0439\u0442\u0438 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u043d\u0438\u0436\u0435 \u043f\u0430\u043a\u0435\u0442\u044b \u0438 \u043a\u043b\u0430\u0441\u0441\u044b4. \u0423\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:87px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<hr\/>\n<h3>\u041d\u0410\u0425\u041e\u0414\u041a\u0410 1: MyTracker \u2014 \u043c\u0430\u0441\u0441\u043e\u0432\u044b\u0439 \u0441\u0431\u043e\u0440 \u0434\u0430\u043d\u043d\u044b\u0445<\/h3>\n<h4>\u041f\u0430\u043a\u0435\u0442: com.my.tracker<\/h4>\n<h4>\u041a\u043b\u0430\u0441\u0441: com.my.tracker.MyTrackerConfig<\/h4>\n<h4>\u0424\u0430\u0439\u043b: classes2.dex<\/h4>\n<pre><code class=\"java\">package com.p006my.tracker;import android.content.pm.PackageInfo;import com.p006my.tracker.config.AntiFraudConfig;import com.p006my.tracker.core.Tracer;import com.p006my.tracker.core.TrackerConfig;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.util.List;import java.util.concurrent.Executor;import p000.a1b;public final class MyTrackerConfig {    private final TrackerConfig f9351a;    public interface InstalledPackagesProvider {        List&lt;PackageInfo&gt; getInstalledPackages();    }    @Retention(RetentionPolicy.SOURCE)    public @interface LocationTrackingMode {        public static final int ACTIVE = 2;        public static final int CACHED = 1;        public static final int NONE = 0;    }    @FunctionalInterface    public interface Logger {        void log(int i, String str, Throwable th);    }    public interface OkHttpClientProvider {        a1b getOkHttpClient();    }    private MyTrackerConfig(TrackerConfig trackerConfig) {        this.f9351a = trackerConfig;    }    public static MyTrackerConfig m4526a(TrackerConfig trackerConfig) {        return new MyTrackerConfig(trackerConfig);    }    public AntiFraudConfig getAntiFraudConfig() {        return this.f9351a.getAntiFraudConfig();    }    public String getApkPreinstallParams() {        return this.f9351a.getApkPreinstallParams();    }    public int getBufferingPeriod() {        return this.f9351a.getBufferingPeriod();    }    public int getForcingPeriod() {        return this.f9351a.getForcingPeriod();    }    public String getId() {        return this.f9351a.getId();    }    public int getLaunchTimeout() {        return this.f9351a.getLaunchTimeout();    }    public int getLocationTrackingMode() {        return this.f9351a.getLocationTrackingMode();    }    @Deprecated    public String getVendorAppPackage() {        return this.f9351a.getVendorAppPackage();    }    public boolean isAutotrackingPurchaseEnabled() {        return this.f9351a.isAutotrackingPurchaseEnabled();    }    public boolean isKidMode() {        return this.f9351a.isKidMode();    }    public boolean isTrackingEnvironmentEnabled() {        return this.f9351a.isTrackingEnvironmentEnabled();    }    public boolean isTrackingLaunchEnabled() {        return this.f9351a.isTrackingLaunchEnabled();    }    public boolean isTrackingPreinstallEnabled() {        return this.f9351a.isTrackingPreinstallEnabled();    }    public boolean isTrackingPreinstallThirdPartyEnabled() {        return this.f9351a.isTrackingPreinstallThirdPartyEnabled();    }    public void setAntiFraudConfig(AntiFraudConfig antiFraudConfig) {        this.f9351a.setAntiFraudConfig(antiFraudConfig);    }    public MyTrackerConfig setApkPreinstallParams(String str) {        this.f9351a.setApkPreinstallParams(str);        return this;    }    public MyTrackerConfig setAutotrackingPurchaseEnabled(boolean z) {        this.f9351a.setAutotrackingPurchaseEnabled(z);        return this;    }    public MyTrackerConfig setBackgroundExecutor(Executor executor) {        this.f9351a.setBackgroundExecutors(executor);        return this;    }    public MyTrackerConfig setBufferingPeriod(int i) {        this.f9351a.setBufferingPeriod(i);        return this;    }    @Deprecated    public MyTrackerConfig setDefaultVendorAppPackage() {        this.f9351a.setDefaultVendorAppPackage();        return this;    }    public MyTrackerConfig setForcingPeriod(int i) {        this.f9351a.setForcingPeriod(i);        return this;    }    public MyTrackerConfig setInstalledPackagesProvider(            InstalledPackagesProvider installedPackagesProvider) {        this.f9351a.setInstalledPackagesProvider(installedPackagesProvider);        return this;    }    public MyTrackerConfig setKidMode(boolean z) {        this.f9351a.setKidMode(z);        return this;    }    public MyTrackerConfig setLaunchTimeout(int i) {        this.f9351a.setLaunchTimeout(i);        return this;    }    public MyTrackerConfig setLocationTrackingMode(int i) {        this.f9351a.setLocationTrackingMode(i);        return this;    }    public MyTrackerConfig setLogger(Logger logger) {        Tracer.setLogger(logger);        return this;    }    public MyTrackerConfig setOkHttpClientProvider(            OkHttpClientProvider okHttpClientProvider) {        this.f9351a.setOkHttpClientProvider(okHttpClientProvider);        return this;    }    public MyTrackerConfig setProxyHost(String str) {        this.f9351a.setProxyHost(str);        return this;    }    public MyTrackerConfig setTrackingEnvironmentEnabled(boolean z) {        this.f9351a.setTrackingEnvironmentEnabled(z);        return this;    }    public MyTrackerConfig setTrackingLaunchEnabled(boolean z) {        this.f9351a.setTrackingLaunchEnabled(z);        return this;    }    public MyTrackerConfig setTrackingPreinstallEnabled(boolean z) {        this.f9351a.setTrackingPreinstallEnabled(z);        return this;    }    public MyTrackerConfig setTrackingPreinstallThirdPartyEnabled(boolean z) {        this.f9351a.setTrackingPreinstallThirdPartyEnabled(z);        return this;    }    @Deprecated    public MyTrackerConfig setVendorAppPackage(String str) {        this.f9351a.setVendorAppPackage(str);        return this;    }}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0427\u0442\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u0432 JADX:<\/h4>\n<pre><code>\u041f\u0430\u043a\u0435\u0442: com.my.tracker\u041a\u043b\u0430\u0441\u0441: MyTrackerConfig\u0412\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441: InstalledPackagesProvider\u0412\u043b\u043e\u0436\u0435\u043d\u043d\u0430\u044f \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044f: LocationTrackingMode\u041c\u0435\u0442\u043e\u0434: setInstalledPackagesProvider()\u041c\u0435\u0442\u043e\u0434: setLocationTrackingMode()<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0420\u0435\u0444\u043b\u0435\u043a\u0441\u0438\u0432\u043d\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 (\u0438\u0441\u043a\u0430\u0442\u044c \u0432 \u043e\u0431\u0444\u0443\u0441\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430\u0445):<\/h4>\n<pre><code class=\"java\">m4518a(\"com.my.tracker.antifraud.MyTrackerAntifraud\", classLoader);m4518a(\"com.my.tracker.environment.MyTrackerEnvironment\", classLoader);<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0414\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442:<\/h4>\n<pre><code>1. \u0421\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0412\u0421\u0415\u0425 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 (PackageInfo)2. GPS-\u0442\u0440\u0435\u043a\u0438\u043d\u0433 \u0432 \u0442\u0440\u0451\u0445 \u0440\u0435\u0436\u0438\u043c\u0430\u0445 (ACTIVE\/CACHED\/NONE)3. \u0420\u0435\u0444\u043b\u0435\u043a\u0441\u0438\u0432\u043d\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u2014 \u043c\u043e\u0434\u0443\u043b\u0438 \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442\u0441\u044f \u0421 \u0421\u0415\u0420\u0412\u0415\u0420\u04104. \u0410\u043d\u0442\u0438\u0444\u0440\u043e\u0434-\u043c\u043e\u0434\u0443\u043b\u044c \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e\u0431 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u04355. \u0422\u0440\u0435\u043a\u0438\u043d\u0433 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f (TrackingEnvironment)6. \u0422\u0440\u0435\u043a\u0438\u043d\u0433 \u043f\u0440\u0435\u0438\u043d\u0441\u0442\u0430\u043b\u043b\u043e\u0432<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<hr\/>\n<h3>\u041d\u0410\u0425\u041e\u0414\u041a\u0410 2: \u0415\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u044b\u0439 \u0430\u0443\u0434\u0438\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0439<\/h3>\n<h4>\u041f\u0430\u043a\u0435\u0442: ru.ok.messages.analytics<\/h4>\n<h4>\u041a\u043b\u0430\u0441\u0441: ru.ok.messages.analytics.DailyAnalyticsWorker<\/h4>\n<h4>\u0424\u0430\u0439\u043b: classes.dex<\/h4>\n<pre><code class=\"java\">package ru.p027ok.messages.analytics;import android.content.Context;import android.os.Build;import androidx.work.Worker;import androidx.work.WorkerParameters;import kotlin.Metadata;import p000.a4c;import p000.aj8;import p000.ci8;import p000.cj0;import p000.jo8;import p000.kv8;import p000.q98;import p000.qt6;import p000.x3c;import p000.zi8;@Metadata(d2 = {    \"Lru\/ok\/messages\/analytics\/DailyAnalyticsWorker;\",    \"Landroidx\/work\/Worker;\",    \"Landroid\/content\/Context;\",    \"context\",    \"Landroidx\/work\/WorkerParameters;\",    \"workerParams\",    \"Lx3c;\",    \"permissionStats\",    \"&lt;init&gt;\",    \"(Landroid\/content\/Context;Landroidx\/work\/WorkerParameters;Lx3c;)V\",    \"tamtam-app_release\"})public final class DailyAnalyticsWorker extends Worker {    public final x3c f58892f;    public DailyAnalyticsWorker(Context context,            WorkerParameters workerParameters, x3c x3cVar) {        super(context, workerParameters);        this.f58892f = x3cVar;    }    @Override    public final aj8 mo1430g() {        WorkerParameters workerParameters = this.f5455b;        q98.m19893y(\"ru.ok.messages.analytics.DailyAnalyticsWorker\",            \"work \" + workerParameters.f2835a + \" started\", new Object[0]);        x3c x3cVar = this.f58892f;        x3cVar.getClass();        kv8 kv8Var = new kv8();        ci8 ci8VarM4002j = cj0.m4002j();        int i = Build.VERSION.SDK_INT;        \/\/ \u041f\u0423\u0428\u0418 (Android 13+)        if (i &gt;= 33) {            kv8 kv8Var2 = new kv8();            kv8Var2.put(\"pType\", \"push\");            kv8Var2.put(\"pStatus\", x3c.m25921b(x3cVar.f75484c));            ci8VarM4002j.add(kv8Var2.m12885b());        }        \/\/ \u041a\u041e\u041d\u0422\u0410\u041a\u0422\u042b        kv8 kv8Var3 = new kv8();        kv8Var3.put(\"pType\", \"contacts\");        kv8Var3.put(\"pStatus\", x3c.m25921b(x3cVar.f75485d));        ci8VarM4002j.add(kv8Var3.m12885b());        \/\/ \u0424\u0410\u0419\u041b\u041e\u0412\u0410\u042f \u0421\u0418\u0421\u0422\u0415\u041c\u0410        kv8 kv8Var4 = new kv8();        kv8Var4.put(\"pType\", \"fsi\");        qt6 qt6Var = x3cVar.f75491j;        if (qt6Var != null) {            kv8Var4.put(\"pStatus\", x3c.m25921b(qt6Var));        }        ci8VarM4002j.add(kv8Var4.m12885b());        \/\/ \u0413\u0410\u041b\u0415\u0420\u0415\u042f        kv8 kv8Var5 = new kv8();        kv8Var5.put(\"pType\", \"gallery\");        a4c a4cVar = x3cVar.f75486e;        kv8Var5.put(\"pStatus\", i &lt; 34            ? x3c.m25921b(a4cVar)            : a4cVar.m203l()                ? \"allowed\"                : x3cVar.f75487f.m203l()                    ? \"partial\"                    : \"denied\");        ci8VarM4002j.add(kv8Var5.m12885b());        \/\/ \u041a\u0410\u041c\u0415\u0420\u0410        kv8 kv8Var6 = new kv8();        kv8Var6.put(\"pType\", \"camera\");        kv8Var6.put(\"pStatus\", x3c.m25921b(x3cVar.f75488g));        ci8VarM4002j.add(kv8Var6.m12885b());        \/\/ \u041c\u0418\u041a\u0420\u041e\u0424\u041e\u041d        kv8 kv8Var7 = new kv8();        kv8Var7.put(\"pType\", \"microphone\");        kv8Var7.put(\"pStatus\", x3c.m25921b(x3cVar.f75489h));        ci8VarM4002j.add(kv8Var7.m12885b());        \/\/ \u0413\u0415\u041e\u041b\u041e\u041a\u0410\u0426\u0418\u042f        kv8 kv8Var8 = new kv8();        kv8Var8.put(\"pType\", \"geo\");        kv8Var8.put(\"pStatus\", x3c.m25921b(x3cVar.f75490i));        ci8VarM4002j.add(kv8Var8.m12885b());        \/\/ \u041e\u0422\u041f\u0420\u0410\u0412\u041a\u0410 \u041d\u0410 \u0421\u0415\u0420\u0412\u0415\u0420        kv8Var.put(\"permissions\", cj0.m3997b(ci8VarM4002j));        jo8.m11769h(            (jo8) x3cVar.f75482a.getValue(),            \"PERMISSION\",            \"permission_status\",            kv8Var.m12885b(),            8);        q98.m19893y(\"ru.ok.messages.analytics.DailyAnalyticsWorker\",            \"work \" + workerParameters.f2835a + \" finished\",            new Object[0]);        return new zi8();    }}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0427\u0442\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u0432 JADX:<\/h4>\n<pre><code>\u041f\u0430\u043a\u0435\u0442: ru.ok.messages.analytics\u041a\u043b\u0430\u0441\u0441: DailyAnalyticsWorker\u0420\u043e\u0434\u0438\u0442\u0435\u043b\u044c: androidx.work.Worker\u041c\u0435\u0442\u043e\u0434: mo1430g() (\u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0439 doWork)\u0421\u0442\u0440\u043e\u043a\u0438: \"pType\", \"push\", \"contacts\", \"fsi\", \"gallery\",         \"camera\", \"microphone\", \"geo\"\u0421\u0442\u0440\u043e\u043a\u0438: \"PERMISSION\", \"permission_status\"\u0421\u0442\u0440\u043e\u043a\u0438: \"allowed\", \"partial\", \"denied\"\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435: \"tamtam-app_release\"<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0414\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442:<\/h4>\n<pre><code>1. \u041a\u0410\u0416\u0414\u042b\u0419 \u0414\u0415\u041d\u042c \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u0441\u0442\u0430\u0442\u0443\u0441 7 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u04392. \u041a\u0430\u043c\u0435\u0440\u0430 \u2014 \u043c\u043e\u0436\u043d\u043e \u043b\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c3. \u041c\u0438\u043a\u0440\u043e\u0444\u043e\u043d \u2014 \u043c\u043e\u0436\u043d\u043e \u043b\u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c4. \u0413\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044f \u2014 \u043c\u043e\u0436\u043d\u043e \u043b\u0438 \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0442\u044c5. \u041f\u0443\u0448\u0438 \u2014 \u043c\u043e\u0436\u043d\u043e \u043b\u0438 \u0440\u0430\u0437\u0431\u0443\u0434\u0438\u0442\u044c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e6. \u041a\u043e\u043d\u0442\u0430\u043a\u0442\u044b \u2014 \u0435\u0441\u0442\u044c \u043b\u0438 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u0439 \u043a\u043d\u0438\u0433\u04357. \u0413\u0430\u043b\u0435\u0440\u0435\u044f \u2014 \u0435\u0441\u0442\u044c \u043b\u0438 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0444\u043e\u0442\u043e\/\u0432\u0438\u0434\u0435\u043e8. \u0424\u0430\u0439\u043b\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u2014 \u0435\u0441\u0442\u044c \u043b\u0438 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0444\u0430\u0439\u043b\u0430\u043c9. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0442\u0435\u0433\u043e\u043c \"PERMISSION\"<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<hr\/>\n<h3>\u041d\u0410\u0425\u041e\u0414\u041a\u0410 3: SampleUploadWorker \u2014 \u044d\u043a\u0441\u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u043d\u0430 \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0441\u0435\u0440\u0432\u0435\u0440<\/h3>\n<h4>\u041f\u0430\u043a\u0435\u0442: ru.ok.tracer.upload<\/h4>\n<h4>\u041a\u043b\u0430\u0441\u0441: ru.ok.tracer.upload.SampleUploadWorker<\/h4>\n<h4>\u0424\u0430\u0439\u043b: classes3.dex<\/h4>\n<pre><code class=\"java\">package ru.p027ok.tracer.upload;import android.content.Context;import android.net.Uri;import android.util.Log;import androidx.work.Worker;import androidx.work.WorkerParameters;import java.io.File;import java.io.IOException;import java.util.ArrayList;import java.util.Arrays;import java.util.Date;import kotlin.Metadata;import org.json.JSONException;import org.json.JSONObject;import p000.aj8;import p000.at6;import p000.av0;import p000.b9h;import p000.c40;import p000.dpa;import p000.el3;import p000.fn4;import p000.gn8;import p000.hjg;import p000.jod;import p000.k3f;import p000.kv8;import p000.lg7;import p000.mw8;import p000.nnj;import p000.qf4;import p000.r8g;import p000.rpd;import p000.s96;import p000.tf7;import p000.uh3;import p000.vd9;import p000.vff;import p000.wf7;import p000.xyg;import p000.zf7;import p000.zi8;@Metadata(d2 = {    \"Lru\/ok\/tracer\/upload\/SampleUploadWorker;\",    \"Landroidx\/work\/Worker;\",    \"Landroid\/content\/Context;\",    \"context\",    \"Landroidx\/work\/WorkerParameters;\",    \"workerParams\",    \"&lt;init&gt;\",    \"(Landroid\/content\/Context;Landroidx\/work\/WorkerParameters;)V\",    \"tracer-sample-upload_release\"})public final class SampleUploadWorker extends Worker {    public SampleUploadWorker(Context context,            WorkerParameters workerParameters) {        super(context, workerParameters);    }    @Override    public final aj8 mo1430g() {        File file;        fn4 fn4Var;        Context context = this.f5454a;        WorkerParameters workerParameters = this.f5455b;        File file2 = null;        try {            fn4 fn4Var2 = workerParameters.f2836b;            fn4Var = workerParameters.f2836b;            file = new File(fn4Var2.m7760e(\"tracer_sample_file_path\"));            try {            } catch (Exception unused) {                file2 = file;                if (file2 != null &amp;&amp; file2.exists()) {                    file2.delete();                }                return new zi8();            }        } catch (Exception unused2) {        }        if (!file.exists()) {            file.getPath();            return new zi8();        }        long jM7759d = fn4Var.m7759d(\"tracer_sample_file_size\", -1L);        Long lValueOf = jM7759d &gt; 0 ? Long.valueOf(jM7759d) : null;        String strM7760e = fn4Var.m7760e(\"tracer_sample_file_name\");        \/\/ \u041f\u0420\u041e\u0412\u0415\u0420\u041a\u0410 \u0412\u0415\u0420\u0421\u0418\u0418 \u2014 \u0444\u0430\u0439\u043b \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d \u043a \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0441\u0431\u043e\u0440\u043a\u0435        if (b9h.m2409E(uh3.m23787w(                context.getPackageManager(),                context.getPackageName()))                != fn4Var.m7759d(\"tracer_version_code\", 0L)) {            file.delete();            return new zi8();        }        String strM21689h = m21689h(lValueOf, strM7760e);        if (strM21689h != null) {            m21690i(file, strM21689h);        }        return new zi8();    }    \/\/ \u041c\u0415\u0422\u041e\u0414 h \u2014 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 uploadToken    public final String m21689h(Long l, String str)            throws JSONException {        xyg xygVar = xyg.f77936a;        String strM26601a = xyg.m26601a();        if (strM26601a == null) {            return null;        }        kv8 kv8Var = new kv8();        WorkerParameters workerParameters = this.f5455b;        fn4 fn4Var = workerParameters.f2836b;        fn4 fn4Var2 = workerParameters.f2836b;        \/\/ \u041f\u0420\u041e\u0418\u0417\u0412\u041e\u041b\u042c\u041d\u042b\u0415 \u041a\u041b\u042e\u0427\u0418 \u0421 \u0421\u0415\u0420\u0412\u0415\u0420\u0410        Object obj = fn4Var.f18611a.get(\"tracer_custom_properties_keys\");        String[] strArr = obj instanceof String[]            ? (String[]) obj : null;        if (strArr == null) {            strArr = new String[0];        }        for (String str2 : strArr) {            String strM7760e = fn4Var2.m7760e(str2);            if (strM7760e != null) {                kv8Var.put(str2, strM7760e);            }        }        kv8 kv8VarM12885b = kv8Var.m12885b();        xyg xygVar2 = xyg.f77936a;        k3f k3fVar = xyg.f77940e;        if (k3fVar == null) {            k3fVar = null;        }        k3fVar.m12204b();        hjg hjgVarM9759a = k3fVar.f31842f;        if (hjgVarM9759a == null) {            hjgVarM9759a = null;        }        if (!kv8VarM12885b.isEmpty()) {            hjgVarM9759a = hjg.m9759a(hjgVarM9759a, false,                mw8.m14581C0(kv8VarM12885b, hjgVarM9759a.f24401n),                24575);        }        hjgVarM9759a.getClass();        \/\/ JSON \u0421 \u041c\u0415\u0422\u0410\u0414\u0410\u041d\u041d\u042b\u041c\u0418        JSONObject jSONObjectM8818W = gn8.m8818W(            hjgVarM9759a.m9760b(new Date()));        jSONObjectM8818W.put(\"feature\",            workerParameters.f2836b.m7760e(\"tracer_feature_name\"));        jSONObjectM8818W.put(\"sampleSize\", l);        jSONObjectM8818W.put(\"sampleFileName\", str);        if (fn4Var2.m7757b(\"tracer_has_attr1\", false)) {            jSONObjectM8818W.put(\"attr1\",                fn4Var2.m7759d(\"tracer_attr1\", 0L));        }        if (fn4Var2.m7757b(\"tracer_has_attr2\", false)) {            jSONObjectM8818W.put(\"attr2\",                fn4Var2.m7759d(\"tracer_attr2\", 0L));        }        if (workerParameters.f2836b.m7760e(\"tracer_feature_tag\")                != null) {            jSONObjectM8818W.put(\"tag\",                workerParameters.f2836b.m7760e(\"tracer_feature_tag\"));        }        \/\/ \u042d\u041d\u0414\u041f\u041e\u0418\u041d\u0422 1: \u0418\u041d\u0418\u0426\u0418\u0410\u041b\u0418\u0417\u0410\u0426\u0418\u042f \u0417\u0410\u0413\u0420\u0423\u0417\u041a\u0418        c40 c40Var = new c40(            Uri.parse(\"https:\/\/sdk-api.apptracer.ru\")                .buildUpon()                .appendEncodedPath(\"api\/sample\/initUpload\")                .appendQueryParameter(\"sampleToken\", strM26601a)                .toString(),            dpa.m5840m(\"application\/json; charset=utf-8\",                jSONObjectM8818W.toString()));        zf7 zf7VarM13339b = ((lg7) xyg.f77943h.getValue())            .m13339b(c40Var);        try {            JSONObject jSONObject = new JSONObject(                r8g.m20782e0(zf7VarM13339b.f82245c.f29857b));            dpa.m5847u(jSONObject,                workerParameters.f2836b.m7760e(\"tracer_feature_name\"),                workerParameters.f2836b.m7760e(\"tracer_feature_tag\"));            if (zf7VarM13339b.f82243a != 200) {                return null;            }            return jSONObject.getString(\"uploadToken\");        } finally {        }    }    \/\/ \u041c\u0415\u0422\u041e\u0414 i \u2014 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0444\u0430\u0439\u043b\u0430    public final void m21690i(File file, String str)            throws IOException {        String str2;        WorkerParameters workerParameters = this.f5455b;        \/\/ GZIP \u0421\u0416\u0410\u0422\u0418\u0415 (\u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0412\u041a\u041b\u042e\u0427\u0415\u041d\u041e)        if (workerParameters.f2836b.m7757b(                \"tracer_feature_uze_gzip\", true)) {            String string = workerParameters.f2835a.toString();            String strM1683V = at6.m1683V();            Context context = this.f5454a;            if (strM1683V.equals(context.getPackageName())) {                str2 = \"tracer\";            } else {                str2 = \"tracer-\" + ((Object) Uri.encode(                    r8g.m20785h0(strM1683V, ':', '-', false)));            }            File file2 = new File(context.getCacheDir(), str2);            vff.m24694i0(file2);            File fileM22132h1 = s96.m22132h1(file2,                string.concat(\".tmp\"));            try {                nnj.m15345a(file, fileM22132h1);                file.length();                fileM22132h1.length();                file.delete();                file = fileM22132h1;            } catch (IOException e) {                fileM22132h1.delete();                throw e;            }        } else {            file.length();        }        \/\/ \u042d\u041d\u0414\u041f\u041e\u0418\u041d\u0422 2: \u0417\u0410\u0413\u0420\u0423\u0417\u041a\u0410 \u0424\u0410\u0419\u041b\u0410        String string2 = Uri.parse(\"https:\/\/sdk-api.apptracer.ru\")            .buildUpon()            .appendEncodedPath(\"api\/sample\/upload\")            .appendQueryParameter(\"uploadToken\", str)            .toString();        \/\/ MULTIPART UPLOAD        ArrayList arrayList = new ArrayList();        arrayList.add(new wf7(            \"file\",            \"sample\",            \"application\/octet-stream\",            new av0(file)));        try {            zf7 zf7VarM13339b = ((lg7) xyg.f77943h.getValue())                .m13339b(new c40(string2, new tf7(                    String.format(\"------------%016x\",                        Arrays.copyOf(new Object[]{                            Long.valueOf(jod.f30783b.mo10797f())                        }, 1)),                    el3.m6833c1(arrayList))));            try {                int i = zf7VarM13339b.f82243a;                String str3 = zf7VarM13339b.f82244b;                byte[] bArr = zf7VarM13339b.f82245c.f29857b;                String strM20782e0 = bArr != null                    ? r8g.m20782e0(bArr) : null;                if (i != 200) {                    Log.e(\"Tracer\", str3 + \" , \" + strM20782e0);                }            } finally {            }        } catch (Exception unused2) {        } finally {            \/\/ \u0423\u0414\u0410\u041b\u0415\u041d\u0418\u0415 \u0424\u0410\u0419\u041b\u0410 \u041f\u041e\u0421\u041b\u0415 \u041e\u0422\u041f\u0420\u0410\u0412\u041a\u0418            file.delete();        }    }}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0427\u0442\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u0432 JADX:<\/h4>\n<pre><code>\u041f\u0430\u043a\u0435\u0442: ru.ok.tracer.upload\u041a\u043b\u0430\u0441\u0441: SampleUploadWorker\u0420\u043e\u0434\u0438\u0442\u0435\u043b\u044c: androidx.work.Worker\u041c\u0435\u0442\u043e\u0434: mo1430g() (doWork)\u041c\u0435\u0442\u043e\u0434: m21689h() (\u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438)\u041c\u0435\u0442\u043e\u0434: m21690i() (\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0444\u0430\u0439\u043b\u0430)\u0421\u0442\u0440\u043e\u043a\u0438: \"tracer_sample_file_path\"\u0421\u0442\u0440\u043e\u043a\u0438: \"tracer_sample_file_size\"\u0421\u0442\u0440\u043e\u043a\u0438: \"tracer_sample_file_name\"\u0421\u0442\u0440\u043e\u043a\u0438: \"tracer_version_code\"\u0421\u0442\u0440\u043e\u043a\u0438: \"tracer_custom_properties_keys\"\u0421\u0442\u0440\u043e\u043a\u0438: \"tracer_feature_name\"\u0421\u0442\u0440\u043e\u043a\u0438: \"tracer_feature_tag\"\u0421\u0442\u0440\u043e\u043a\u0438: \"tracer_feature_uze_gzip\"\u0421\u0442\u0440\u043e\u043a\u0438: \"tracer_has_attr1\", \"tracer_has_attr2\"URL:    \"https:\/\/sdk-api.apptracer.ru\"\u041f\u0443\u0442\u0438:   \"api\/sample\/initUpload\"\u041f\u0443\u0442\u0438:   \"api\/sample\/upload\"\u0421\u0442\u0440\u043e\u043a\u0438: \"sampleToken\", \"uploadToken\"\u0421\u0442\u0440\u043e\u043a\u0438: \"application\/octet-stream\"\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435: \"tracer-sample-upload_release\"<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0414\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442:<\/h4>\n<pre><code>1. \u0424\u0430\u0439\u043b\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043d\u0430 \u0412\u041d\u0415\u0428\u041d\u0418\u0419 \u0441\u0435\u0440\u0432\u0435\u0440 apptracer.ru2. \u0414\u0432\u0430 \u044d\u0442\u0430\u043f\u0430: initUpload \u2192 upload3. \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0435 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435 (\u043a\u043b\u044e\u0447\u0438 \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0442 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430)4. GZIP-\u0441\u0436\u0430\u0442\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0412\u041a\u041b\u042e\u0427\u0415\u041d\u041e5. \u0424\u0430\u0439\u043b \u0423\u0414\u0410\u041b\u042f\u0415\u0422\u0421\u042f \u043f\u043e\u0441\u043b\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 (file.delete())6. \u0424\u0430\u0439\u043b\u044b \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u044b \u043a \u0432\u0435\u0440\u0441\u0438\u0438 \u0441\u0431\u043e\u0440\u043a\u0438 (\u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0431\u043e\u0440)7. application\/octet-stream \u2014 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0439 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<hr\/>\n<h3>\u041d\u0410\u0425\u041e\u0414\u041a\u0410 4: DpsInitProvider \u2014 \u0430\u0432\u0442\u043e\u0437\u0430\u043f\u0443\u0441\u043a \u0434\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/h3>\n<h4>\u041f\u0430\u043a\u0435\u0442: ru.trace_flow.dps.internal<\/h4>\n<h4>\u041a\u043b\u0430\u0441\u0441: ru.trace_flow.dps.internal.DpsInitProvider<\/h4>\n<h4>\u0424\u0430\u0439\u043b: classes3.dex<\/h4>\n<pre><code class=\"java\">package ru.trace_flow.dps.internal;import android.app.Application;import android.content.ContentProvider;import android.content.ContentValues;import android.content.Context;import android.content.pm.PackageManager;import android.database.Cursor;import android.net.Uri;import android.os.Bundle;import kotlin.Metadata;import p000.blh;import p000.d35;import p000.rt4;import p000.sh3;import p000.ua5;import p000.z9e;@Metadata(d2 = {    \"Lru\/trace_flow\/dps\/internal\/DpsInitProvider;\",    \"Landroid\/content\/ContentProvider;\",    \"&lt;init&gt;\",    \"()V\",    \"dpslib\"})public final class DpsInitProvider extends ContentProvider {    \/\/ \u0412\u0421\u0415 \u041c\u0415\u0422\u041e\u0414\u042b \u041f\u0423\u0421\u0422\u042b\u0415 \u2014 \u042d\u0422\u041e \u041d\u0415 \u041d\u0410\u0421\u0422\u041e\u042f\u0429\u0418\u0419 CONTENTPROVIDER    @Override    public final int delete(Uri uri, String str,            String[] strArr) {        return 0;    }    @Override    public final String getType(Uri uri) {        return null;    }    @Override    public final Uri insert(Uri uri,            ContentValues contentValues) {        return null;    }    @Override    public final Cursor query(Uri uri, String[] strArr,            String str, String[] strArr2, String str2) {        return null;    }    @Override    public final int update(Uri uri,            ContentValues contentValues,            String str, String[] strArr) {        return 0;    }    \/\/ \u0415\u0414\u0418\u041d\u0421\u0422\u0412\u0415\u041d\u041d\u0410\u042f \u0426\u0415\u041b\u042c \u2014 onCreate()    @Override    public final boolean onCreate() {        String string;        Context context = getContext();        if (context == null) {            return false;        }        Context applicationContext = context.getApplicationContext();        sh3 sh3Var = applicationContext instanceof Application            ? (Application) applicationContext : 0;        if (sh3Var == 0) {            return false;        }        \/\/ \u041e\u0411\u0424\u0423\u0421\u0426\u0418\u0420\u041e\u0412\u0410\u041d\u041d\u042b\u0415 \u041a\u041b\u042e\u0427\u0418        if (context.getResources().getBoolean(                context.getResources().getIdentifier(                    z9e.m27743h(                        \"3b5c71e286012f6483042854bd183252\"                        + \"962e39558313305e86\"),                    z9e.m27743h(\"ad3fe0d2b08f50c1\"),                    context.getPackageName()))) {            try {                Bundle bundle = context.getPackageManager()                    .getApplicationInfo(                        context.getPackageName(), 128)                    .metaData;                if (bundle != null                        &amp;&amp; (string = bundle.getString(                            z9e.m27743h(                                \"ee30a31062d61e9a62c2538b4fc55c81\"                                + \"678d549e638d71be59fc7bab49\")))                        != null                        &amp;&amp; string.length() != 0) {                    String string2 = bundle.getString(                        z9e.m27743h(                            \"150dd2a5d7a72361d7b36e70fab4617a\"                            + \"d2fc6965d6fc5846e080525ce1\"));                    String string3 = bundle.getString(                        z9e.m27743h(                            \"bfd0a6ee9cd3fecb9cc7b3dab1c0bcd0\"                            + \"9988b4cf9d8893f3a7e39eebb1f095ed\"                            + \"bdef9ff1\"));                    \/\/ 3 LIFECYCLE-\u0421\u041b\u0423\u0428\u0410\u0422\u0415\u041b\u042f                    ua5.C1461a c1461aM23572t =                        new ua5.C1461a().m23572t(sh3Var);                    if (sh3Var instanceof sh3) {                        c1461aM23572t.m23575w(sh3Var);                    }                    if (sh3Var instanceof blh) {                        c1461aM23572t.m23554L(sh3Var);                    }                    if (sh3Var instanceof d35) {                        c1461aM23572t.m23577y((d35) sh3Var);                    } else {                        c1461aM23572t.m23577y(                            new rt4(sh3Var));                    }                    ua5.C1461a c1461aM23570r =                        c1461aM23572t.m23570r(string);                    if (string2 != null) {                        c1461aM23570r.m23553K(string2);                    }                    if (string3 != null) {                        c1461aM23570r.m23573u(string3);                    }                    c1461aM23570r.m23558e();                }            } catch (PackageManager.NameNotFoundException unused) {            }        }        return true;    }}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0427\u0442\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u0432 JADX:<\/h4>\n<pre><code>\u041f\u0430\u043a\u0435\u0442: ru.trace_flow.dps.internal\u041a\u043b\u0430\u0441\u0441: DpsInitProvider\u0420\u043e\u0434\u0438\u0442\u0435\u043b\u044c: android.content.ContentProvider\u041c\u0435\u0442\u043e\u0434: onCreate()\u041a\u043b\u0430\u0441\u0441 \u0434\u0435\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0438: p000.z9e, \u043c\u0435\u0442\u043e\u0434 m27743h()\u0425\u0435\u043a\u0441\u044b: \"3b5c71e286012f64...\"        \"ee30a31062d61e9a...\"        \"150dd2a5d7a72361...\"        \"bfd0a6ee9cd3fecb...\"Lifecycle-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b: p000.sh3, p000.blh, p000.d35Builder: p000.ua5.C1461a\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435: \"dpslib\"<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0414\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442:<\/h4>\n<pre><code>1. \u0424\u0430\u043b\u044c\u0448\u0438\u0432\u044b\u0439 ContentProvider (\u0432\u0441\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u043f\u0443\u0441\u0442\u044b\u0435)2. \u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0414\u041e Application.onCreate()3. \u041a\u043b\u044e\u0447\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0417\u0410\u0428\u0418\u0424\u0420\u041e\u0412\u0410\u041d\u042b (z9e.m27743h)4. 3 lifecycle-\u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044f \u2014 \u0430\u043a\u0442\u0438\u0432\u0435\u043d \u0412\u0421\u0415\u0413\u0414\u04105. \u0427\u0438\u0442\u0430\u0435\u0442 meta-data \u0438\u0437 AndroidManifest6. \u041d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u043a\u0440\u044b\u0442\u0438\u0435 \u043e\u0442 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<hr\/>\n<h3>\u041d\u0410\u0425\u041e\u0414\u041a\u0410 5: DownloadAttachesWorker \u2014 \u043d\u0435\u0443\u0431\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441<\/h3>\n<h4>\u041f\u0430\u043a\u0435\u0442: ru.ok.tamtam.upload.workers<\/h4>\n<h4>\u041a\u043b\u0430\u0441\u0441: ru.ok.tamtam.upload.workers.DownloadAttachesWorker<\/h4>\n<h4>\u0424\u0430\u0439\u043b: classes.dex<\/h4>\n<pre><code class=\"java\">package ru.p027ok.tamtam.upload.workers;\/\/ ... \u0438\u043c\u043f\u043e\u0440\u0442\u044b ...import ru.p027ok.android.externcalls.sdk.api.ApiProtocol;@Metadata(d2 = {    \"Lru\/ok\/tamtam\/upload\/workers\/DownloadAttachesWorker;\",    \"Lru\/ok\/tamtam\/upload\/workers\/ForegroundWorker;\",    \/\/ ... 20 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0432 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445 ...    \"tamtam-android-sdk_release\"})public final class DownloadAttachesWorker extends ForegroundWorker {    \/\/ \u0422\u0420\u0415\u041a\u0418\u041d\u0413    public final long[] f58984A;                    \/\/ \u043c\u0430\u0441\u0441\u0438\u0432 ID \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439    public volatile int f58991H;                    \/\/ \u0441\u0447\u0451\u0442\u0447\u0438\u043a \u0444\u0430\u0439\u043b\u043e\u0432    public final ConcurrentHashMap f58992I;          \/\/ \u043f\u0440\u043e\u0433\u0440\u0435\u0441\u0441    public final CopyOnWriteArrayList f58990G;       \/\/ \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438    \/\/ 20 \u0417\u0410\u0412\u0418\u0421\u0418\u041c\u041e\u0421\u0422\u0415\u0419    public final fa8 f58998n;   \/\/ chatRepository    public final fa8 f58999o;   \/\/ fileLoadingNotifications    public final fa8 f59000p;   \/\/ fileSystem    public final fa8 f59001q;   \/\/ messagesRepository    public final fa8 f59002r;   \/\/ downloader    public final fa8 f59003s;   \/\/ mediaProcessor    public final fa8 f59004t;   \/\/ api    public final fa8 f59005u;   \/\/ uiBus    public final fa8 f59006v;   \/\/ fileDownloadedNotifier    public final fa8 f59007w;   \/\/ dispatchers    public final fa8 f59008x;   \/\/ downloadRegistrar    public final long f59009y;  \/\/ chatId    public final String f59010z; \/\/ attachLocalId    public DownloadAttachesWorker(Context context,            WorkerParameters workerParameters,            zf4 zf4Var, aka akaVar, noh nohVar,            fa8 fa8Var, fa8 fa8Var2, fa8 fa8Var3,            fa8 fa8Var4, fa8 fa8Var5, fa8 fa8Var6,            fa8 fa8Var7, fa8 fa8Var8, fa8 fa8Var9,            fa8 fa8Var10, fa8 fa8Var11, fa8 fa8Var12,            fa8 fa8Var13, fa8 fa8Var14, fa8 fa8Var15) {        super(context, workerParameters, zf4Var, akaVar, nohVar);        this.f58998n = fa8Var3;   \/\/ chatRepository        this.f58999o = fa8Var4;   \/\/ fileLoadingNotifications        this.f59000p = fa8Var5;   \/\/ fileSystem        this.f59001q = fa8Var6;   \/\/ messagesRepository        this.f59002r = fa8Var7;   \/\/ downloader        this.f59003s = fa8Var8;   \/\/ mediaProcessor        this.f59004t = fa8Var9;   \/\/ api        this.f59005u = fa8Var10;  \/\/ uiBus        this.f59006v = fa8Var11;  \/\/ fileDownloadedNotifier        this.f59007w = fa8Var12;  \/\/ dispatchers        this.f59008x = fa8Var14;  \/\/ downloadRegistrar        \/\/ \u041f\u0420\u041e\u0418\u0417\u0412\u041e\u041b\u042c\u041d\u042b\u0419 CHAT ID        this.f59009y = this.f5455b.f2836b.m7759d(            ApiProtocol.PARAM_CHAT_ID, -1L);        \/\/ \u041f\u0420\u041e\u0418\u0417\u0412\u041e\u041b\u042c\u041d\u042b\u0419 ATTACH ID        this.f59010z = this.f5455b.f2836b.m7760e(\"attachLocalId\");        \/\/ \u041f\u0420\u041e\u0418\u0417\u0412\u041e\u041b\u042c\u041d\u042b\u0415 MESSAGE IDs        Object obj = this.f5455b.f2836b.f18611a.get(\"messageIds\");        if (obj instanceof Long[]) {            Long[] lArr = (Long[]) obj;            jArr = new long[lArr.length];            for (int i = 0; i &lt; lArr.length; i++) {                jArr[i] = lArr[i].longValue();            }        } else {            jArr = null;        }        this.f58984A = jArr;        \/\/ ...    }    \/\/ \u0417\u0410\u0427\u0418\u0421\u0422\u041a\u0410 \u041f\u0420\u0418 \u041e\u0422\u041c\u0415\u041d\u0415    @Override    public final Object mo16952j(Continuation continuation)            throws Throwable {        CopyOnWriteArrayList copyOnWriteArrayList = this.f58990G;        Iterator it = copyOnWriteArrayList.iterator();        while (it.hasNext()) {            ((h28) ((lz4) it.next()))                .cancel((CancellationException) null);        }        copyOnWriteArrayList.clear();        this.f58992I.clear();        gua guaVar = new gua(this.f5454a);        guaVar.f22156b.cancel(null,            ((Number) this.f58997d1.getValue()).intValue());        return fbh.f17309a;    }    \/\/ \u041c\u0410\u0421\u041a\u0418\u0420\u041e\u0412\u041a\u0410 \u041f\u041e\u0414 \u041e\u0411\u042b\u0427\u041d\u041e\u0415 \u0423\u0412\u0415\u0414\u041e\u041c\u041b\u0415\u041d\u0418\u0415    @Override    public final Object mo21651l(Continuation continuation) {        Iterator it = this.f58992I.values().iterator();        float fFloatValue = 0.0f;        while (it.hasNext()) {            fFloatValue += ((Number) it.next()).floatValue();        }        String string = ...;  \/\/ \"\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0444\u0430\u0439\u043b\u043e\u0432 1\/3...\"        float f = ...;        \/\/ \u043f\u0440\u043e\u0433\u0440\u0435\u0441\u0441-\u0431\u0430\u0440        q98.m19811B0(\"worker:multi-attaches-downloader\",            \"createForegroundInfo: progress=\" + fFloatValue            + \", fileProcessCounter=\" + this.f58991H            + \", finalProgress=\" + f, new Object[0]);        \/\/ ...    }}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0427\u0442\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u0432 JADX:<\/h4>\n<pre><code>\u041f\u0430\u043a\u0435\u0442: ru.ok.tamtam.upload.workers\u041a\u043b\u0430\u0441\u0441: DownloadAttachesWorker\u0420\u043e\u0434\u0438\u0442\u0435\u043b\u044c: ForegroundWorker (\u0442\u043e\u0442 \u0436\u0435 \u043f\u0430\u043a\u0435\u0442)\u041f\u043e\u043b\u044f: f58984A (long[] \u2014 messageIds)       f59009y (long \u2014 chatId)       f59010z (String \u2014 attachLocalId)       f58991H (volatile int \u2014 \u0441\u0447\u0451\u0442\u0447\u0438\u043a)       f58992I (ConcurrentHashMap \u2014 \u043f\u0440\u043e\u0433\u0440\u0435\u0441\u0441)       f58990G (CopyOnWriteArrayList \u2014 \u0437\u0430\u0434\u0430\u0447\u0438)\u0421\u0442\u0440\u043e\u043a\u0438: ApiProtocol.PARAM_CHAT_ID         \"attachLocalId\"         \"messageIds\"         \"worker:multi-attaches-downloader\"\u041c\u0435\u0442\u043e\u0434: mo16952j() \u2014 \u0437\u0430\u0447\u0438\u0441\u0442\u043a\u0430\u041c\u0435\u0442\u043e\u0434: mo21651l() \u2014 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0435\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435: \"tamtam-android-sdk_release\"\u0417\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c: ru.ok.android.externcalls.sdk.api.ApiProtocol<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0414\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442:<\/h4>\n<pre><code>1. ForegroundWorker \u2014 Android \u041d\u0415 \u041c\u041e\u0416\u0415\u0422 \u0443\u0431\u0438\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u04412. 20 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 = \u043f\u043e\u043b\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0412\u0421\u0415\u041c\u04233. \u041f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0439 chatId \u0438 messageIds4. ConcurrentHashMap \u2014 \u0441\u043a\u0440\u044b\u0442\u044b\u0439 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u043f\u0440\u043e\u0433\u0440\u0435\u0441\u0441\u04305. \u041f\u0440\u0438 \u043e\u0442\u043c\u0435\u043d\u0435: clear() + cancel() = \u0437\u0430\u0447\u0438\u0441\u0442\u043a\u0430 \u0441\u043b\u0435\u0434\u043e\u04326. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0432\u0438\u0434\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \"\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0444\u0430\u0439\u043b\u043e\u0432...\"7. \u0421\u0432\u044f\u0437\u0430\u043d \u0441 API \u0447\u0435\u0440\u0435\u0437 ApiProtocol (\u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u0432\u044b\u0437\u043e\u0432\u044b)<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<hr\/>\n<h3>\u041d\u0410\u0425\u041e\u0414\u041a\u0410 6: ChatsEventsByBus \u2014 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442 \u0441\u043e\u0431\u044b\u0442\u0438\u0439<\/h3>\n<h4>\u041f\u0430\u043a\u0435\u0442: ru.ok.tamtam.chats<\/h4>\n<h4>\u041a\u043b\u0430\u0441\u0441: ru.ok.tamtam.chats.ChatsEventsByBus<\/h4>\n<h4>\u0424\u0430\u0439\u043b: classes.dex<\/h4>\n<pre><code class=\"java\">package ru.p027ok.tamtam.chats;import androidx.annotation.Keep;import java.util.Collections;import kotlin.Metadata;import p000.C1164ru;import p000.gn5;import p000.j9g;import p000.leh;import p000.nm0;import p000.x63;import p000.yd3;@Metadata(d2 = {    \"Lru\/ok\/tamtam\/chats\/ChatsEventsByBus;\",    \"Lnm0;\",    \"Lleh;\",    \"updateMessageEvent\",    \"onEvent\",    \"(Lleh;)V\",    \"Lyd3;\",    \"chatsUpdateEvent\",    \"(Lyd3;)V\",    \"tamtam-android-sdk_release\"})final class ChatsEventsByBus extends nm0 {    @Keep    @j9g    public final void onEvent(leh updateMessageEvent) {        if (updateMessageEvent.f35286d) {            m15299a(new x63(                Collections.singleton(                    Long.valueOf(updateMessageEvent.f35284b)),                false,                gn5.f21618a,                false));        }    }    @Keep    @j9g    public final void onEvent(yd3 chatsUpdateEvent) {        m15299a(new x63(            new C1164ru(chatsUpdateEvent.f79077b),            chatsUpdateEvent.f79078c,            chatsUpdateEvent.f79083h,            false));    }}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0424\u0430\u0431\u0440\u0438\u043a\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438:<\/h4>\n<pre><code class=\"java\">package ru.p027ok.tamtam.chats;public abstract class AbstractC1361a {    public static final nm0 m21603a(n11 n11Var, tkg tkgVar) {        ChatsEventsByBus chatsEventsByBus =            new ChatsEventsByBus(tkgVar);        n11Var.mo6023d(chatsEventsByBus);        return chatsEventsByBus;    }}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0427\u0442\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u0432 JADX:<\/h4>\n<pre><code>\u041f\u0430\u043a\u0435\u0442: ru.ok.tamtam.chats\u041a\u043b\u0430\u0441\u0441: ChatsEventsByBus\u0420\u043e\u0434\u0438\u0442\u0435\u043b\u044c: p000.nm0\u0410\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u0438: @Keep, @j9g (= EventBus \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0430)\u041c\u0435\u0442\u043e\u0434: onEvent(leh) \u2014 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439\u041c\u0435\u0442\u043e\u0434: onEvent(yd3) \u2014 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0439 \u0447\u0430\u0442\u043e\u0432\u041f\u043e\u043b\u044f \u0441\u043e\u0431\u044b\u0442\u0438\u044f leh: f35284b (long \u2014 messageId)                   f35286d (boolean \u2014 \u0444\u043b\u0430\u0433)\u041f\u043e\u043b\u044f \u0441\u043e\u0431\u044b\u0442\u0438\u044f yd3: f79077b (\u0441\u043f\u0438\u0441\u043e\u043a chatIds)                   f79078c, f79083h (\u0444\u043b\u0430\u0433\u0438)\u0424\u0430\u0431\u0440\u0438\u043a\u0430: AbstractC1361a (\u0442\u043e\u0442 \u0436\u0435 \u043f\u0430\u043a\u0435\u0442)\u041c\u0435\u0442\u043e\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438: n11Var.mo6023d()\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435: \"tamtam-android-sdk_release\"<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0414\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442:<\/h4>\n<pre><code>1. @Keep \u2014 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0451\u043d \u043e\u0442 \u043e\u0431\u0444\u0443\u0441\u043a\u0430\u0446\u0438\u04382. @j9g \u2014 \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0430 \u043d\u0430 EventBus3. \u041f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u041a\u0410\u0416\u0414\u041e\u0415 \u043d\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 (onEvent(leh))4. \u041f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u041a\u0410\u0416\u0414\u041e\u0415 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0447\u0430\u0442\u0430 (onEvent(yd3))5. ID \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u0438 \u0447\u0430\u0442\u043e\u0432 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0432\u0441\u0435\u043c \u043f\u043e\u0434\u043f\u0438\u0441\u0447\u0438\u043a\u0430\u043c6. \u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u0447\u0435\u0440\u0435\u0437 \u0444\u0430\u0431\u0440\u0438\u043a\u0443 \u043d\u0430 UI Bus<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<hr\/>\n<h3>\u041d\u0410\u0425\u041e\u0414\u041a\u0410 7: LoggerInitializer<\/h3>\n<h4>\u041f\u0430\u043a\u0435\u0442: ru.ok.tracer.utils<\/h4>\n<h4>\u041a\u043b\u0430\u0441\u0441: ru.ok.tracer.utils.LoggerInitializer<\/h4>\n<h4>\u0424\u0430\u0439\u043b: classes.dex<\/h4>\n<pre><code class=\"java\">package ru.p027ok.tracer.utils;import android.content.Context;import java.util.Collections;import java.util.List;import kotlin.Metadata;import p000.b87;import p000.pl0;import p000.ys7;@Metadata(d2 = {    \"Lru\/ok\/tracer\/utils\/LoggerInitializer;\",    \"Lys7;\",    \"Lpl0;\",    \"&lt;init&gt;\",    \"()V\",    \"tracer-commons_release\"})public final class LoggerInitializer implements ys7 {    @Override    public final List mo21681a() {        return Collections.EMPTY_LIST;    }    @Override    public final Object mo21682b(Context context) {        try {            if (context instanceof b87) {            }        } catch (Exception unused) {            \/\/ \u0418\u0421\u041a\u041b\u042e\u0427\u0415\u041d\u0418\u042f \u041f\u0420\u041e\u0413\u041b\u0410\u0422\u042b\u0412\u0410\u042e\u0422\u0421\u042f        }        return pl0.f51822h;    }}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0427\u0442\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u0432 JADX:<\/h4>\n<pre><code>\u041f\u0430\u043a\u0435\u0442: ru.ok.tracer.utils\u041a\u043b\u0430\u0441\u0441: LoggerInitializer\u0418\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441: p000.ys7 (= Initializer \u0438\u0437 App Startup)\u041c\u0435\u0442\u043e\u0434: mo21681a() (\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u2014 \u043f\u0443\u0441\u0442\u043e\u0439 \u0441\u043f\u0438\u0441\u043e\u043a)\u041c\u0435\u0442\u043e\u0434: mo21682b() (\u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f)\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430: context instanceof p000.b87Catch: Exception unused (\u043f\u0440\u043e\u0433\u043b\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435)\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435: \"tracer-commons_release\"<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<hr\/>\n<h3>\u041d\u0410\u0425\u041e\u0414\u041a\u0410 8: SessionSender<\/h3>\n<h4>\u041f\u0430\u043a\u0435\u0442: ru.ok.tamtam.api<\/h4>\n<h4>\u041a\u043b\u0430\u0441\u0441: ru.ok.tamtam.api.SessionSenderUnexpectedException<\/h4>\n<h4>\u0424\u0430\u0439\u043b: classes3.dex<\/h4>\n<pre><code class=\"java\">package ru.p027ok.tamtam.api;import kotlin.Metadata;@Metadata(d2 = {    \"Lru\/ok\/tamtam\/api\/SessionSenderUnexpectedException;\",    \"Ljava\/lang\/Exception;\",    \"Lkotlin\/Exception;\",    \"tamtam-java-sdk\"})public final class SessionSenderUnexpectedException        extends Exception {    public SessionSenderUnexpectedException(Exception exc) {        super(exc);    }}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h4>\u0427\u0442\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u0432 JADX:<\/h4>\n<pre><code>\u041f\u0430\u043a\u0435\u0442: ru.ok.tamtam.api\u041a\u043b\u0430\u0441\u0441: SessionSenderUnexpectedException\u0420\u043e\u0434\u0438\u0442\u0435\u043b\u044c: java.lang.Exception\u041c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435: \"tamtam-java-sdk\"<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<hr\/>\n<h3>\u041a\u0410\u0420\u0422\u0410 \u041f\u041e\u0418\u0421\u041a\u0410 \u0412 JADX \u2014 \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u0447\u0435\u043a\u043b\u0438\u0441\u0442<\/h3>\n<pre><code>\u041f\u0410\u041a\u0415\u0422                              \u041a\u041b\u0410\u0421\u0421                              DEX\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500  \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500  \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500com.my.tracker                     MyTrackerConfig                    classes2ru.ok.messages.analytics           DailyAnalyticsWorker               classesru.ok.tracer.upload                SampleUploadWorker                 classes3ru.trace_flow.dps.internal         DpsInitProvider                    classes3ru.ok.tamtam.upload.workers        DownloadAttachesWorker             classesru.ok.tamtam.upload.workers        ForegroundWorker                   classesru.ok.tamtam.chats                 ChatsEventsByBus                   classesru.ok.tamtam.chats                 AbstractC1361a                     classesru.ok.tracer.utils                 LoggerInitializer                  classesru.ok.tamtam.api                   SessionSenderUnexpectedException   classes3<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h3>\u041e\u0411\u0424\u0423\u0421\u0426\u0418\u0420\u041e\u0412\u0410\u041d\u041d\u042b\u0415 \u041a\u041b\u0410\u0421\u0421\u042b \u2014 \u0433\u0434\u0435 \u0438\u0441\u043a\u0430\u0442\u044c<\/h3>\n<pre><code>\u041e\u0411\u0424\u0423\u0421\u0426\u0418\u0420\u041e\u0412\u0410\u041d\u041d\u042b\u0419    \u0420\u0415\u0410\u041b\u042c\u041d\u042b\u0419 \/ \u041d\u0410\u0417\u041d\u0410\u0427\u0415\u041d\u0418\u0415\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500  \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500p000.z9e           \u0414\u0435\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0430 \u0441\u0442\u0440\u043e\u043a (\u043c\u0435\u0442\u043e\u0434 m27743h)p000.ua5           DPS SDK Builderp000.ua5.C1461a    DPS Builder inner classp000.sh3           Lifecycle interface #1p000.blh           Lifecycle interface #2p000.d35           Lifecycle interface #3p000.rt4           Lifecycle adapter\/wrapperp000.ys7           App Startup Initializerp000.nm0           EventBus subscriber basep000.j9g           EventBus @Subscribe annotationp000.leh           UpdateMessageEventp000.yd3           ChatsUpdateEventp000.x63           Event data wrapperp000.kv8           Key-Value builder (JSON)p000.jo8           Analytics senderp000.x3c           PermissionStats holderp000.fn4           WorkerParameters datap000.aj8           Worker Result basep000.zi8           Worker Result.Successp000.fa8           Lazy&lt;T&gt; provider (Dagger)p000.yfe           JobIntentService (\u043e\u0431\u0444\u0443\u0441\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439)p000.o86           File event data structurep000.rv0           CountDownLatch wrapperp000.wf7           Multipart form partp000.av0           File request bodyp000.c40           HTTP requestp000.zf7           HTTP responsep000.tf7           Multipart request bodyp000.xyg           Tracer SDK singletonp000.hjg           Tracer environment configp000.lg7           HTTP client providerp000.gn8           JSON builder utility<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0441 <strong>\u041f\u0430\u043a\u0435\u0442:<\/strong>\u00a0<code>ru.p027ok.android.onelog<\/code><strong>\u041a\u043b\u0430\u0441\u0441:<\/strong>\u00a0<code>Worker implements OneLogAppender<\/code>  <\/p>\n<p><em>\u041a\u0430\u0436\u0434\u044b\u0439 \u043f\u0430\u043a\u0435\u0442, \u043a\u043b\u0430\u0441\u0441 \u0438 \u0441\u0442\u0440\u043e\u043a\u0430 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u0435\u043d\u044b \u043b\u044e\u0431\u044b\u043c \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e JADX. APK \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0432 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0445 \u043c\u0430\u0433\u0430\u0437\u0438\u043d\u0430\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u041e\u0431\u0444\u0443\u0441\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0438\u043c\u0435\u043d\u0430 (p000.xxx) \u2014 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 ProGuard, \u043f\u0440\u0438\u043c\u0435\u043d\u0451\u043d\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438. <\/em>\u0410\u043d\u0430\u043b\u0438\u0437 \u043f\u0440\u043e\u0432\u0435\u0434\u0451\u043d \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0433\u043e APK-\u0444\u0430\u0439\u043b\u0430 \u0432 \u0446\u0435\u043b\u044f\u0445 \u0438\u043d\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u0445 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0410\u0432\u0442\u043e\u0440 \u043d\u0435 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u043b \u043d\u0435\u0441\u0430\u043d\u043a\u0446\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c, \u043d\u0435 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u043b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u043d\u0435 \u043d\u0430\u0440\u0443\u0448\u0430\u043b \u0440\u0430\u0431\u043e\u0442\u0443 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0438 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u044d\u043a\u0441\u043f\u043b\u043e\u0438\u0442\u044b. \u0412\u0441\u0435 \u0432\u044b\u0432\u043e\u0434\u044b \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u044b \u043d\u0430 \u043a\u043e\u0434\u0435, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u043c\u0441\u044f \u0432 APK, \u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430\u0445 Android SDK. \u0410\u0432\u0442\u043e\u0440 \u043d\u0435 \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442, \u0447\u0442\u043e \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u043f\u0440\u043e\u0442\u0438\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439. \u0410\u0432\u0442\u043e\u0440 \u043a\u043e\u043d\u0441\u0442\u0430\u0442\u0438\u0440\u0443\u0435\u0442, \u0447\u0442\u043e \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0434\u043b\u044f \u0438\u0445 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0432 \u043a\u043e\u0434\u0435 \u0438 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0432 \u043b\u044e\u0431\u043e\u0439 \u043c\u043e\u043c\u0435\u043d\u0442.  <\/p>\n<\/div>\n<p>\u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/1047490\/\">https:\/\/habr.com\/ru\/articles\/1047490\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u041a\u0430\u043a \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e1. \u0421\u043a\u0430\u0447\u0430\u0442\u044c APK \u043c\u0435\u0441\u0441\u0435\u043d\u0434\u0436\u0435\u0440\u0430 MAX2. \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0432 JADX (jadx-gui)3. \u041d\u0430\u0439\u0442\u0438 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u043d\u0438\u0436\u0435 \u043f\u0430\u043a\u0435\u0442\u044b \u0438 \u043a\u043b\u0430\u0441\u0441\u044b4. \u0423\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435\u041d\u0410\u0425\u041e\u0414\u041a\u0410 1: MyTracker \u2014 \u043c\u0430\u0441\u0441\u043e\u0432\u044b\u0439 \u0441\u0431\u043e\u0440 \u0434\u0430\u043d\u043d\u044b\u0445\u041f\u0430\u043a\u0435\u0442: com.my.tracker\u041a\u043b\u0430\u0441\u0441: com.my.tracker.MyTrackerConfig\u0424\u0430\u0439\u043b: classes2.dexpackage com.p006my.tracker;import android.content.pm.PackageInfo;import com.p006my.tracker.config.AntiFraudConfig;import com.p006my.tracker.core.Tracer;import com.p006my.tracker.core.TrackerConfig;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.util.List;import java.util.concurrent.Executor;import p000.a1b;public final class MyTrackerConfig {    private final TrackerConfig f9351a;    public interface InstalledPackagesProvider {        List&lt;PackageInfo&gt; getInstalledPackages();    }    @Retention(RetentionPolicy.SOURCE)    public @interface LocationTrackingMode {        public static final int ACTIVE = 2;        public static final int CACHED = 1;        public static final int NONE = 0;    }    @FunctionalInterface    public interface Logger {        void log(int i, String str, Throwable th);    }    public interface OkHttpClientProvider {        a1b getOkHttpClient();    }    private MyTrackerConfig(TrackerConfig trackerConfig) {        this.f9351a = trackerConfig;    }    public static MyTrackerConfig m4526a(TrackerConfig trackerConfig) {        return new MyTrackerConfig(trackerConfig);    }    public AntiFraudConfig getAntiFraudConfig() {        return this.f9351a.getAntiFraudConfig();    }    public String getApkPreinstallParams() {        return this.f9351a.getApkPreinstallParams();    }    public int getBufferingPeriod() {        return this.f9351a.getBufferingPeriod();    }    public int getForcingPeriod() {        return this.f9351a.getForcingPeriod();    }    public String getId() {        return this.f9351a.getId();    }    public int getLaunchTimeout() {        return this.f9351a.getLaunchTimeout();    }    public int getLocationTrackingMode() {        return this.f9351a.getLocationTrackingMode();    }    @Deprecated    public String getVendorAppPackage() {        return this.f9351a.getVendorAppPackage();    }    public boolean isAutotrackingPurchaseEnabled() {        return this.f9351a.isAutotrackingPurchaseEnabled();    }    public boolean isKidMode() {        return this.f9351a.isKidMode();    }    public boolean isTrackingEnvironmentEnabled() {        return this.f9351a.isTrackingEnvironmentEnabled();    }    public boolean isTrackingLaunchEnabled() {        return this.f9351a.isTrackingLaunchEnabled();    }    public boolean isTrackingPreinstallEnabled() {        return this.f9351a.isTrackingPreinstallEnabled();    }    public boolean isTrackingPreinstallThirdPartyEnabled() {        return this.f9351a.isTrackingPreinstallThirdPartyEnabled();    }    public void setAntiFraudConfig(AntiFraudConfig antiFraudConfig) {        this.f9351a.setAntiFraudConfig(antiFraudConfig);    }    public MyTrackerConfig setApkPreinstallParams(String str) {        this.f9351a.setApkPreinstallParams(str);        return this;    }    public MyTrackerConfig setAutotrackingPurchaseEnabled(boolean z) {        this.f9351a.setAutotrackingPurchaseEnabled(z);        return this;    }    public MyTrackerConfig setBackgroundExecutor(Executor executor) {        this.f9351a.setBackgroundExecutors(executor);        return this;    }    public MyTrackerConfig setBufferingPeriod(int i) {        this.f9351a.setBufferingPeriod(i);        return this;    }    @Deprecated    public MyTrackerConfig setDefaultVendorAppPackage() {        this.f9351a.setDefaultVendorAppPackage();        return this;    }    public MyTrackerConfig setForcingPeriod(int i) {        this.f9351a.setForcingPeriod(i);        return this;    }    public MyTrackerConfig setInstalledPackagesProvider(            InstalledPackagesProvider installedPackagesProvider) {        this.f9351a.setInstalledPackagesProvider(installedPackagesProvider);        return this;    }    public MyTrackerConfig setKidMode(boolean z) {        this.f9351a.setKidMode(z);        return this;    }    public MyTrackerConfig setLaunchTimeout(int i) {        this.f9351a.setLaunchTimeout(i);        return this;    }    public MyTrackerConfig setLocationTrackingMode(int i) {        this.f9351a.setLocationTrackingMode(i);        return this;    }    public MyTrackerConfig setLogger(Logger logger) {        Tracer.setLogger(logger);        return this;    }    public MyTrackerConfig setOkHttpClientProvider(            OkHttpClientProvider okHttpClientProvider) {        this.f9351a.setOkHttpClientProvider(okHttpClientProvider);        return this;    }    public MyTrackerConfig setProxyHost(String str) {        this.f9351a.setProxyHost(str);        return this;    }    public MyTrackerConfig setTrackingEnvironmentEnabled(boolean z) {        this.f9351a.setTrackingEnvironmentEnabled(z);        return this;    }    public MyTrackerConfig setTrackingLaunchEnabled(boolean z) {        this.f9351a.setTrackingLaunchEnabled(z);        return this;    }    public MyTrackerConfig setTrackingPreinstallEnabled(boolean z) {        this.f9351a.setTrackingPreinstallEnabled(z);        return this;    }    public MyTrackerConfig setTrackingPreinstallThirdPartyEnabled(boolean z) {        this.f9351a.setTrackingPreinstallThirdPartyEnabled(z);        return this;    }    @Deprecated    public MyTrackerConfig setVendorAppPackage(String str) {        this.f9351a.setVendorAppPackage(str);        return this;    }}\u0427\u0442\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u0432 JADX:\u041f\u0430\u043a\u0435\u0442: com.my.tracker\u041a\u043b\u0430\u0441\u0441: MyTrackerConfig\u0412\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441: InstalledPackagesProvider\u0412\u043b\u043e\u0436\u0435\u043d\u043d\u0430\u044f \u0430\u043d\u043d\u043e\u0442\u0430\u0446\u0438\u044f: LocationTrackingMode\u041c\u0435\u0442\u043e\u0434: setInstalledPackagesProvider()\u041c\u0435\u0442\u043e\u0434: setLocationTrackingMode()\u0420\u0435\u0444\u043b\u0435\u043a\u0441\u0438\u0432\u043d\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 (\u0438\u0441\u043a\u0430\u0442\u044c \u0432 \u043e\u0431\u0444\u0443\u0441\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430\u0445):m4518a(&#171;com.my.tracker.antifraud.MyTrackerAntifraud&#187;, classLoader);m4518a(&#171;com.my.tracker.environment.MyTrackerEnvironment&#187;, classLoader);\u0414\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442:1. \u0421\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0412\u0421\u0415\u0425 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 (PackageInfo)2. GPS-\u0442\u0440\u0435\u043a\u0438\u043d\u0433 \u0432 \u0442\u0440\u0451\u0445 \u0440\u0435\u0436\u0438\u043c\u0430\u0445 (ACTIVE\/CACHED\/NONE)3. \u0420\u0435\u0444\u043b\u0435\u043a\u0441\u0438\u0432\u043d\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u2014 \u043c\u043e\u0434\u0443\u043b\u0438 \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442\u0441\u044f \u0421 \u0421\u0415\u0420\u0412\u0415\u0420\u04104. \u0410\u043d\u0442\u0438\u0444\u0440\u043e\u0434-\u043c\u043e\u0434\u0443\u043b\u044c \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e\u0431 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u04355. \u0422\u0440\u0435\u043a\u0438\u043d\u0433 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f (TrackingEnvironment)6. \u0422\u0440\u0435\u043a\u0438\u043d\u0433 \u043f\u0440\u0435\u0438\u043d\u0441\u0442\u0430\u043b\u043b\u043e\u0432\u041d\u0410\u0425\u041e\u0414\u041a\u0410 2: \u0415\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u044b\u0439 \u0430\u0443\u0434\u0438\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0439\u041f\u0430\u043a\u0435\u0442: ru.ok.messages.analytics\u041a\u043b\u0430\u0441\u0441: ru.ok.messages.analytics.DailyAnalyticsWorker\u0424\u0430\u0439\u043b: classes.dexpackage ru.p027ok.messages.analytics;import android.content.Context;import android.os.Build;import androidx.work.Worker;import androidx.work.WorkerParameters;import kotlin.Metadata;import p000.a4c;import p000.aj8;import p000.ci8;import p000.cj0;import p000.jo8;import p000.kv8;import p000.q98;import p000.qt6;import p000.x3c;import p000.zi8;@Metadata(d2 = {    &#171;Lru\/ok\/messages\/analytics\/DailyAnalyticsWorker;&#187;,    &#171;Landroidx\/work\/Worker;&#187;,    &#171;Landroid\/content\/Context;&#187;,    &#171;context&#187;,    &#171;Landroidx\/work\/WorkerParameters;&#187;,    &#171;workerParams&#187;,    &#171;Lx3c;&#187;,    &#171;permissionStats&#187;,    &#171;&lt;init&gt;&#187;,    &#171;(Landroid\/content\/Context;Landroidx\/work\/WorkerParameters;Lx3c;)V&#187;,    &#171;tamtam-app_release&#187;})public final class DailyAnalyticsWorker extends Worker {    public final x3c f58892f;    public DailyAnalyticsWorker(Context context,            WorkerParameters workerParameters, x3c x3cVar) {        super(context, workerParameters);        this.f58892f = x3cVar;    }    @Override    public final aj8 mo1430g() {        WorkerParameters workerParameters = this.f5455b;        q98.m19893y(&#171;ru.ok.messages.analytics.DailyAnalyticsWorker&#187;,            &#171;work &#187; + workerParameters.f2835a + &#187; started&#187;, new Object[0]);        x3c x3cVar = this.f58892f;        x3cVar.getClass();        kv8 kv8Var = new kv8();        ci8 ci8VarM4002j = cj0.m4002j();        int i = Build.VERSION.SDK_INT;        \/\/ \u041f\u0423\u0428\u0418 (Android 13+)        if (i &gt;= 33) {            kv8 kv8Var2 = new kv8();            kv8Var2.put(&#171;pType&#187;, &#171;push&#187;);            kv8Var2.put(&#171;pStatus&#187;, x3c.m25921b(x3cVar.f75484c));            ci8VarM4002j.add(kv8Var2.m12885b());        }        \/\/ \u041a\u041e\u041d\u0422\u0410\u041a\u0422\u042b        kv8 kv8Var3 = new kv8();        kv8Var3.put(&#171;pType&#187;, &#171;contacts&#187;);        kv8Var3.put(&#171;pStatus&#187;, x3c.m25921b(x3cVar.f75485d));        ci8VarM4002j.add(kv8Var3.m12885b());        \/\/ \u0424\u0410\u0419\u041b\u041e\u0412\u0410\u042f \u0421\u0418\u0421\u0422\u0415\u041c\u0410        kv8 kv8Var4 = new kv8();        kv8Var4.put(&#171;pType&#187;, &#171;fsi&#187;);        qt6 qt6Var = x3cVar.f75491j;        if (qt6Var != null) {            kv8Var4.put(&#171;pStatus&#187;, x3c.m25921b(qt6Var));        }        ci8VarM4002j.add(kv8Var4.m12885b());        \/\/ \u0413\u0410\u041b\u0415\u0420\u0415\u042f        kv8 kv8Var5 = new kv8();        kv8Var5.put(&#171;pType&#187;, &#171;gallery&#187;);        a4c a4cVar = x3cVar.f75486e;        kv8Var5.put(&#171;pStatus&#187;, i &lt; 34            ? x3c.m25921b(a4cVar)            : a4cVar.m203l()                ? &#171;allowed&#187;                : x3cVar.f75487f.m203l()                    ? &#171;partial&#187;                    : &#171;denied&#187;);        ci8VarM4002j.add(kv8Var5.m12885b());        \/\/ \u041a\u0410\u041c\u0415\u0420\u0410        kv8 kv8Var6 = new kv8();        kv8Var6.put(&#171;pType&#187;, &#171;camera&#187;);        kv8Var6.put(&#171;pStatus&#187;, x3c.m25921b(x3cVar.f75488g));        ci8VarM4002j.add(kv8Var6.m12885b());        \/\/ \u041c\u0418\u041a\u0420\u041e\u0424\u041e\u041d        kv8 kv8Var7 = new kv8();        kv8Var7.put(&#171;pType&#187;, &#171;microphone&#187;);        kv8Var7.put(&#171;pStatus&#187;, x3c.m25921b(x3cVar.f75489h));        ci8VarM4002j.add(kv8Var7.m12885b());        \/\/ \u0413\u0415\u041e\u041b\u041e\u041a\u0410\u0426\u0418\u042f        kv8 kv8Var8 = new kv8();        kv8Var8.put(&#171;pType&#187;, &#171;geo&#187;);        kv8Var8.put(&#171;pStatus&#187;, x3c.m25921b(x3cVar.f75490i));        ci8VarM4002j.add(kv8Var8.m12885b());        \/\/ \u041e\u0422\u041f\u0420\u0410\u0412\u041a\u0410 \u041d\u0410 \u0421\u0415\u0420\u0412\u0415\u0420        kv8Var.put(&#171;permissions&#187;, cj0.m3997b(ci8VarM4002j));        jo8.m11769h(            (jo8) x3cVar.f75482a.getValue(),            &#171;PERMISSION&#187;,            &#171;permission_status&#187;,            kv8Var.m12885b(),            8);        q98.m19893y(&#171;ru.ok.messages.analytics.DailyAnalyticsWorker&#187;,            &#171;work &#187; + workerParameters.f2835a + &#187; finished&#187;,            new Object[0]);        return new zi8();    }}\u0427\u0442\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u0432 JADX:\u041f\u0430\u043a\u0435\u0442: ru.ok.messages.analytics\u041a\u043b\u0430\u0441\u0441: DailyAnalyticsWorker\u0420\u043e\u0434\u0438\u0442\u0435\u043b\u044c: androidx.work.Worker\u041c\u0435\u0442\u043e\u0434: mo1430g()&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-483613","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/483613","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=483613"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/483613\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=483613"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=483613"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=483613"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}