导航菜单

页面标题

页面副标题

Zepto v25.1.4 - AnalyticsMessages.java 源代码

正在查看: Zepto v25.1.4 应用的 AnalyticsMessages.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.mixpanel.android.mpmetrics;

import android.content.Context;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.Looper;
import android.os.Message;
import com.mixpanel.android.mpmetrics.MPDbAdapter;
import com.mixpanel.android.util.HttpService;
import com.mixpanel.android.util.MPLog;
import java.util.HashMap;
import java.util.Iterator;
import org.json.JSONException;
import org.json.JSONObject;

class AnalyticsMessages {

    public static final HashMap f2238d = new HashMap();
    public final Worker a = new Worker();
    public final Context b;
    public final MPConfig c;

    public static class EventDescription extends MixpanelMessageDescription {
        public final String c;

        public final JSONObject f2239d;

        public final boolean f2240e;

        public EventDescription(String str, JSONObject jSONObject, String str2, boolean z, JSONObject jSONObject2) {
            super(str2, jSONObject);
            this.c = str;
            this.f2240e = z;
            this.f2239d = jSONObject2;
        }
    }

    public static class FlushDescription extends MixpanelDescription {
        public final boolean b;

        public FlushDescription(String str, boolean z) {
            super(str);
            this.b = z;
        }
    }

    public static class GroupDescription extends MixpanelMessageDescription {
        public final String toString() {
            return this.b.toString();
        }
    }

    public static class MixpanelDescription {
        public final String a;

        public MixpanelDescription(String str) {
            this.a = str;
        }
    }

    public static class MixpanelMessageDescription extends MixpanelDescription {
        public final JSONObject b;

        public MixpanelMessageDescription(String str, JSONObject jSONObject) {
            super(str);
            if (jSONObject.length() > 0) {
                Iterator<String> keys = jSONObject.keys();
                while (keys.hasNext()) {
                    String next = keys.next();
                    try {
                        jSONObject.get(next).toString();
                    } catch (AssertionError e2) {
                        jSONObject.remove(next);
                        MPLog.b("MixpanelAPI.Messages", "Removing people profile property from update (see https://github.com/mixpanel/mixpanel-android/issues/567)", e2);
                    } catch (JSONException unused) {
                    }
                }
            }
            this.b = jSONObject;
        }
    }

    public static class PeopleDescription extends MixpanelMessageDescription {
        public final String toString() {
            return this.b.toString();
        }
    }

    public static class PushAnonymousPeopleDescription extends MixpanelDescription {
        public final String b;

        public PushAnonymousPeopleDescription(String str, String str2) {
            super(str2);
            this.b = str;
        }

        public final String toString() {
            return this.b;
        }
    }

    public static class UpdateEventsPropertiesDescription extends MixpanelDescription {
    }

    public class Worker {
        public Handler b;

        public SystemInformation f2243f;
        public final Object a = new Object();
        public long c = 0;

        public long f2241d = 0;

        public long f2242e = -1;

        public class AnalyticsMessageHandler extends Handler {
            public MPDbAdapter a;
            public final DecideChecker b;
            public final long c;

            public long f2245d;

            public long f2246e;

            public int f2247f;

            public AnalyticsMessageHandler(Looper looper) {
                super(looper);
                this.a = null;
                Worker.this.f2243f = SystemInformation.a(AnalyticsMessages.this.b);
                AnalyticsMessages analyticsMessages = AnalyticsMessages.this;
                this.b = new DecideChecker(analyticsMessages.b, analyticsMessages.c);
                this.c = AnalyticsMessages.this.c.b;
            }

            public final org.json.JSONObject a(com.mixpanel.android.mpmetrics.AnalyticsMessages.EventDescription r11) {
                throw new UnsupportedOperationException("Method not decompiled: com.mixpanel.android.mpmetrics.AnalyticsMessages.Worker.AnalyticsMessageHandler.a(com.mixpanel.android.mpmetrics.AnalyticsMessages$EventDescription):org.json.JSONObject");
            }

            public final void b(MPDbAdapter mPDbAdapter, String str) {
                AnalyticsMessages.this.getClass();
                HttpService httpService = new HttpService();
                AnalyticsMessages analyticsMessages = AnalyticsMessages.this;
                Context context = analyticsMessages.b;
                synchronized (analyticsMessages.c) {
                }
                if (!httpService.b(context)) {
                    AnalyticsMessages.a(AnalyticsMessages.this);
                    return;
                }
                c(mPDbAdapter, str, MPDbAdapter.Table.EVENTS, AnalyticsMessages.this.c.f2256i);
                c(mPDbAdapter, str, MPDbAdapter.Table.PEOPLE, AnalyticsMessages.this.c.f2257j);
                c(mPDbAdapter, str, MPDbAdapter.Table.GROUPS, AnalyticsMessages.this.c.f2258k);
            }

            public final void c(com.mixpanel.android.mpmetrics.MPDbAdapter r26, java.lang.String r27, com.mixpanel.android.mpmetrics.MPDbAdapter.Table r28, java.lang.String r29) {
                throw new UnsupportedOperationException("Method not decompiled: com.mixpanel.android.mpmetrics.AnalyticsMessages.Worker.AnalyticsMessageHandler.c(com.mixpanel.android.mpmetrics.MPDbAdapter, java.lang.String, com.mixpanel.android.mpmetrics.MPDbAdapter$Table, java.lang.String):void");
            }

            @Override
            public final void handleMessage(android.os.Message r14) {
                throw new UnsupportedOperationException("Method not decompiled: com.mixpanel.android.mpmetrics.AnalyticsMessages.Worker.AnalyticsMessageHandler.handleMessage(android.os.Message):void");
            }
        }

        public Worker() {
            HandlerThread handlerThread = new HandlerThread("com.mixpanel.android.AnalyticsWorker", 10);
            handlerThread.start();
            this.b = new AnalyticsMessageHandler(handlerThread.getLooper());
        }

        public static void a(Worker worker) {
            worker.getClass();
            long currentTimeMillis = System.currentTimeMillis();
            long j2 = worker.c;
            long j3 = 1 + j2;
            long j4 = worker.f2242e;
            if (j4 > 0) {
                long j5 = ((worker.f2241d * j2) + (currentTimeMillis - j4)) / j3;
                worker.f2241d = j5;
                long j6 = j5 / 1000;
                AnalyticsMessages.a(AnalyticsMessages.this);
            }
            worker.f2242e = currentTimeMillis;
            worker.c = j3;
        }

        public final void b(Message message) {
            synchronized (this.a) {
                try {
                    Handler handler = this.b;
                    if (handler == null) {
                        AnalyticsMessages.a(AnalyticsMessages.this);
                    } else {
                        handler.sendMessage(message);
                    }
                } catch (Throwable th) {
                    throw th;
                }
            }
        }
    }

    public AnalyticsMessages(Context context) {
        this.b = context;
        this.c = MPConfig.b(context);
        new HttpService().a();
    }

    public static void a(AnalyticsMessages analyticsMessages) {
        analyticsMessages.getClass();
        Thread.currentThread().getId();
    }

    public final void b(FlushDescription flushDescription) {
        Message obtain = Message.obtain();
        obtain.what = 2;
        obtain.obj = flushDescription.a;
        obtain.arg1 = flushDescription.b ? 1 : 0;
        this.a.b(obtain);
    }
}