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();
}
}