react-native-mytatva-rn-sdk 1.2.46 → 1.2.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/android/src/main/java/com/mytatvarnsdk/CgmTrackyLibModule.kt +128 -58
  2. package/android/src/main/java/com/mytatvarnsdk/activity/BtManageActivity.java +345 -345
  3. package/android/src/main/java/com/mytatvarnsdk/activity/ConnectSensorActivity.kt +17 -38
  4. package/android/src/main/java/com/mytatvarnsdk/activity/ExitJourneyBottomSheet.kt +51 -51
  5. package/android/src/main/java/com/mytatvarnsdk/activity/PermissionActivity.kt +10 -5
  6. package/android/src/main/java/com/mytatvarnsdk/activity/PlaceSensorActivity.kt +4 -5
  7. package/android/src/main/java/com/mytatvarnsdk/activity/PlaceTransmitterActivity.kt +4 -5
  8. package/android/src/main/java/com/mytatvarnsdk/activity/QRActivity.kt +96 -92
  9. package/android/src/main/java/com/mytatvarnsdk/activity/SearchTransmitterActivity.kt +2 -2
  10. package/android/src/main/java/com/mytatvarnsdk/activity/SensorConnectSuccessActivity.kt +1 -1
  11. package/android/src/main/java/com/mytatvarnsdk/activity/StartCGMActivity.kt +4 -2
  12. package/android/src/main/java/com/mytatvarnsdk/activity/VideoActivity.kt +12 -7
  13. package/android/src/main/java/com/mytatvarnsdk/utils/TatvaEncryptionConfig.kt +0 -5
  14. package/android/src/main/res/layout/activity_video.xml +13 -2
  15. package/ios/Database/KLTBluetoothManager.m +9 -4
  16. package/ios/Database/KLTDatabaseHandler.m +53 -6
  17. package/ios/MyReactNativeBridge.h +4 -1
  18. package/ios/MyReactNativeBridge.m +433 -191
  19. package/ios/Support/API.swift +0 -1
  20. package/ios/Support/Global.swift +12 -0
  21. package/ios/ViewControllers/AttachTransmitterViewController.swift +33 -2
  22. package/ios/ViewControllers/ChatWithExpertViewController.swift +33 -3
  23. package/ios/ViewControllers/ConnectToSensorViewController.swift +101 -12
  24. package/ios/ViewControllers/ConnectToTransmitterViewController.swift +121 -5
  25. package/ios/ViewControllers/ProvidePermissionViewController.swift +37 -5
  26. package/ios/ViewControllers/PutOnTheSensorViewController.swift +22 -2
  27. package/ios/ViewControllers/StartConnectionViewController.swift +31 -3
  28. package/ios/ViewModel/FinalViewModel.swift +155 -48
  29. package/package.json +1 -1
@@ -81,8 +81,7 @@ class ConnectSensorActivity : BaseBleActivity() {
81
81
  binding.commonButton.btnProceed.setOnClickListener {
82
82
  transmitterDeviceInfo?.let {
83
83
  QRActivity.startQR(
84
- this,
85
- it.pocDevice
84
+ this, it.pocDevice
86
85
  )
87
86
  }
88
87
  }
@@ -93,8 +92,7 @@ class ConnectSensorActivity : BaseBleActivity() {
93
92
 
94
93
  binding.toolbar.btnWhatsapp.setOnClickListener {
95
94
  startActivity(
96
- Intent(this, HelpActivity::class.java)
97
- .putExtra("ScreenName", "Sensor Screen")
95
+ Intent(this, HelpActivity::class.java).putExtra("ScreenName", "Sensor Screen")
98
96
  )
99
97
  }
100
98
 
@@ -102,7 +100,7 @@ class ConnectSensorActivity : BaseBleActivity() {
102
100
  sendDataToRN("", "cgm_watch_demo_clicked")
103
101
 
104
102
  startActivity(
105
- Intent(this, VideoActivity::class.java).putExtra("VideoId", "r5Zemc4R044")
103
+ Intent(this, VideoActivity::class.java).putExtra("VideoId", if (isForReconnect) "n_pUrFoZ1wQ" else "r5Zemc4R044")
106
104
  )
107
105
  }
108
106
 
@@ -136,10 +134,7 @@ class ConnectSensorActivity : BaseBleActivity() {
136
134
  binding.clMain.visibility = View.GONE
137
135
  binding.commonButton.root.visibility = View.GONE
138
136
 
139
- Glide.with(this)
140
- .asGif()
141
- .load(R.drawable.warning)
142
- .into(binding.ivGif)
137
+ Glide.with(this).asGif().load(R.drawable.warning).into(binding.ivGif)
143
138
 
144
139
  binding.btnSupport.tvProceed.text = "Contact Support"
145
140
  binding.btnRetry.tvProceed.text = "Retry"
@@ -155,8 +150,7 @@ class ConnectSensorActivity : BaseBleActivity() {
155
150
 
156
151
  binding.btnSupport.btnProceed.setOnClickListener {
157
152
  startActivity(
158
- Intent(this, HelpActivity::class.java)
159
- .putExtra("ScreenName", "Sensor Screen")
153
+ Intent(this, HelpActivity::class.java).putExtra("ScreenName", "Sensor Screen")
160
154
  )
161
155
  }
162
156
 
@@ -165,8 +159,7 @@ class ConnectSensorActivity : BaseBleActivity() {
165
159
 
166
160
  transmitterDeviceInfo?.let {
167
161
  QRActivity.startQR(
168
- this,
169
- it.pocDevice
162
+ this, it.pocDevice
170
163
  )
171
164
  }
172
165
  }
@@ -194,8 +187,7 @@ class ConnectSensorActivity : BaseBleActivity() {
194
187
  onCameraPermissionGranted()
195
188
  } else {
196
189
  if (ActivityCompat.shouldShowRequestPermissionRationale(
197
- this,
198
- Manifest.permission.CAMERA
190
+ this, Manifest.permission.CAMERA
199
191
  )
200
192
  ) {
201
193
  showPermissionRationale(
@@ -203,17 +195,12 @@ class ConnectSensorActivity : BaseBleActivity() {
203
195
  message = "We need access to your camera to proceed.",
204
196
  onProceed = {
205
197
  ActivityCompat.requestPermissions(
206
- this,
207
- PermissionUtils.CAMERA_PERMISSION,
208
- CAMERA_REQUEST_CODE
198
+ this, PermissionUtils.CAMERA_PERMISSION, CAMERA_REQUEST_CODE
209
199
  )
210
- }
211
- )
200
+ })
212
201
  } else {
213
202
  ActivityCompat.requestPermissions(
214
- this,
215
- PermissionUtils.CAMERA_PERMISSION,
216
- CAMERA_REQUEST_CODE
203
+ this, PermissionUtils.CAMERA_PERMISSION, CAMERA_REQUEST_CODE
217
204
  )
218
205
  }
219
206
  }
@@ -226,11 +213,8 @@ class ConnectSensorActivity : BaseBleActivity() {
226
213
  }
227
214
 
228
215
  private fun showPermissionRationale(title: String, message: String, onProceed: () -> Unit) {
229
- AlertDialog.Builder(this)
230
- .setTitle(title)
231
- .setMessage(message)
232
- .setPositiveButton("OK") { _, _ -> onProceed() }
233
- .setNegativeButton("Cancel", null)
216
+ AlertDialog.Builder(this).setTitle(title).setMessage(message)
217
+ .setPositiveButton("OK") { _, _ -> onProceed() }.setNegativeButton("Cancel", null)
234
218
  .show()
235
219
  }
236
220
 
@@ -242,8 +226,7 @@ class ConnectSensorActivity : BaseBleActivity() {
242
226
 
243
227
  fun isCameraPermissionGranted(context: Context): Boolean {
244
228
  return ContextCompat.checkSelfPermission(
245
- context,
246
- Manifest.permission.CAMERA
229
+ context, Manifest.permission.CAMERA
247
230
  ) == PackageManager.PERMISSION_GRANTED
248
231
  }
249
232
 
@@ -283,9 +266,7 @@ class ConnectSensorActivity : BaseBleActivity() {
283
266
  }
284
267
 
285
268
  override fun onRequestPermissionsResult(
286
- requestCode: Int,
287
- permissions: Array<out String>,
288
- grantResults: IntArray
269
+ requestCode: Int, permissions: Array<out String>, grantResults: IntArray
289
270
  ) {
290
271
  super.onRequestPermissionsResult(requestCode, permissions, grantResults)
291
272
  val allGranted = grantResults.all { it == PackageManager.PERMISSION_GRANTED }
@@ -336,11 +317,9 @@ class ConnectSensorActivity : BaseBleActivity() {
336
317
  if (isForReconnect) {
337
318
  sendDataToRN("", "WARM_PERIOD_STARTED")
338
319
  startActivity(
339
- Intent(this, SensorConnectSuccessActivity::class.java)
340
- .putExtra(
341
- "IsForReconnect",
342
- true
343
- )
320
+ Intent(this, SensorConnectSuccessActivity::class.java).putExtra(
321
+ "IsForReconnect", true
322
+ )
344
323
  )
345
324
  } else {
346
325
  startActivity(Intent(this, SensorConnectSuccessActivity::class.java))
@@ -11,68 +11,68 @@ import com.google.android.material.bottomsheet.BottomSheetDialogFragment
11
11
  import com.mytatvarnsdk.R
12
12
 
13
13
  class ExitJourneyBottomSheet : BottomSheetDialogFragment() {
14
- private var exitListener: OnExitListener? = null
14
+ private var exitListener: OnExitListener? = null
15
15
 
16
- fun interface OnExitListener {
17
- fun onExitConfirmed()
18
- }
16
+ fun interface OnExitListener {
17
+ fun onExitConfirmed()
18
+ }
19
19
 
20
- fun setOnExitListener(listener: OnExitListener?) {
21
- this.exitListener = listener
22
- }
20
+ fun setOnExitListener(listener: OnExitListener?) {
21
+ this.exitListener = listener
22
+ }
23
23
 
24
- override fun onCreate(savedInstanceState: Bundle?) {
25
- super.onCreate(savedInstanceState)
26
- setStyle(STYLE_NORMAL, R.style.CustomBottomSheetDialogTheme)
27
- }
24
+ override fun onCreate(savedInstanceState: Bundle?) {
25
+ super.onCreate(savedInstanceState)
26
+ setStyle(STYLE_NORMAL, R.style.CustomBottomSheetDialogTheme)
27
+ }
28
28
 
29
- override fun onCreateView(
30
- inflater: LayoutInflater, container: ViewGroup?,
31
- savedInstanceState: Bundle?
32
- ): View? {
33
- return inflater.inflate(R.layout.exit_dialog_bottomsheet, container, false)
34
- }
29
+ override fun onCreateView(
30
+ inflater: LayoutInflater, container: ViewGroup?,
31
+ savedInstanceState: Bundle?
32
+ ): View? {
33
+ return inflater.inflate(R.layout.exit_dialog_bottomsheet, container, false)
34
+ }
35
35
 
36
- override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
37
- super.onViewCreated(view, savedInstanceState)
36
+ override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
37
+ super.onViewCreated(view, savedInstanceState)
38
38
 
39
- val exitButton = view.findViewById<ConstraintLayout>(R.id.btnExit)
40
- val cancelButton = view.findViewById<ConstraintLayout>(R.id.btnCancel)
41
- val closeButton = view.findViewById<AppCompatImageView>(R.id.close_button)
39
+ val exitButton = view.findViewById<ConstraintLayout>(R.id.btnExit)
40
+ val cancelButton = view.findViewById<ConstraintLayout>(R.id.btnCancel)
41
+ val closeButton = view.findViewById<AppCompatImageView>(R.id.close_button)
42
42
 
43
- exitButton.setOnClickListener(View.OnClickListener { v: View? ->
44
- if (exitListener != null) {
45
- exitListener!!.onExitConfirmed()
46
- }
47
- dismiss()
48
- })
43
+ exitButton.setOnClickListener(View.OnClickListener { v: View? ->
44
+ if (exitListener != null) {
45
+ exitListener!!.onExitConfirmed()
46
+ }
47
+ dismiss()
48
+ })
49
49
 
50
- cancelButton.setOnClickListener(View.OnClickListener { v: View? -> dismiss() })
51
- closeButton.setOnClickListener(View.OnClickListener { v: View? -> dismiss() })
52
- }
50
+ cancelButton.setOnClickListener(View.OnClickListener { v: View? -> dismiss() })
51
+ closeButton.setOnClickListener(View.OnClickListener { v: View? -> dismiss() })
52
+ }
53
53
 
54
- override fun onStart() {
55
- super.onStart()
56
- if (getDialog() != null) {
57
- val bottomSheet =
58
- getDialog()!!.findViewById<View?>(com.google.android.material.R.id.design_bottom_sheet)
59
- if (bottomSheet != null) {
60
- // Force the bottom sheet to expand fully
61
- val behavior =
62
- BottomSheetBehavior.from<View?>(bottomSheet)
63
- behavior.setState(BottomSheetBehavior.STATE_EXPANDED)
64
- behavior.setSkipCollapsed(true)
65
- behavior.setHideable(true)
54
+ override fun onStart() {
55
+ super.onStart()
56
+ if (getDialog() != null) {
57
+ val bottomSheet =
58
+ getDialog()!!.findViewById<View?>(com.google.android.material.R.id.design_bottom_sheet)
59
+ if (bottomSheet != null) {
60
+ // Force the bottom sheet to expand fully
61
+ val behavior =
62
+ BottomSheetBehavior.from<View?>(bottomSheet)
63
+ behavior.setState(BottomSheetBehavior.STATE_EXPANDED)
64
+ behavior.setSkipCollapsed(true)
65
+ behavior.setHideable(true)
66
66
 
67
- // Set height to match parent
68
- bottomSheet.getLayoutParams().height = ViewGroup.LayoutParams.WRAP_CONTENT
69
- }
67
+ // Set height to match parent
68
+ bottomSheet.getLayoutParams().height = ViewGroup.LayoutParams.WRAP_CONTENT
69
+ }
70
+ }
70
71
  }
71
- }
72
72
 
73
- companion object {
74
- fun newInstance(): ExitJourneyBottomSheet {
75
- return ExitJourneyBottomSheet()
73
+ companion object {
74
+ fun newInstance(): ExitJourneyBottomSheet {
75
+ return ExitJourneyBottomSheet()
76
+ }
76
77
  }
77
- }
78
78
  }
@@ -51,6 +51,8 @@ class PermissionActivity : BasePermissionActivity() {
51
51
  }
52
52
  private val reactContext = CgmTrackyLibModule.mReactContext
53
53
 
54
+ private var isForReconnect: Boolean = false
55
+
54
56
  override fun onCreate(savedInstanceState: Bundle?) {
55
57
  super.onCreate(savedInstanceState)
56
58
  binding = ActivityPermissionBinding.inflate(layoutInflater)
@@ -124,6 +126,8 @@ class PermissionActivity : BasePermissionActivity() {
124
126
 
125
127
  @SuppressLint("MissingPermission")
126
128
  private fun initialize() {
129
+ isForReconnect = intent.getBooleanExtra("IsForReconnect", false)
130
+
127
131
  sendDataToRN("", "cgm_permissions_page_landing")
128
132
 
129
133
  bluetoothAdapter?.let {
@@ -151,10 +155,8 @@ class PermissionActivity : BasePermissionActivity() {
151
155
  sendDataToRN(jsonObject.toString(), "cgm_permissions_proceed_clicked")
152
156
 
153
157
  startActivity(
154
- Intent(this@PermissionActivity, SearchTransmitterActivity::class.java).putExtra(
155
- "IsForReconnect",
156
- intent.getBooleanExtra("IsForReconnect", false)
157
- )
158
+ Intent(this@PermissionActivity, SearchTransmitterActivity::class.java)
159
+ .putExtra("IsForReconnect", isForReconnect)
158
160
  )
159
161
  finish()
160
162
  }
@@ -170,7 +172,10 @@ class PermissionActivity : BasePermissionActivity() {
170
172
  sendDataToRN("", "cgm_watch_demo_clicked")
171
173
 
172
174
  startActivity(
173
- Intent(this, VideoActivity::class.java).putExtra("VideoId", "r5Zemc4R044")
175
+ Intent(this, VideoActivity::class.java).putExtra(
176
+ "VideoId",
177
+ if (isForReconnect) "n_pUrFoZ1wQ" else "r5Zemc4R044"
178
+ )
174
179
  )
175
180
  }
176
181
 
@@ -25,14 +25,11 @@ import com.mytatvarnsdk.CgmTrackyLibModule
25
25
  import com.mytatvarnsdk.R
26
26
  import com.mytatvarnsdk.databinding.ActivityPlaceSensorBinding
27
27
  import com.mytatvarnsdk.databinding.ExitDialogBottomsheetBinding
28
- import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.YouTubePlayer
29
- import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.listeners.AbstractYouTubePlayerListener
30
- import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.listeners.FullscreenListener
31
- import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.options.IFramePlayerOptions
32
28
 
33
29
  class PlaceSensorActivity : AppCompatActivity() {
34
30
  private lateinit var binding: ActivityPlaceSensorBinding
35
31
  private val reactContext = CgmTrackyLibModule.mReactContext
32
+ private var isForReconnect: Boolean = false
36
33
 
37
34
  override fun onCreate(savedInstanceState: Bundle?) {
38
35
  super.onCreate(savedInstanceState)
@@ -48,6 +45,8 @@ class PlaceSensorActivity : AppCompatActivity() {
48
45
  }
49
46
 
50
47
  private fun init() {
48
+ isForReconnect = intent.getBooleanExtra("IsForReconnect", false)
49
+
51
50
  sendDataToRN("", "cgm_place_sensor_landing")
52
51
 
53
52
  Glide.with(this)
@@ -71,7 +70,7 @@ class PlaceSensorActivity : AppCompatActivity() {
71
70
  sendDataToRN("", "cgm_watch_demo_clicked")
72
71
 
73
72
  startActivity(
74
- Intent(this, VideoActivity::class.java).putExtra("VideoId", "r5Zemc4R044")
73
+ Intent(this, VideoActivity::class.java).putExtra("VideoId", if (isForReconnect) "n_pUrFoZ1wQ" else "r5Zemc4R044")
75
74
  )
76
75
  }
77
76
 
@@ -25,14 +25,11 @@ import com.mytatvarnsdk.CgmTrackyLibModule
25
25
  import com.mytatvarnsdk.R
26
26
  import com.mytatvarnsdk.databinding.ActivityPlaceTransmitterBinding
27
27
  import com.mytatvarnsdk.databinding.ExitDialogBottomsheetBinding
28
- import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.YouTubePlayer
29
- import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.listeners.AbstractYouTubePlayerListener
30
- import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.listeners.FullscreenListener
31
- import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.options.IFramePlayerOptions
32
28
 
33
29
  class PlaceTransmitterActivity : AppCompatActivity() {
34
30
  private lateinit var binding: ActivityPlaceTransmitterBinding
35
31
  private val reactContext = CgmTrackyLibModule.mReactContext
32
+ private var isForReconnect: Boolean = false
36
33
 
37
34
  override fun onCreate(savedInstanceState: Bundle?) {
38
35
  super.onCreate(savedInstanceState)
@@ -48,6 +45,8 @@ class PlaceTransmitterActivity : AppCompatActivity() {
48
45
  }
49
46
 
50
47
  private fun init() {
48
+ isForReconnect = intent.getBooleanExtra("IsForReconnect", false)
49
+
51
50
  sendDataToRN("", "cgm_place_transmitter_landing")
52
51
 
53
52
  Glide.with(this)
@@ -79,7 +78,7 @@ class PlaceTransmitterActivity : AppCompatActivity() {
79
78
  sendDataToRN("", "cgm_watch_demo_clicked")
80
79
 
81
80
  startActivity(
82
- Intent(this, VideoActivity::class.java).putExtra("VideoId", "r5Zemc4R044")
81
+ Intent(this, VideoActivity::class.java).putExtra("VideoId", if (isForReconnect) "n_pUrFoZ1wQ" else "r5Zemc4R044")
83
82
  )
84
83
  }
85
84
 
@@ -19,101 +19,105 @@ import ist.com.sdk.AlgorithmTools
19
19
  import ist.com.sdk.KRDecodeData
20
20
 
21
21
  class QRActivity : AppCompatActivity(), View.OnClickListener {
22
- private var mQRFragment: QRFragment? = null
23
- private var mPocDevice: PocDevice? = null
24
-
25
- override fun onCreate(savedInstanceState: Bundle?) {
26
- super.onCreate(savedInstanceState)
27
- setContentView(R.layout.activity_qr)
28
- findViewById<View?>(R.id.btnLeft).setOnClickListener(this)
29
- mPocDevice = intent.getParcelableExtra("device")
30
- if (mPocDevice == null) {
31
- finish()
22
+ private var mQRFragment: QRFragment? = null
23
+ private var mPocDevice: PocDevice? = null
24
+
25
+ override fun onCreate(savedInstanceState: Bundle?) {
26
+ super.onCreate(savedInstanceState)
27
+ setContentView(R.layout.activity_qr)
28
+ findViewById<View?>(R.id.btnLeft).setOnClickListener(this)
29
+ mPocDevice = intent.getParcelableExtra("device")
30
+ if (mPocDevice == null) {
31
+ finish()
32
+ }
32
33
  }
33
- }
34
-
35
- override fun onResume() {
36
- super.onResume()
37
- mQRFragment = QRFragment.newInstance(object : OnFragmentListener {
38
- override fun onPermissionRequestFail(isForever: Boolean) {
39
- }
40
-
41
- override fun onCameraOpenError(e: Exception?) {
42
- }
43
-
44
- override fun onScanResult(messages: String?, bitmap: Bitmap?) {
45
- Log.d("QR Info ==> ", "onScanResult: $messages")
46
- mQRFragment!!.restartPreviewAfterDelay(0)
47
- }
48
-
49
- override fun onScanResultFromCT2(messages: String?, bitmap: Bitmap?) {
50
- Log.d("QR Info ==> ", "onScanResultFromCT2: $messages")
51
-
52
- }
53
-
54
- override fun onScanResultFromCT3(messages: String, bitmap: Bitmap?) {
55
- decodeMessageCt3(messages)
56
- }
57
-
58
- override fun onScanResultFromCT5(messages: String?, bitmap: Bitmap?) {
59
- }
60
- })
61
- supportFragmentManager.beginTransaction()
62
- .add(R.id.container, mQRFragment!!)
63
- .commit()
64
- }
65
-
66
-
67
- /**
68
- * 进行数据解析
69
- *
70
- * @param message 需要解析的信息
71
- */
72
- private fun decodeMessageCt3(message: String) {
73
- Log.d("QR Info ==> ", "decodeMessageCt3: $message")
74
-
75
- val decodeData: KRDecodeData = AlgorithmTools.getInstance().decodeCT(message.toCharArray())
76
-
77
- Log.d("QR Info ==> ", "decodeData: $decodeData")
78
-
79
- showMessage(message, decodeData.k, decodeData.r, message)
80
- }
81
-
82
- fun showMessage(message: String?, k: Float, r: Float, sensorInfo: String?) {
83
- try {
84
-
85
- val prefsHelper = SharedPreferencesLibraryUtil(this)
86
- prefsHelper.setQRInformation(mPocDevice?.name, message, k, r, sensorInfo)
87
- val qrInformation: QRInformation? = prefsHelper.qrInformation
88
-
89
- Log.d("qrInformation==> ", "mPocDevice: ${mPocDevice.toString()}")
90
- if (qrInformation != null && qrInformation.isEffective(mPocDevice?.name, r, k)) {
91
- Log.d("qrInformation==> ", "qrInformation: $qrInformation")
92
- setResult(RESULT_OK, Intent().putExtra("device", mPocDevice as Parcelable))
93
- finish()
94
- } else {
95
- Toast.makeText(this@QRActivity, getString(R.string.verification_fail), Toast.LENGTH_SHORT)
96
- .show()
97
- mQRFragment!!.restartPreviewAfterDelay(0)
98
- }
99
- } catch (e: Exception) {
100
- e.printStackTrace()
101
- finish()
34
+
35
+ override fun onResume() {
36
+ super.onResume()
37
+ mQRFragment = QRFragment.newInstance(object : OnFragmentListener {
38
+ override fun onPermissionRequestFail(isForever: Boolean) {
39
+ }
40
+
41
+ override fun onCameraOpenError(e: Exception?) {
42
+ }
43
+
44
+ override fun onScanResult(messages: String?, bitmap: Bitmap?) {
45
+ Log.d("QR Info ==> ", "onScanResult: $messages")
46
+ mQRFragment!!.restartPreviewAfterDelay(0)
47
+ }
48
+
49
+ override fun onScanResultFromCT2(messages: String?, bitmap: Bitmap?) {
50
+ Log.d("QR Info ==> ", "onScanResultFromCT2: $messages")
51
+
52
+ }
53
+
54
+ override fun onScanResultFromCT3(messages: String, bitmap: Bitmap?) {
55
+ decodeMessageCt3(messages)
56
+ }
57
+
58
+ override fun onScanResultFromCT5(messages: String?, bitmap: Bitmap?) {
59
+ }
60
+ })
61
+ supportFragmentManager.beginTransaction()
62
+ .add(R.id.container, mQRFragment!!)
63
+ .commit()
64
+ }
65
+
66
+
67
+ /**
68
+ * 进行数据解析
69
+ *
70
+ * @param message 需要解析的信息
71
+ */
72
+ private fun decodeMessageCt3(message: String) {
73
+ Log.d("QR Info ==> ", "decodeMessageCt3: $message")
74
+
75
+ val decodeData: KRDecodeData = AlgorithmTools.getInstance().decodeCT(message.toCharArray())
76
+
77
+ Log.d("QR Info ==> ", "decodeData: $decodeData")
78
+
79
+ showMessage(message, decodeData.k, decodeData.r, message)
80
+ }
81
+
82
+ fun showMessage(message: String?, k: Float, r: Float, sensorInfo: String?) {
83
+ try {
84
+
85
+ val prefsHelper = SharedPreferencesLibraryUtil(this)
86
+ prefsHelper.setQRInformation(mPocDevice?.name, message, k, r, sensorInfo)
87
+ val qrInformation: QRInformation? = prefsHelper.qrInformation
88
+
89
+ Log.d("qrInformation==> ", "mPocDevice: ${mPocDevice.toString()}")
90
+ if (qrInformation != null && qrInformation.isEffective(mPocDevice?.name, r, k)) {
91
+ Log.d("qrInformation==> ", "qrInformation: $qrInformation")
92
+ setResult(RESULT_OK, Intent().putExtra("device", mPocDevice as Parcelable))
93
+ finish()
94
+ } else {
95
+ Toast.makeText(
96
+ this@QRActivity,
97
+ getString(R.string.verification_fail),
98
+ Toast.LENGTH_SHORT
99
+ )
100
+ .show()
101
+ mQRFragment!!.restartPreviewAfterDelay(0)
102
+ }
103
+ } catch (e: Exception) {
104
+ e.printStackTrace()
105
+ finish()
106
+ }
102
107
  }
103
- }
104
108
 
105
- override fun onClick(v: View) {
106
- if (v.id == R.id.btnLeft) {
107
- finish()
109
+ override fun onClick(v: View) {
110
+ if (v.id == R.id.btnLeft) {
111
+ finish()
112
+ }
108
113
  }
109
- }
110
-
111
- companion object {
112
- fun startQR(activity: Activity, device: PocDevice?) {
113
- val intent = Intent(activity, QRActivity::class.java)
114
- intent.flags = Intent.FLAG_ACTIVITY_SINGLE_TOP
115
- intent.putExtra("device", device as Parcelable)
116
- activity.startActivityForResult(intent, 115)
114
+
115
+ companion object {
116
+ fun startQR(activity: Activity, device: PocDevice?) {
117
+ val intent = Intent(activity, QRActivity::class.java)
118
+ intent.flags = Intent.FLAG_ACTIVITY_SINGLE_TOP
119
+ intent.putExtra("device", device as Parcelable)
120
+ activity.startActivityForResult(intent, 115)
121
+ }
117
122
  }
118
- }
119
123
  }
@@ -272,8 +272,8 @@ class SearchTransmitterActivity : BaseBleActivity() {
272
272
  binding.tvTransName.text = "Sno: ${transmitterDeviceInfo!!.pocDevice.name}"
273
273
  val formatter = SimpleDateFormat("hh:mm a", Locale.getDefault())
274
274
  binding.tvDateTime.text = "Connected on ${formatter.format(Date()).uppercase()}"
275
- binding.clSuccess.visibility = View.VISIBLE
276
275
  binding.clMain.visibility = View.GONE
276
+ binding.clSuccess.visibility = View.VISIBLE
277
277
  binding.commonButton.btnProceed.isEnabled = true
278
278
  binding.commonButton.btnProceed.alpha = 1.0f
279
279
  binding.view2.background = ContextCompat.getDrawable(this, R.drawable.bg_green_progress)
@@ -334,7 +334,7 @@ class SearchTransmitterActivity : BaseBleActivity() {
334
334
  sendDataToRN("", "cgm_watch_demo_clicked")
335
335
 
336
336
  startActivity(
337
- Intent(this, VideoActivity::class.java).putExtra("VideoId", "r5Zemc4R044")
337
+ Intent(this, VideoActivity::class.java).putExtra("VideoId", if (isForReconnect) "n_pUrFoZ1wQ" else "r5Zemc4R044")
338
338
  )
339
339
  }
340
340
 
@@ -88,7 +88,7 @@ class SensorConnectSuccessActivity : AppCompatActivity() {
88
88
  sendDataToRN("","cgm_watch_demo_clicked")
89
89
 
90
90
  startActivity(
91
- Intent(this, VideoActivity::class.java).putExtra("VideoId", "r5Zemc4R044")
91
+ Intent(this, VideoActivity::class.java).putExtra("VideoId", if (isForReconnect) "n_pUrFoZ1wQ" else "r5Zemc4R044")
92
92
  )
93
93
  }
94
94
 
@@ -27,7 +27,6 @@ import com.mytatvarnsdk.CgmTrackyLibModule.Companion.mReactContext
27
27
  import com.mytatvarnsdk.R
28
28
  import com.mytatvarnsdk.databinding.ActivityStartCgmactivityBinding
29
29
  import com.mytatvarnsdk.databinding.ExitDialogBottomsheetBinding
30
- import org.json.JSONObject
31
30
 
32
31
 
33
32
  class StartCGMActivity : AppCompatActivity() {
@@ -96,7 +95,10 @@ class StartCGMActivity : AppCompatActivity() {
96
95
  binding.toolbar.btnWatchDemo.setOnClickListener {
97
96
  sendDataToRN("", "cgm_watch_demo_clicked")
98
97
  startActivity(
99
- Intent(this, VideoActivity::class.java).putExtra("VideoId", "r5Zemc4R044")
98
+ Intent(this, VideoActivity::class.java).putExtra(
99
+ "VideoId",
100
+ if (isForReconnect) "n_pUrFoZ1wQ" else "r5Zemc4R044"
101
+ )
100
102
  )
101
103
  }
102
104
 
@@ -8,7 +8,6 @@ import androidx.appcompat.app.AppCompatActivity
8
8
  import androidx.core.view.ViewCompat
9
9
  import androidx.core.view.WindowInsetsCompat
10
10
  import com.mytatvarnsdk.R
11
- import com.mytatvarnsdk.databinding.ActivityStartCgmactivityBinding
12
11
  import com.mytatvarnsdk.databinding.ActivityVideoBinding
13
12
  import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.YouTubePlayer
14
13
  import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.listeners.AbstractYouTubePlayerListener
@@ -46,6 +45,9 @@ class VideoActivity : AppCompatActivity() {
46
45
  .build()
47
46
  binding.youtubePlayerView.enableAutomaticInitialization = false
48
47
 
48
+ binding.ivClose.setOnClickListener {
49
+ handleBackPressedManually()
50
+ }
49
51
 
50
52
  binding.youtubePlayerView.addFullscreenListener(object : FullscreenListener {
51
53
  override fun onEnterFullscreen(fullscreenView: View, exitFullscreen: () -> Unit) {
@@ -83,12 +85,15 @@ class VideoActivity : AppCompatActivity() {
83
85
 
84
86
  private val onBackPressedCallback = object : OnBackPressedCallback(true) {
85
87
  override fun handleOnBackPressed() {
86
- if (isFullscreen) {
87
- // if the player is in fullscreen, exit fullscreen
88
- youTubePlayer.toggleFullscreen()
89
- } else {
90
- finish()
91
- }
88
+ handleBackPressedManually()
89
+ }
90
+ }
91
+
92
+ private fun handleBackPressedManually() {
93
+ if (isFullscreen) {
94
+ youTubePlayer.toggleFullscreen()
95
+ } else {
96
+ finish()
92
97
  }
93
98
  }
94
99
  }