/docs/weixin_7.0.4_source/反编译源码/未反混淆/src/main/java/com/tencent/mm/plugin/multitalk/model/c.java

https://github.com/HelloHuDi/AndroidReverseNotes · Java · 174 lines · 166 code · 8 blank · 0 comment · 31 complexity · 17db6ae977c8ae164db4b443eeff2b6e MD5 · raw file

  1. package com.tencent.mm.plugin.multitalk.model;
  2. import android.os.SystemClock;
  3. import com.tencent.matrix.trace.core.AppMethodBeat;
  4. import com.tencent.mm.compatible.b.g.a;
  5. import com.tencent.mm.compatible.util.b;
  6. import com.tencent.mm.compatible.util.g;
  7. import com.tencent.mm.plugin.voip.HeadsetPlugReceiver;
  8. import com.tencent.mm.sdk.platformtools.ab;
  9. import com.tencent.mm.sdk.platformtools.ah;
  10. public final class c implements a, HeadsetPlugReceiver.a {
  11. boolean cFy = false;
  12. b gar = new b(ah.getContext());
  13. com.tencent.mm.plugin.voip.model.c kzq = null;
  14. final Object kzr = new Object();
  15. HeadsetPlugReceiver kzs = new HeadsetPlugReceiver();
  16. private boolean kzt = false;
  17. private boolean kzu = false;
  18. private int kzv;
  19. g.a kzw = new g.a();
  20. private final Object nxa = new Object();
  21. public c() {
  22. AppMethodBeat.i(53885);
  23. AppMethodBeat.o(53885);
  24. }
  25. public final int a(com.tencent.mm.plugin.voip.model.b bVar, int i, int i2) {
  26. int i3;
  27. AppMethodBeat.i(53886);
  28. synchronized (this.kzr) {
  29. try {
  30. if (this.cFy) {
  31. ab.d("MicroMsg.MT.MultiTalkAudioPlayer", "startPlay, already start");
  32. i3 = -1;
  33. } else {
  34. ab.i("MicroMsg.MT.MultiTalkAudioPlayer", "startPlay %s", Integer.valueOf(hashCode()));
  35. if (this.kzq == null) {
  36. this.kzq = new com.tencent.mm.plugin.voip.model.c();
  37. this.kzq.G(i, 1, i2, 0);
  38. }
  39. this.kzq.x(ah.getContext(), false);
  40. this.kzq.sNt = bVar;
  41. com.tencent.mm.compatible.b.g.KK().a((a) this);
  42. this.kzt = com.tencent.mm.compatible.b.g.KK().KV();
  43. this.kzu = com.tencent.mm.compatible.b.g.KK().KP();
  44. ab.i("MicroMsg.MT.MultiTalkAudioPlayer", "startPlay, isHeadsetPlugged: %b, isBluetoothConnected: %b %s", Boolean.valueOf(this.kzt), Boolean.valueOf(this.kzu), Integer.valueOf(hashCode()));
  45. this.gar.requestFocus();
  46. this.kzs.a(ah.getContext(), this);
  47. if (this.kzt || this.kzu) {
  48. p.bSf().ji(false);
  49. if (this.kzu) {
  50. com.tencent.mm.compatible.b.g.KK().KM();
  51. }
  52. p.bSe().jj(true);
  53. } else {
  54. p.bSe().jj(false);
  55. }
  56. ab.i("MicroMsg.MT.MultiTalkAudioPlayer", "set start play");
  57. this.cFy = true;
  58. this.kzw.evE = SystemClock.elapsedRealtime();
  59. i3 = this.kzq.cIp();
  60. ab.i("MicroMsg.MT.MultiTalkAudioPlayer", "startPlaying cost: " + this.kzw.Mr());
  61. ab.i("MicroMsg.MT.MultiTalkAudioPlayer", "finish start play: %s", Integer.valueOf(i3));
  62. AppMethodBeat.o(53886);
  63. }
  64. } finally {
  65. AppMethodBeat.o(53886);
  66. }
  67. }
  68. return i3;
  69. }
  70. public final void io(boolean z) {
  71. AppMethodBeat.i(53887);
  72. ab.i("MicroMsg.MT.MultiTalkAudioPlayer", "setSpeakerPhoneOn, isSpeakerPhoneOn: %b", Boolean.valueOf(z));
  73. com.tencent.mm.compatible.b.g.KK().bF(z);
  74. if (this.kzq != null && this.kzq.sNi) {
  75. this.kzq.mj(z);
  76. }
  77. AppMethodBeat.o(53887);
  78. }
  79. public final void fS(boolean z) {
  80. boolean z2 = true;
  81. AppMethodBeat.i(53888);
  82. if (this.kzt != z) {
  83. this.kzt = z;
  84. ab.i("MicroMsg.MT.MultiTalkAudioPlayer", "onHeadsetState: isHeadsetPlugged: %s, isHandsFree: %s, isHandsFreeUIStatus: %s, isRingStop: %s, isBluetoothConnected: %s", Boolean.valueOf(this.kzt), Boolean.valueOf(p.bSf().oGb), Boolean.valueOf(p.bSf().oGc), Boolean.valueOf(p.bSf().nwe.DB()), Boolean.valueOf(this.kzu));
  85. boolean z3 = p.bSf().nwe.DB() && !this.kzt;
  86. if (z) {
  87. p.bSf().ji(false);
  88. }
  89. if (p.bSf().nwe.DB() && !this.kzt) {
  90. z3 = p.bSf().oGc;
  91. }
  92. if (this.kzu) {
  93. z3 = false;
  94. }
  95. io(z3);
  96. p.bSf().jo(z3);
  97. if (!z) {
  98. p.bSf().ji(true);
  99. }
  100. d bSe = p.bSe();
  101. if (this.kzu || !z) {
  102. z2 = false;
  103. }
  104. bSe.jj(z2);
  105. }
  106. AppMethodBeat.o(53888);
  107. }
  108. public final void gE(int i) {
  109. AppMethodBeat.i(53889);
  110. ab.i("MicroMsg.MT.MultiTalkAudioPlayer", "onBluetoothHeadsetStateChange, status: %d, isStart: %s", Integer.valueOf(i), Boolean.valueOf(this.cFy));
  111. boolean bRi;
  112. switch (i) {
  113. case 1:
  114. if (i != this.kzv) {
  115. this.kzu = true;
  116. p.bSf().ji(false);
  117. io(false);
  118. p.bSf().jo(false);
  119. p.bSe().jj(true);
  120. break;
  121. }
  122. break;
  123. case 2:
  124. if (i != this.kzv) {
  125. this.kzu = false;
  126. bRi = bRi();
  127. io(bRi);
  128. p.bSf().jo(bRi);
  129. p.bSf().ji(true);
  130. break;
  131. }
  132. break;
  133. case 3:
  134. this.kzu = true;
  135. com.tencent.mm.compatible.b.g.KK().KM();
  136. break;
  137. case 4:
  138. if (i != this.kzv) {
  139. this.kzu = false;
  140. com.tencent.mm.compatible.b.g.KK().KN();
  141. bRi = bRi();
  142. io(bRi);
  143. p.bSf().jo(bRi);
  144. p.bSf().ji(true);
  145. break;
  146. }
  147. break;
  148. case 5:
  149. com.tencent.mm.compatible.b.g.KK().KM();
  150. break;
  151. }
  152. this.kzv = i;
  153. AppMethodBeat.o(53889);
  154. }
  155. private boolean bRi() {
  156. AppMethodBeat.i(53890);
  157. boolean z = p.bSf().nwe.DB() && !this.kzt;
  158. if (p.bSf().nwe.DB() && !this.kzt) {
  159. z = p.bSf().oGc;
  160. }
  161. p.bSe().jj(false);
  162. ab.i("MicroMsg.MT.MultiTalkAudioPlayer", "isSpeakerAfterBluetoothDisconnected: isHeadsetPlugged: %s, isHandsFree: %s, isHandsFreeUIStatus: %s, isRingStop: %s, isBluetoothConnected: %s, isSpeaker: %s", Boolean.valueOf(this.kzt), Boolean.valueOf(p.bSf().oGb), Boolean.valueOf(p.bSf().oGc), Boolean.valueOf(p.bSf().nwe.DB()), Boolean.valueOf(this.kzu), Boolean.valueOf(z));
  163. AppMethodBeat.o(53890);
  164. return z;
  165. }
  166. }