Aqara Home v2.4.1版本的 MD5 值为:529779ac2bc0131db52a1fc3098d2b35

以下内容为反编译后的 FindHomeKitDeviceActivity.java 源代码,内容仅作参考


package com.lumiunited.aqara.device.homekit.view;

import android.net.nsd.NsdManager;
import android.net.nsd.NsdServiceInfo;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import androidx.annotation.Nullable;
import com.alibaba.fastjson.JSONObject;
import com.lumiunited.aqara.application.base.BaseActivity;
import com.lumiunited.aqarahome.R;
import k.u.c.d.d.r0.f;
import k.u.c.d.d.r0.g;
import p.a.l;
public class FindHomeKitDeviceActivity extends BaseActivity implements View.OnClickListener {
    public static final String R = "FindHomeKitDeviceActivity";
    public static final String S = "_hap._tcp.";
    public static final String T = "Aqara Hub-5C28";
    public static final String U = "Koogeek-P1-911ACC";
    public Button H;
    public NsdManager I;
    public NsdServiceInfo J;
    public String K = U;
    public boolean L;
    public NsdManager.DiscoveryListener M;
    public NsdManager.ResolveListener N;

    public class a extends p.a.g1.b<Object> {
        public a() {
        }

        @Override
        public void onComplete() {
            Toast.makeText(FindHomeKitDeviceActivity.this, "onComplete", 0).show();
        }

        @Override
        public void onError(Throwable th) {
            if (th instanceof k.u.c.d.d.r0.c) {
                FindHomeKitDeviceActivity findHomeKitDeviceActivity = FindHomeKitDeviceActivity.this;
                Toast.makeText(findHomeKitDeviceActivity, ((k.u.c.d.d.r0.c) th).a() + " " + th.getMessage(), 0).show();
            }
        }

        @Override
        public void onNext(Object obj) {
        }
    }

    public class b implements NsdManager.DiscoveryListener {
        public b() {
        }

        @Override
        public void onDiscoveryStarted(String str) {
        }

        @Override
        public void onDiscoveryStopped(String str) {
        }

        @Override
        public void onServiceFound(NsdServiceInfo nsdServiceInfo) {
            if (nsdServiceInfo.getServiceType().equals(FindHomeKitDeviceActivity.S) && nsdServiceInfo.getServiceName().equals(FindHomeKitDeviceActivity.this.K)) {
                FindHomeKitDeviceActivity.this.I.resolveService(nsdServiceInfo, FindHomeKitDeviceActivity.this.N);
            }
        }

        @Override
        public void onServiceLost(NsdServiceInfo nsdServiceInfo) {
        }

        @Override
        public void onStartDiscoveryFailed(String str, int i2) {
            FindHomeKitDeviceActivity.this.I.stopServiceDiscovery(this);
        }

        @Override
        public void onStopDiscoveryFailed(String str, int i2) {
            FindHomeKitDeviceActivity.this.I.stopServiceDiscovery(this);
        }
    }

    public class c implements NsdManager.ResolveListener {
        public c() {
        }

        @Override
        public void onResolveFailed(NsdServiceInfo nsdServiceInfo, int i2) {
        }

        @Override
        public void onServiceResolved(NsdServiceInfo nsdServiceInfo) {
            if (nsdServiceInfo.getServiceName().equals(FindHomeKitDeviceActivity.this.K)) {
                return;
            }
            FindHomeKitDeviceActivity.this.J = nsdServiceInfo;
            FindHomeKitDeviceActivity.this.J.getPort();
            FindHomeKitDeviceActivity.this.J.getHost();
        }
    }

    private void g1() {
        this.I.discoverServices(S, 1, this.M);
    }

    private void h1() {
        this.I = (NsdManager) getApplicationContext().getSystemService("servicediscovery");
        this.M = new b();
    }

    private void i1() {
        JSONObject jSONObject = new JSONObject();
        jSONObject.put("ssid", (Object) "Aqara_Home");
        jSONObject.put("passphrase", (Object) "66668888");
        f.b("http://192.168.10.1/network", jSONObject.toString(), Object.class).a(g.a()).a((l) new a());
    }

    private void j1() {
        Button button = (Button) findViewById(R.id.btn_search);
        this.H = button;
        button.setOnClickListener(this);
        i1();
        f1();
        h1();
    }

    private void k1() {
        try {
            this.I.stopServiceDiscovery(this.M);
            this.L = true;
        } catch (Exception unused) {
        }
    }

    public void f1() {
        this.N = new c();
    }

    @Override
    public void onClick(View view) {
        if (view.getId() != R.id.btn_search) {
            return;
        }
        g1();
    }

    @Override
    public void onCreate(@Nullable Bundle bundle) {
        super.onCreate(bundle);
        setContentView(R.layout.activity_find_homekit_device);
        j1();
    }

    @Override
    public void onDestroy() {
        k1();
        super.onDestroy();
    }

    @Override
    public void onPause() {
        k1();
        super.onPause();
    }

    @Override
    public void onResume() {
        super.onResume();
        g1();
    }
}