ActivityConnectP2P.java 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516
  1. package com.epson.mobilephone.common.wifidirect;
  2. import android.app.AlertDialog;
  3. import android.arch.lifecycle.Observer;
  4. import android.arch.lifecycle.ViewModelProviders;
  5. import android.content.BroadcastReceiver;
  6. import android.content.Context;
  7. import android.content.DialogInterface;
  8. import android.content.Intent;
  9. import android.content.IntentFilter;
  10. import android.net.wifi.p2p.WifiP2pConfig;
  11. import android.net.wifi.p2p.WifiP2pDevice;
  12. import android.net.wifi.p2p.WifiP2pGroup;
  13. import android.net.wifi.p2p.WifiP2pManager;
  14. import android.os.AsyncTask;
  15. import android.os.Build;
  16. import android.os.Bundle;
  17. import android.os.Handler;
  18. import android.os.Message;
  19. import android.support.p000v4.app.DialogFragment;
  20. import android.support.p000v4.app.FragmentActivity;
  21. import android.widget.Toast;
  22. import com.epson.mobilephone.common.wifidirect.ActivityConnectBase;
  23. import com.epson.mobilephone.common.wifidirect.DialogProgressWiFiDirect;
  24. import com.epson.mobilephone.common.wifidirect.WifiP2pUtils;
  25. import java.util.Deque;
  26. public class ActivityConnectP2P extends ActivityConnectBase implements DialogProgressWiFiDirect.DialogButtonClick {
  27. private static final int DELAY_P2P_CONNECT = 1000;
  28. private static final String IDD_WIFI_ERROR = "idd_wifi_error";
  29. private static final String IDD_WIFI_WAITING = "idd_wifi_waiting";
  30. private static final int ID_CHECK_WIIFISTATE = 11;
  31. private static final int ID_CONNECTED_WIFI = 10;
  32. private static final int ID_CONNECT_P2P = 12;
  33. private static final int ID_FOUND = 1;
  34. private static final int ID_NOT_FOUND = 2;
  35. private static final int ID_RESULT = 0;
  36. private static final int MAX_P2P_CONNECT = 5;
  37. private static final String TAG = "ActivityConnectP2P";
  38. Handler mHandler = new Handler() {
  39. public void handleMessage(Message message) {
  40. super.handleMessage(message);
  41. switch (C10835.f149x55760faf[ActivityConnectP2P.this.status.ordinal()]) {
  42. case 1:
  43. break;
  44. case 2:
  45. switch (message.what) {
  46. case 1:
  47. Bundle data = message.getData();
  48. if (data != null) {
  49. String string = data.getString("name");
  50. String string2 = data.getString(escprLib.PRINTER_IP);
  51. String string3 = data.getString("id");
  52. if (string != null && string2 != null && string3 != null) {
  53. EPLog.m88i(ActivityConnectP2P.TAG, "epsWrapperFindPrinter Success" + string);
  54. if (!ActivityConnectP2P.this.expectedPrtMacAddr.equals(MacAddrUtils.getMacAddressFromPrinterId(string3))) {
  55. EPLog.m88i(ActivityConnectP2P.TAG, "This Printer is not expected " + string);
  56. return;
  57. }
  58. ActivityConnectP2P.this.interruptFindingPrinter();
  59. Intent intent = new Intent();
  60. intent.putExtras(data);
  61. ActivityConnectP2P.this.onConnectedPrinter(intent);
  62. return;
  63. }
  64. return;
  65. }
  66. return;
  67. case 2:
  68. ActivityConnectP2P.this.onError();
  69. return;
  70. default:
  71. return;
  72. }
  73. case 3:
  74. if (message.what == 11) {
  75. if (!ActivityConnectP2P.this.mWifiManager.isWifiEnabled()) {
  76. ActivityConnectP2P.this.startActivityForResult(new Intent(ActivityConnectP2P.this, ActivityControlWiFi.class), 1);
  77. return;
  78. }
  79. ActivityConnectP2P.this.onEnabledWifi();
  80. return;
  81. }
  82. return;
  83. case 4:
  84. if (message.what == 0) {
  85. Bundle data2 = message.getData();
  86. if (data2 != null && !data2.isEmpty()) {
  87. if (ActivityConnectP2P.this.targetSsid.equals(WiFiControl.removeSSIDPrefix(data2.getString("ssid")))) {
  88. WifiP2pConfig unused = ActivityConnectP2P.this.p2pConnectConfig = new WifiP2pConfig();
  89. ActivityConnectP2P.this.p2pConnectConfig.deviceAddress = data2.getString(SearchWiFiDirectPrinterTask.MACADDR_P2P);
  90. ActivityConnectP2P.this.p2pConnectConfig.groupOwnerIntent = -1;
  91. ActivityConnectP2P.this.p2pConnectConfig.wps.setup = 0;
  92. ActivityConnectP2P.this.status = ActivityConnectBase.Status.WIFI_CONNECTING;
  93. ActivityConnectP2P.this.setupObserver();
  94. ActivityConnectP2P.this.mHandler.sendEmptyMessage(12);
  95. break;
  96. }
  97. } else {
  98. EPLog.m87e(ActivityConnectP2P.TAG, "Not Found Network");
  99. ActivityConnectP2P.this.status = ActivityConnectBase.Status.IDLE;
  100. ActivityConnectP2P.this.onError();
  101. break;
  102. }
  103. }
  104. break;
  105. default:
  106. return;
  107. }
  108. int i = message.what;
  109. if (i == 10) {
  110. ActivityConnectP2P.this.status = ActivityConnectBase.Status.WIFI_CONNECTED;
  111. ActivityConnectP2P.this.onConnectedWiFi();
  112. } else if (i == 12) {
  113. EPLog.m86d(ActivityConnectP2P.TAG, "connect() " + ActivityConnectP2P.this.targetSsid);
  114. ActivityConnectP2P.this.mWiFiP2PManager.connect(ActivityConnectP2P.this.p2pChannnel, ActivityConnectP2P.this.p2pConnectConfig, new WifiP2pManager.ActionListener() {
  115. public void onSuccess() {
  116. EPLog.m86d(ActivityConnectP2P.TAG, "P2PConnect_Operation Success");
  117. }
  118. public void onFailure(int i) {
  119. if (i == 0) {
  120. EPLog.m90w(ActivityConnectP2P.TAG, "P2PConnect_Operation Error " + i);
  121. if (ActivityConnectP2P.this.searchWiFiDirectPrinter == null) {
  122. ActivityConnectP2P.this.onError();
  123. } else if (ActivityConnectP2P.this.p2pRetryCount < 5) {
  124. ActivityConnectP2P.this.searchWiFiDirectPrinter.interrupt();
  125. ActivityConnectP2P.this.interruptConnecting();
  126. ActivityConnectP2P.this.onActivityResult(2, -1, (Intent) null);
  127. ActivityConnectP2P.access$408(ActivityConnectP2P.this);
  128. } else {
  129. ActivityConnectP2P.this.onError();
  130. }
  131. } else if (i != 2) {
  132. EPLog.m90w(ActivityConnectP2P.TAG, "P2PConnect_Operation Fail " + i);
  133. ActivityConnectP2P.this.onError();
  134. } else {
  135. EPLog.m90w(ActivityConnectP2P.TAG, "P2PConnect_Operation BUSY");
  136. ActivityConnectP2P.this.mHandler.sendEmptyMessageDelayed(12, 1000);
  137. }
  138. }
  139. });
  140. }
  141. }
  142. };
  143. private DialogProgressWiFiDirectViewModel mModelDialog;
  144. WifiP2pManager mWiFiP2PManager = null;
  145. WifiP2pManager.Channel p2pChannnel = null;
  146. private WifiP2pConfig p2pConnectConfig = null;
  147. private int p2pRetryCount = 0;
  148. WiFiDirectBroadcastReceiver p2pStateChangeReciever = null;
  149. public void onCancelDialog(String str) {
  150. }
  151. public void onNegativeClick(String str) {
  152. }
  153. public void onNeutralClick(String str) {
  154. }
  155. static /* synthetic */ int access$408(ActivityConnectP2P activityConnectP2P) {
  156. int i = activityConnectP2P.p2pRetryCount;
  157. activityConnectP2P.p2pRetryCount = i + 1;
  158. return i;
  159. }
  160. protected void onCreate(Bundle bundle) {
  161. super.onCreate(bundle);
  162. this.mModelDialog = (DialogProgressWiFiDirectViewModel) ViewModelProviders.m2of((FragmentActivity) this).get(DialogProgressWiFiDirectViewModel.class);
  163. this.mModelDialog.getDialogJob().observe(this, new Observer<Deque<String[]>>() {
  164. public void onChanged(@Nullable Deque<String[]> deque) {
  165. String[] checkQueue = ActivityConnectP2P.this.mModelDialog.checkQueue();
  166. if (checkQueue != null) {
  167. String str = checkQueue[0];
  168. String str2 = checkQueue[1];
  169. if (str2.equals("do_show")) {
  170. ActivityConnectP2P.this.showDialog(str);
  171. }
  172. if (str2.equals("do_dismiss")) {
  173. ActivityConnectP2P.this.dismissDialog(str);
  174. }
  175. }
  176. }
  177. });
  178. this.mModelDialog.doShow(IDD_WIFI_WAITING);
  179. this.mWiFiP2PManager = (WifiP2pManager) getSystemService("wifip2p");
  180. WifiP2pManager wifiP2pManager = this.mWiFiP2PManager;
  181. if (wifiP2pManager != null) {
  182. this.p2pChannnel = wifiP2pManager.initialize(this, getMainLooper(), (WifiP2pManager.ChannelListener) null);
  183. }
  184. if (this.mWiFiP2PManager == null || this.p2pChannnel == null) {
  185. onError();
  186. return;
  187. }
  188. Bundle extras = getIntent().getExtras();
  189. if (extras != null) {
  190. this.targetSsid = extras.getString(ActivityConnectBase.APNAME);
  191. this.showErrorDlg = extras.getBoolean(ActivityConnectBase.SHOWERROR, false);
  192. this.showConnectedTip = extras.getBoolean(ActivityConnectBase.SHOWTIP, true);
  193. this.needInfo = extras.getBoolean(ActivityConnectBase.NEEDINFO, false);
  194. this.timeout = extras.getInt(ActivityConnectBase.TIMEOUT, 30);
  195. }
  196. EPLog.m88i(TAG, "Starting connect :" + this.targetSsid + " timeout = " + this.timeout);
  197. if (Build.VERSION.SDK_INT >= 29) {
  198. ActivityRequestLocationPermission.requestLocationPermissionForce(this, 2);
  199. } else {
  200. this.mHandler.sendEmptyMessage(11);
  201. }
  202. }
  203. protected void onActivityResult(int i, int i2, Intent intent) {
  204. super.onActivityResult(i, i2, intent);
  205. if (i != 2) {
  206. if (i == 5) {
  207. onEnabledWifi();
  208. }
  209. } else if (i2 != -1) {
  210. closeWaitingDialog();
  211. setResult(0);
  212. setLastDetailResult(1);
  213. finish();
  214. } else {
  215. this.mHandler.sendEmptyMessage(11);
  216. }
  217. }
  218. protected void onEnabledWifi() {
  219. WiFiUtils instance = WiFiUtils.getInstance(this);
  220. String curSSID = instance.getCurSSID();
  221. if (!WiFiControl.isSimpleAP(curSSID) || instance.invalidateSimpleAP(this, instance.getCurNetworkId())) {
  222. WifiP2pUtils.ConnectionInfo connectionInfo = WifiP2pUtils.getInstance(this).getConnectionInfo();
  223. if (connectionInfo != null) {
  224. if (this.targetSsid.equals(connectionInfo.printerName)) {
  225. EPLog.m86d(TAG, "Already Connected!!");
  226. this.status = ActivityConnectBase.Status.WIFI_CONNECTING;
  227. this.mHandler.sendEmptyMessage(10);
  228. return;
  229. }
  230. WifiP2pUtils.getInstance(this).disconnect();
  231. }
  232. if (!this.searchWiFiDirectPrinter.start(2, this.mHandler, 0, this.timeout)) {
  233. onError();
  234. } else {
  235. this.status = ActivityConnectBase.Status.WIFI_SCANNING;
  236. }
  237. } else {
  238. AlertDialog.Builder negativeButton = new AlertDialog.Builder(this).setTitle(C1113R.string.str_error_wifi_connecting_failed).setPositiveButton(getString(C1113R.string.str_goto_wifi_setting), new DialogInterface.OnClickListener() {
  239. public void onClick(DialogInterface dialogInterface, int i) {
  240. EPLog.m86d(ActivityConnectP2P.TAG, "finish():GOTO_WIFI_SETTINGS");
  241. WiFiUtils.showOsWifiSettings(ActivityConnectP2P.this, 5);
  242. }
  243. }).setNegativeButton(getString(C1113R.string.str_cancel), new DialogInterface.OnClickListener() {
  244. public void onClick(DialogInterface dialogInterface, int i) {
  245. EPLog.m86d(ActivityConnectP2P.TAG, "finish():RESULT_CANCELED");
  246. ActivityConnectP2P.this.onError();
  247. ActivityConnectBase.setLastDetailResult(1);
  248. }
  249. });
  250. negativeButton.setMessage(getString(C1113R.string.str_notice_delete_simpleAP) + "\n\nSSID: " + curSSID).setCancelable(false).show();
  251. }
  252. }
  253. /* access modifiers changed from: private */
  254. /* JADX WARNING: Removed duplicated region for block: B:12:0x0028 */
  255. /* JADX WARNING: Removed duplicated region for block: B:13:0x002a */
  256. /* JADX WARNING: Removed duplicated region for block: B:14:0x0041 */
  257. /* JADX WARNING: Removed duplicated region for block: B:16:0x0058 */
  258. /* JADX WARNING: Removed duplicated region for block: B:18:? A[RETURN, SYNTHETIC] */
  259. /* Code decompiled incorrectly, please refer to instructions dump. */
  260. public void showDialog(java.lang.String r11) {
  261. /*
  262. r10 = this;
  263. int r0 = r11.hashCode()
  264. r1 = -174410503(0xfffffffff59ab4f9, float:-3.9222865E32)
  265. r2 = 0
  266. if (r0 == r1) goto L_0x001a
  267. r1 = 765832116(0x2da5abb4, float:1.883458E-11)
  268. if (r0 == r1) goto L_0x0010
  269. goto L_0x0024
  270. L_0x0010:
  271. java.lang.String r0 = "idd_wifi_error"
  272. boolean r0 = r11.equals(r0)
  273. if (r0 == 0) goto L_0x0024
  274. r0 = 1
  275. goto L_0x0025
  276. L_0x001a:
  277. java.lang.String r0 = "idd_wifi_waiting"
  278. boolean r0 = r11.equals(r0)
  279. if (r0 == 0) goto L_0x0024
  280. r0 = 0
  281. goto L_0x0025
  282. L_0x0024:
  283. r0 = -1
  284. L_0x0025:
  285. switch(r0) {
  286. case 0: goto L_0x0041;
  287. case 1: goto L_0x002a;
  288. default: goto L_0x0028;
  289. }
  290. L_0x0028:
  291. r0 = 0
  292. goto L_0x0056
  293. L_0x002a:
  294. r4 = 2
  295. int r0 = com.epson.mobilephone.common.wifidirect.C1113R.string.str_error_connecting_printer_p2p
  296. java.lang.String r5 = r10.getString(r0)
  297. r6 = 0
  298. r0 = 17039370(0x104000a, float:2.42446E-38)
  299. java.lang.String r7 = r10.getString(r0)
  300. r8 = 0
  301. r9 = 0
  302. r3 = r11
  303. com.epson.mobilephone.common.wifidirect.DialogProgressWiFiDirect r0 = com.epson.mobilephone.common.wifidirect.DialogProgressWiFiDirect.newInstance(r3, r4, r5, r6, r7, r8, r9)
  304. goto L_0x0056
  305. L_0x0041:
  306. r4 = 0
  307. int r0 = com.epson.mobilephone.common.wifidirect.C1113R.string.str_connecting_printer_p2p
  308. java.lang.String r5 = r10.getString(r0)
  309. r6 = 0
  310. int r0 = com.epson.mobilephone.common.wifidirect.C1113R.string.str_cancel
  311. java.lang.String r7 = r10.getString(r0)
  312. r8 = 0
  313. r9 = 0
  314. r3 = r11
  315. com.epson.mobilephone.common.wifidirect.DialogProgressWiFiDirect r0 = com.epson.mobilephone.common.wifidirect.DialogProgressWiFiDirect.newInstance(r3, r4, r5, r6, r7, r8, r9)
  316. L_0x0056:
  317. if (r0 == 0) goto L_0x0062
  318. r0.setCancelable(r2)
  319. android.support.v4.app.FragmentManager r1 = r10.getSupportFragmentManager()
  320. r0.show(r1, r11)
  321. L_0x0062:
  322. return
  323. */
  324. throw new UnsupportedOperationException("Method not decompiled: com.epson.mobilephone.common.wifidirect.ActivityConnectP2P.showDialog(java.lang.String):void");
  325. }
  326. private void dismissDialog(String str) {
  327. DialogFragment dialogFragment = (DialogFragment) getSupportFragmentManager().findFragmentByTag(str);
  328. if (dialogFragment != null) {
  329. dialogFragment.dismiss();
  330. }
  331. }
  332. protected void interruptConnecting() {
  333. super.interruptConnecting();
  334. WiFiDirectBroadcastReceiver wiFiDirectBroadcastReceiver = this.p2pStateChangeReciever;
  335. if (wiFiDirectBroadcastReceiver != null) {
  336. try {
  337. unregisterReceiver(wiFiDirectBroadcastReceiver);
  338. } catch (IllegalArgumentException e) {
  339. e.printStackTrace();
  340. }
  341. this.p2pStateChangeReciever = null;
  342. }
  343. }
  344. private void onConnectedWiFi() {
  345. EPLog.m86d(TAG, "onConnect()");
  346. interruptConnecting();
  347. ManageDefaultNetwork.getInstance(this).resetDefaultNetwork();
  348. if (this.showConnectedTip) {
  349. Toast.makeText(this, getString(C1113R.string.str_notice_wifi_connected), 0).show();
  350. }
  351. if (!this.needInfo) {
  352. closeWaitingDialog();
  353. this.status = ActivityConnectBase.Status.IDLE;
  354. setResult(-1);
  355. setLastDetailResult(-1);
  356. finish();
  357. return;
  358. }
  359. if (this.taskFindPrinter != null) {
  360. EPLog.m90w(TAG, "Already called onConnect()");
  361. }
  362. WifiP2pUtils.ConnectionInfo connectionInfo = WifiP2pUtils.getInstance(this).getConnectionInfo();
  363. if (connectionInfo.isGroupOwnerThisDevice) {
  364. this.expectedPrtMacAddr = WiFiControl.p2pAddr2PtrAddr(connectionInfo.p2PMacAdder, this.targetSsid);
  365. } else {
  366. this.expectedPrtMacAddr = WiFiControl.p2pAddr2PtrAddrP2P(connectionInfo.p2PMacAdder, this.targetSsid);
  367. }
  368. this.status = ActivityConnectBase.Status.PRINTER_FINDING;
  369. this.taskFindPrinter = new FindPrinterTask(this.mHandler, this.timeout, 1, 2);
  370. this.taskFindPrinter.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, new Void[0]);
  371. }
  372. private void onError() {
  373. closeWaitingDialog();
  374. Toast.makeText(this, getString(C1113R.string.str_error_connecting_printer_short), 1).show();
  375. if (this.searchWiFiDirectPrinter != null) {
  376. this.searchWiFiDirectPrinter.interrupt();
  377. this.searchWiFiDirectPrinter = null;
  378. }
  379. switch (this.status) {
  380. case WIFI_CONNECTING:
  381. if (this.p2pConnectConfig != null) {
  382. interruptConnecting();
  383. if (this.mWiFiP2PManager != null) {
  384. EPLog.m86d(TAG, "cancelConnect() " + this.targetSsid);
  385. this.mWiFiP2PManager.cancelConnect(this.p2pChannnel, (WifiP2pManager.ActionListener) null);
  386. this.p2pConnectConfig = null;
  387. break;
  388. }
  389. }
  390. break;
  391. case PRINTER_FINDING:
  392. if (this.taskFindPrinter != null) {
  393. this.taskFindPrinter.cancel();
  394. this.taskFindPrinter = null;
  395. break;
  396. }
  397. break;
  398. }
  399. if (this.showErrorDlg) {
  400. this.mModelDialog.doShow(IDD_WIFI_ERROR);
  401. return;
  402. }
  403. EPLog.m86d(TAG, "finish():RESULT_CANCELED");
  404. setResult(0);
  405. setLastDetailResult(2);
  406. finish();
  407. }
  408. private void closeWaitingDialog() {
  409. EPLog.m86d(TAG, "Called closeWaitingDialog()");
  410. try {
  411. this.mModelDialog.doDismiss(IDD_WIFI_WAITING);
  412. } catch (IllegalArgumentException unused) {
  413. EPLog.m86d(TAG, "IDD_WIFI_WAITING already closed");
  414. }
  415. }
  416. private void setupObserver() {
  417. super.setupObserver();
  418. this.p2pStateChangeReciever = new WiFiDirectBroadcastReceiver();
  419. registerReceiver(this.p2pStateChangeReciever, new IntentFilter("android.net.wifi.p2p.CONNECTION_STATE_CHANGE"));
  420. }
  421. /* JADX WARNING: Removed duplicated region for block: B:12:0x0029 */
  422. /* JADX WARNING: Removed duplicated region for block: B:13:0x003b */
  423. /* JADX WARNING: Removed duplicated region for block: B:16:? A[RETURN, SYNTHETIC] */
  424. /* Code decompiled incorrectly, please refer to instructions dump. */
  425. public void onPositiveClick(java.lang.String r4) {
  426. /*
  427. r3 = this;
  428. int r0 = r4.hashCode()
  429. r1 = -174410503(0xfffffffff59ab4f9, float:-3.9222865E32)
  430. r2 = 0
  431. if (r0 == r1) goto L_0x001a
  432. r1 = 765832116(0x2da5abb4, float:1.883458E-11)
  433. if (r0 == r1) goto L_0x0010
  434. goto L_0x0024
  435. L_0x0010:
  436. java.lang.String r0 = "idd_wifi_error"
  437. boolean r4 = r4.equals(r0)
  438. if (r4 == 0) goto L_0x0024
  439. r4 = 1
  440. goto L_0x0025
  441. L_0x001a:
  442. java.lang.String r0 = "idd_wifi_waiting"
  443. boolean r4 = r4.equals(r0)
  444. if (r4 == 0) goto L_0x0024
  445. r4 = 0
  446. goto L_0x0025
  447. L_0x0024:
  448. r4 = -1
  449. L_0x0025:
  450. switch(r4) {
  451. case 0: goto L_0x003b;
  452. case 1: goto L_0x0029;
  453. default: goto L_0x0028;
  454. }
  455. L_0x0028:
  456. goto L_0x0040
  457. L_0x0029:
  458. java.lang.String r4 = "ActivityConnectP2P"
  459. java.lang.String r0 = "finish():RESULT_CANCELED"
  460. com.epson.mobilephone.common.wifidirect.EPLog.m86d(r4, r0)
  461. r3.setResult(r2)
  462. r4 = 2
  463. setLastDetailResult(r4)
  464. r3.finish()
  465. goto L_0x0040
  466. L_0x003b:
  467. r3.showErrorDlg = r2
  468. r3.onError()
  469. L_0x0040:
  470. return
  471. */
  472. throw new UnsupportedOperationException("Method not decompiled: com.epson.mobilephone.common.wifidirect.ActivityConnectP2P.onPositiveClick(java.lang.String):void");
  473. }
  474. class WiFiDirectBroadcastReceiver extends BroadcastReceiver {
  475. WiFiDirectBroadcastReceiver() {
  476. }
  477. public void onReceive(Context context, Intent intent) {
  478. String action = intent.getAction();
  479. EPLog.m86d(ActivityConnectP2P.TAG, "WiFiDirectBroadcastReceiver:onReceive() action = " + action);
  480. if (action.equals("android.net.wifi.p2p.CONNECTION_STATE_CHANGE")) {
  481. WifiP2pGroup wifiP2pGroup = (WifiP2pGroup) intent.getParcelableExtra("p2pGroupInfo");
  482. WifiP2pDevice p2PPrinterInfo = WifiP2pUtils.getInstance(context).getP2PPrinterInfo(wifiP2pGroup);
  483. EPLog.m86d(ActivityConnectP2P.TAG, "EXTRA_WIFI_P2P_GROUP = " + wifiP2pGroup);
  484. if (p2PPrinterInfo != null && ActivityConnectP2P.this.p2pConnectConfig.deviceAddress.equals(p2PPrinterInfo.deviceAddress)) {
  485. EPLog.m86d(ActivityConnectP2P.TAG, "P2P Established " + p2PPrinterInfo.deviceName);
  486. if (ActivityConnectP2P.this.searchWiFiDirectPrinter != null) {
  487. ActivityConnectP2P.this.searchWiFiDirectPrinter.interrupt();
  488. ActivityConnectP2P.this.searchWiFiDirectPrinter = null;
  489. }
  490. ActivityConnectP2P.this.mHandler.sendEmptyMessage(10);
  491. }
  492. }
  493. }
  494. }
  495. }