react-native-mytatva-rn-sdk 1.2.4 → 1.2.5

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 (751) hide show
  1. package/android/app/build.gradle +6 -0
  2. package/android/build.gradle +85 -5
  3. package/android/gradle.properties +1 -1
  4. package/android/libs/algorithm-release.aar +0 -0
  5. package/android/libs/library_zxing-release.aar +0 -0
  6. package/android/settings.gradle +1 -0
  7. package/android/src/main/AndroidManifest.xml +40 -2
  8. package/android/src/main/AndroidManifestNew.xml +127 -57
  9. package/android/src/main/java/cgmblelib/Enum/enumDevice.java +48 -0
  10. package/android/src/main/java/cgmblelib/Enum/enumError.java +102 -0
  11. package/android/src/main/java/cgmblelib/Enum/enumGlucoseStatus.java +99 -0
  12. package/android/src/main/java/cgmblelib/Enum/enumSound.java +54 -0
  13. package/android/src/main/java/cgmblelib/Enum/enumTrend.java +104 -0
  14. package/android/src/main/java/cgmblelib/Enum/enumUUID.java +134 -0
  15. package/android/src/main/java/cgmblelib/Enum/enumUnBind.java +52 -0
  16. package/android/src/main/java/cgmblelib/base/BApplication.java +86 -0
  17. package/android/src/main/java/cgmblelib/base/BSharedPreferences.java +110 -0
  18. package/android/src/main/java/cgmblelib/base/CActivity.java +128 -0
  19. package/android/src/main/java/cgmblelib/ble/BleService.java +231 -0
  20. package/android/src/main/java/cgmblelib/ble/entity/AlgorithmCallBack.java +67 -0
  21. package/android/src/main/java/cgmblelib/ble/gattcallback/BleGattCallback.java +410 -0
  22. package/android/src/main/java/cgmblelib/ble/gattcallback/EnumSynchronous.java +29 -0
  23. package/android/src/main/java/cgmblelib/ble/gattcallback/GattTool.java +359 -0
  24. package/android/src/main/java/cgmblelib/ble/gattcallback/LineUpTaskGlucoseProcess.java +168 -0
  25. package/android/src/main/java/cgmblelib/ble/gattcallback/ManageGattCallback.java +936 -0
  26. package/android/src/main/java/cgmblelib/ble/reconnectManagament/BaseReconnect.java +35 -0
  27. package/android/src/main/java/cgmblelib/ble/reconnectManagament/ReconnectManagement.java +298 -0
  28. package/android/src/main/java/cgmblelib/ble/scancallback/BleScanCallback.java +118 -0
  29. package/android/src/main/java/cgmblelib/ble/scancallback/ManageScanCallback.java +316 -0
  30. package/android/src/main/java/cgmblelib/custom/livedata/ManagementLiveData.java +216 -0
  31. package/android/src/main/java/cgmblelib/custom/livedata/connect/EnumConnect.java +30 -0
  32. package/android/src/main/java/cgmblelib/custom/livedata/connect/OperationConnectBean.java +51 -0
  33. package/android/src/main/java/cgmblelib/custom/livedata/connect/OperationConnectLiveData.java +66 -0
  34. package/android/src/main/java/cgmblelib/custom/livedata/scan/EnumScan.java +25 -0
  35. package/android/src/main/java/cgmblelib/custom/livedata/scan/OperationScanBean.java +60 -0
  36. package/android/src/main/java/cgmblelib/custom/livedata/scan/OperationScanLiveData.java +69 -0
  37. package/android/src/main/java/cgmblelib/custom/livedata/scan/PocDeviceAndRssi.java +57 -0
  38. package/android/src/main/java/cgmblelib/database/AppDatabase.java +82 -0
  39. package/android/src/main/java/cgmblelib/database/ArrayConverter.java +37 -0
  40. package/android/src/main/java/cgmblelib/database/ByteConverter.java +95 -0
  41. package/android/src/main/java/cgmblelib/database/DateConverter.java +40 -0
  42. package/android/src/main/java/cgmblelib/database/EnumConverter.java +76 -0
  43. package/android/src/main/java/cgmblelib/database/dao/DaoDevice.java +135 -0
  44. package/android/src/main/java/cgmblelib/database/dao/DaoGlucose.java +355 -0
  45. package/android/src/main/java/cgmblelib/database/entity/PocDevice.java +335 -0
  46. package/android/src/main/java/cgmblelib/database/entity/PocGlucose.java +393 -0
  47. package/android/src/main/java/cgmblelib/database/livedata/LatestDeviceLiveData.java +62 -0
  48. package/android/src/main/java/cgmblelib/database/repository/RepositoryDevice.java +206 -0
  49. package/android/src/main/java/cgmblelib/database/repository/RepositoryGlucose.java +195 -0
  50. package/android/src/main/java/cgmblelib/database/source/SourceBase.java +10 -0
  51. package/android/src/main/java/cgmblelib/database/source/SourceDevice.java +116 -0
  52. package/android/src/main/java/cgmblelib/database/source/SourceGlucose.java +232 -0
  53. package/android/src/main/java/cgmblelib/database/source/db/DBDataSource.java +29 -0
  54. package/android/src/main/java/cgmblelib/database/source/db/DeviceDBDataSource.java +194 -0
  55. package/android/src/main/java/cgmblelib/database/source/db/GlucoseDBDataSource.java +323 -0
  56. package/android/src/main/java/cgmblelib/qr/QRInformation.java +96 -0
  57. package/android/src/main/java/cgmblelib/receiver/BleServiceReceiver.java +129 -0
  58. package/android/src/main/java/cgmblelib/utils/AppExecutors.java +76 -0
  59. package/android/src/main/java/cgmblelib/utils/AxisYForGlucoseLevel.java +67 -0
  60. package/android/src/main/java/cgmblelib/utils/ConstantsLibrary.java +88 -0
  61. package/android/src/main/java/cgmblelib/utils/CrashHandler.java +39 -0
  62. package/android/src/main/java/cgmblelib/utils/DiskIOThreadExecutor.java +23 -0
  63. package/android/src/main/java/cgmblelib/utils/MyLog.java +606 -0
  64. package/android/src/main/java/cgmblelib/utils/NotificationTool.java +115 -0
  65. package/android/src/main/java/cgmblelib/utils/PermissionCheckTool.java +47 -0
  66. package/android/src/main/java/cgmblelib/utils/SharedPreferencesLibraryUtil.java +69 -0
  67. package/android/src/main/java/cgmblelib/utils/SyncMeta.kt +8 -0
  68. package/android/src/main/java/cgmblelib/utils/Tool.java +400 -0
  69. package/android/src/main/java/com/mytatvarnsdk/CgmTrackyLibModule.kt +885 -0
  70. package/android/src/main/java/com/mytatvarnsdk/CgmTrackyLibPackage.kt +16 -0
  71. package/android/src/main/java/com/mytatvarnsdk/MainActivity.kt +404 -0
  72. package/android/src/main/java/com/mytatvarnsdk/MainApplication.kt +52 -0
  73. package/android/src/main/java/com/mytatvarnsdk/MyTatvaRnSdkPackage.kt +2 -2
  74. package/android/src/main/java/com/mytatvarnsdk/MyTatvaRnSdkViewManager.kt +1 -1
  75. package/android/src/main/java/com/mytatvarnsdk/activity/BtManageActivity.java +427 -0
  76. package/android/src/main/java/com/mytatvarnsdk/activity/ConnectSensorActivity.kt +334 -0
  77. package/android/src/main/java/com/mytatvarnsdk/activity/ExitJourneyBottomSheet.kt +78 -0
  78. package/android/src/main/java/com/mytatvarnsdk/activity/HelpActivity.kt +70 -0
  79. package/android/src/main/java/com/mytatvarnsdk/activity/PermissionActivity.kt +367 -0
  80. package/android/src/main/java/com/mytatvarnsdk/activity/PlaceSensorActivity.kt +103 -0
  81. package/android/src/main/java/com/mytatvarnsdk/activity/PlaceTransmitterActivity.kt +145 -0
  82. package/android/src/main/java/com/mytatvarnsdk/activity/QRActivity.kt +119 -0
  83. package/android/src/main/java/com/mytatvarnsdk/activity/SearchTransmitterActivity.kt +554 -0
  84. package/android/src/main/java/com/mytatvarnsdk/activity/SensorConnectSuccessActivity.kt +156 -0
  85. package/android/src/main/java/com/mytatvarnsdk/activity/StartCGMActivity.kt +92 -0
  86. package/android/src/main/java/com/mytatvarnsdk/adapter/AdapterFragment.java +32 -0
  87. package/android/src/main/java/com/mytatvarnsdk/base/BaseBleActivity.java +223 -0
  88. package/android/src/main/java/com/mytatvarnsdk/base/BaseLiveDataEventsDistributeActivity.java +301 -0
  89. package/android/src/main/java/com/mytatvarnsdk/base/BasePermissionActivity.java +383 -0
  90. package/android/src/main/java/com/mytatvarnsdk/model/AllCGMLogRequest.kt +50 -0
  91. package/android/src/main/java/com/mytatvarnsdk/model/BaseViewModel.java +109 -0
  92. package/android/src/main/java/com/mytatvarnsdk/model/GlucoseLog.kt +41 -0
  93. package/android/src/main/java/com/mytatvarnsdk/model/GlucoseLogRequest.kt +3 -0
  94. package/android/src/main/java/com/mytatvarnsdk/model/MainActivityModel.java +18 -0
  95. package/android/src/main/java/com/mytatvarnsdk/myView/CircleImageView.java +110 -0
  96. package/android/src/main/java/com/mytatvarnsdk/myView/DragActionButton.java +96 -0
  97. package/android/src/main/java/com/mytatvarnsdk/myView/HistoryItem.java +45 -0
  98. package/android/src/main/java/com/mytatvarnsdk/myView/Media/CustomMediaPlayer.java +155 -0
  99. package/android/src/main/java/com/mytatvarnsdk/myView/PagerAdapterWrapper.java +117 -0
  100. package/android/src/main/java/com/mytatvarnsdk/myView/RtlViewPager.java +361 -0
  101. package/android/src/main/java/com/mytatvarnsdk/myView/dialog/AlarmDialogManagement.java +115 -0
  102. package/android/src/main/java/com/mytatvarnsdk/myView/dialog/DialogType.java +88 -0
  103. package/android/src/main/java/com/mytatvarnsdk/myView/dialog/WarnDialog.java +328 -0
  104. package/android/src/main/java/com/mytatvarnsdk/myView/dialog/WarnDialogUtils.java +202 -0
  105. package/android/src/main/java/com/mytatvarnsdk/myView/horizonViewPager/HorizontalViewPage.java +20 -0
  106. package/android/src/main/java/com/mytatvarnsdk/myView/horizonViewPager/ScaleInTransformer.java +33 -0
  107. package/android/src/main/java/com/mytatvarnsdk/myView/popupwindow/BPopupWindow.java +166 -0
  108. package/android/src/main/java/com/mytatvarnsdk/myView/popupwindow/ErrorInfoPop.java +28 -0
  109. package/android/src/main/java/com/mytatvarnsdk/myView/popupwindow/PermissionRequestPopWindow.java +64 -0
  110. package/android/src/main/java/com/mytatvarnsdk/myView/popupwindow/PopShowWay.java +16 -0
  111. package/android/src/main/java/com/mytatvarnsdk/myView/popupwindow/PopupType.java +70 -0
  112. package/android/src/main/java/com/mytatvarnsdk/myView/popupwindow/PopupWindowManagement.java +191 -0
  113. package/android/src/main/java/com/mytatvarnsdk/myView/popupwindow/TransmitterConnectPopWindow.java +88 -0
  114. package/android/src/main/java/com/mytatvarnsdk/myView/progress/BaseCustomProgress.java +55 -0
  115. package/android/src/main/java/com/mytatvarnsdk/myView/progress/CircularProgressView.java +238 -0
  116. package/android/src/main/java/com/mytatvarnsdk/myView/progress/ProgressManagement.java +100 -0
  117. package/android/src/main/java/com/mytatvarnsdk/myView/progress/ProgressType.java +41 -0
  118. package/android/src/main/java/com/mytatvarnsdk/myView/progress/WaitProgress.java +91 -0
  119. package/android/src/main/java/com/mytatvarnsdk/myView/widget/SensorGlucoseShow.java +219 -0
  120. package/android/src/main/java/com/mytatvarnsdk/myView/widget/TransmitterState.java +536 -0
  121. package/android/src/main/java/com/mytatvarnsdk/network/ApiServiceInterface.kt +22 -0
  122. package/android/src/main/java/com/mytatvarnsdk/network/AuthenticateSDKService.kt +168 -0
  123. package/android/src/main/java/com/mytatvarnsdk/receiver/BootCompleteReceiver.java +31 -0
  124. package/android/src/main/java/com/mytatvarnsdk/utils/CGMTool.java +59 -0
  125. package/android/src/main/java/com/mytatvarnsdk/utils/DeviceStatus.kt +35 -0
  126. package/android/src/main/java/com/mytatvarnsdk/utils/EncryptionUtil.kt +98 -0
  127. package/android/src/main/java/com/mytatvarnsdk/utils/RetrofitInstance.kt +20 -0
  128. package/android/src/main/java/com/mytatvarnsdk/utils/TatvaEncryptionConfig.kt +20 -0
  129. package/android/src/main/java/com/mytatvarnsdk/utils/Tatva_Environment.kt +6 -0
  130. package/android/src/main/res/anim/pop_down_out.xml +12 -0
  131. package/android/src/main/res/anim/pop_left_right.xml +8 -0
  132. package/android/src/main/res/anim/pop_right_left.xml +7 -0
  133. package/android/src/main/res/anim/pop_up_in.xml +11 -0
  134. package/android/src/main/res/anim/reverse_down_anim.xml +12 -0
  135. package/android/src/main/res/anim/reverse_up_anim.xml +11 -0
  136. package/android/src/main/res/color/radio_text_selector.xml +5 -0
  137. package/android/src/main/res/drawable/bg_blue.xml +6 -0
  138. package/android/src/main/res/drawable/bg_dark_black.xml +6 -0
  139. package/android/src/main/res/drawable/bg_darkgray_corner_16.xml +5 -0
  140. package/android/src/main/res/drawable/bg_design.png +0 -0
  141. package/android/src/main/res/drawable/bg_gray_corner10.xml +5 -0
  142. package/android/src/main/res/drawable/bg_green.xml +6 -0
  143. package/android/src/main/res/drawable/bg_green_border_20.xml +6 -0
  144. package/android/src/main/res/drawable/bg_light_blue.xml +6 -0
  145. package/android/src/main/res/drawable/bg_light_green_border_20.xml +7 -0
  146. package/android/src/main/res/drawable/bg_maincolor_corner5.xml +6 -0
  147. package/android/src/main/res/drawable/bg_offwhite.xml +6 -0
  148. package/android/src/main/res/drawable/bg_progressbar.xml +14 -0
  149. package/android/src/main/res/drawable/bg_red_border_20.xml +6 -0
  150. package/android/src/main/res/drawable/bg_rounded_gradient.xml +12 -0
  151. package/android/src/main/res/drawable/bg_transblack_corner_8.xml +5 -0
  152. package/android/src/main/res/drawable/bg_white_border_20.xml +10 -0
  153. package/android/src/main/res/drawable/bg_white_corner_10.xml +7 -0
  154. package/android/src/main/res/drawable/bg_white_corner_8.xml +7 -0
  155. package/android/src/main/res/drawable/bg_white_green_border_20.xml +7 -0
  156. package/android/src/main/res/drawable/bg_yellow_bottom.xml +10 -0
  157. package/android/src/main/res/drawable/bg_yellow_top.xml +10 -0
  158. package/android/src/main/res/drawable/bottom_sheet_background.xml +8 -0
  159. package/android/src/main/res/drawable/checked_arrow_up_down.xml +5 -0
  160. package/android/src/main/res/drawable/circle_black.xml +7 -0
  161. package/android/src/main/res/drawable/circle_shape.xml +35 -0
  162. package/android/src/main/res/drawable/custom_radio_icon_selector.xml +5 -0
  163. package/android/src/main/res/drawable/custom_thumb.xml +6 -0
  164. package/android/src/main/res/drawable/dialog_warn_button_cancel.xml +11 -0
  165. package/android/src/main/res/drawable/dialog_warn_button_ok.xml +11 -0
  166. package/android/src/main/res/drawable/gray_border_15.xml +9 -0
  167. package/android/src/main/res/drawable/guide_circle.xml +5 -0
  168. package/android/src/main/res/drawable/hr_button_select.xml +5 -0
  169. package/android/src/main/res/drawable/hr_normal.xml +13 -0
  170. package/android/src/main/res/drawable/hr_select.xml +10 -0
  171. package/android/src/main/res/drawable/ic_charging_case.png +0 -0
  172. package/android/src/main/res/drawable/ic_close.png +0 -0
  173. package/android/src/main/res/drawable/ic_close_gray.xml +9 -0
  174. package/android/src/main/res/drawable/ic_play.xml +9 -0
  175. package/android/src/main/res/drawable/ic_play_gif.gif +0 -0
  176. package/android/src/main/res/drawable/ic_rectangle_blue.xml +9 -0
  177. package/android/src/main/res/drawable/ic_right_arrow.xml +9 -0
  178. package/android/src/main/res/drawable/ic_sync.xml +9 -0
  179. package/android/src/main/res/drawable/ic_transmitter.png +0 -0
  180. package/android/src/main/res/drawable/ic_whatsapp.xml +31 -0
  181. package/android/src/main/res/drawable/ic_whatsapp_green.xml +28 -0
  182. package/android/src/main/res/drawable/icon_glucose_hyperglycemia.xml +5 -0
  183. package/android/src/main/res/drawable/img_box_cross.png +0 -0
  184. package/android/src/main/res/drawable/img_box_qr.png +0 -0
  185. package/android/src/main/res/drawable/img_case.png +0 -0
  186. package/android/src/main/res/drawable/img_cgm_device.png +0 -0
  187. package/android/src/main/res/drawable/img_cgm_shadow.png +0 -0
  188. package/android/src/main/res/drawable/img_charging_indicator.png +0 -0
  189. package/android/src/main/res/drawable/img_charging_pod_full.png +0 -0
  190. package/android/src/main/res/drawable/img_female.png +0 -0
  191. package/android/src/main/res/drawable/img_male.png +0 -0
  192. package/android/src/main/res/drawable/img_trans_shell.png +0 -0
  193. package/android/src/main/res/drawable/popup_button_confirm_enable.xml +11 -0
  194. package/android/src/main/res/drawable/popup_window_bg.xml +9 -0
  195. package/android/src/main/res/drawable/radio_button_background.xml +17 -0
  196. package/android/src/main/res/drawable/radio_checked.xml +9 -0
  197. package/android/src/main/res/drawable/radio_unchecked.xml +13 -0
  198. package/android/src/main/res/drawable/searching.gif +0 -0
  199. package/android/src/main/res/drawable/sensor_bg.xml +10 -0
  200. package/android/src/main/res/drawable/success_anim.gif +0 -0
  201. package/android/src/main/res/drawable/thumb_selector.xml +11 -0
  202. package/android/src/main/res/drawable/toggle_off.xml +16 -0
  203. package/android/src/main/res/drawable/toggle_on.xml +16 -0
  204. package/android/src/main/res/drawable/track_selector.xml +17 -0
  205. package/android/src/main/res/drawable/warning.gif +0 -0
  206. package/android/src/main/res/drawable-hdpi/alarm_sound_shake_white.png +0 -0
  207. package/android/src/main/res/drawable-hdpi/arrow_down.png +0 -0
  208. package/android/src/main/res/drawable-hdpi/arrow_up.png +0 -0
  209. package/android/src/main/res/drawable-hdpi/calibration_notice.png +0 -0
  210. package/android/src/main/res/drawable-hdpi/drop_rapidly.png +0 -0
  211. package/android/src/main/res/drawable-hdpi/drop_rapidly_low.png +0 -0
  212. package/android/src/main/res/drawable-hdpi/drop_steadily.png +0 -0
  213. package/android/src/main/res/drawable-hdpi/home_menu.png +0 -0
  214. package/android/src/main/res/drawable-hdpi/implentation_step3.png +0 -0
  215. package/android/src/main/res/drawable-hdpi/implentation_step4.png +0 -0
  216. package/android/src/main/res/drawable-hdpi/poput_request_permission_icon.png +0 -0
  217. package/android/src/main/res/drawable-hdpi/product_box.png +0 -0
  218. package/android/src/main/res/drawable-hdpi/progress_wait_other_icon.png +0 -0
  219. package/android/src/main/res/drawable-hdpi/rise_rapidly.png +0 -0
  220. package/android/src/main/res/drawable-hdpi/rise_steadily.png +0 -0
  221. package/android/src/main/res/drawable-hdpi/sound_close.png +0 -0
  222. package/android/src/main/res/drawable-hdpi/sound_open.png +0 -0
  223. package/android/src/main/res/drawable-hdpi/steady.png +0 -0
  224. package/android/src/main/res/drawable-hdpi/toast_success.png +0 -0
  225. package/android/src/main/res/drawable-hdpi/video_wait.png +0 -0
  226. package/android/src/main/res/drawable-xhdpi/alarm_sound_shake_white.png +0 -0
  227. package/android/src/main/res/drawable-xhdpi/arrow_down.png +0 -0
  228. package/android/src/main/res/drawable-xhdpi/arrow_up.png +0 -0
  229. package/android/src/main/res/drawable-xhdpi/arrows_down_white.png +0 -0
  230. package/android/src/main/res/drawable-xhdpi/bt_qr_img.png +0 -0
  231. package/android/src/main/res/drawable-xhdpi/calibration_notice.png +0 -0
  232. package/android/src/main/res/drawable-xhdpi/cgm_img.png +0 -0
  233. package/android/src/main/res/drawable-xhdpi/chart_point_hypoglycemia.png +0 -0
  234. package/android/src/main/res/drawable-xhdpi/chart_point_normal.png +0 -0
  235. package/android/src/main/res/drawable-xhdpi/count_down_icon.png +0 -0
  236. package/android/src/main/res/drawable-xhdpi/device_unbind.png +0 -0
  237. package/android/src/main/res/drawable-xhdpi/drop_rapidly.png +0 -0
  238. package/android/src/main/res/drawable-xhdpi/drop_rapidly_low.png +0 -0
  239. package/android/src/main/res/drawable-xhdpi/drop_steadily.png +0 -0
  240. package/android/src/main/res/drawable-xhdpi/friend_share.png +0 -0
  241. package/android/src/main/res/drawable-xhdpi/guide_step1.png +0 -0
  242. package/android/src/main/res/drawable-xhdpi/guide_step10.png +0 -0
  243. package/android/src/main/res/drawable-xhdpi/guide_step2_arm.png +0 -0
  244. package/android/src/main/res/drawable-xhdpi/guide_step2_fu.png +0 -0
  245. package/android/src/main/res/drawable-xhdpi/guide_step3.png +0 -0
  246. package/android/src/main/res/drawable-xhdpi/guide_step4.png +0 -0
  247. package/android/src/main/res/drawable-xhdpi/guide_step5.png +0 -0
  248. package/android/src/main/res/drawable-xhdpi/guide_step6.png +0 -0
  249. package/android/src/main/res/drawable-xhdpi/guide_step7.png +0 -0
  250. package/android/src/main/res/drawable-xhdpi/guide_step8.png +0 -0
  251. package/android/src/main/res/drawable-xhdpi/guide_step9.png +0 -0
  252. package/android/src/main/res/drawable-xhdpi/home_menu.png +0 -0
  253. package/android/src/main/res/drawable-xhdpi/home_question.png +0 -0
  254. package/android/src/main/res/drawable-xhdpi/icon_back.png +0 -0
  255. package/android/src/main/res/drawable-xhdpi/icon_ct3.png +0 -0
  256. package/android/src/main/res/drawable-xhdpi/icon_glucose_hyperglycemia.png +0 -0
  257. package/android/src/main/res/drawable-xhdpi/implement_close.png +0 -0
  258. package/android/src/main/res/drawable-xhdpi/implentation_step2_1.png +0 -0
  259. package/android/src/main/res/drawable-xhdpi/implentation_step2_2.png +0 -0
  260. package/android/src/main/res/drawable-xhdpi/implentation_step3.png +0 -0
  261. package/android/src/main/res/drawable-xhdpi/implentation_step4.png +0 -0
  262. package/android/src/main/res/drawable-xhdpi/loading_icon.png +0 -0
  263. package/android/src/main/res/drawable-xhdpi/login_loading.png +0 -0
  264. package/android/src/main/res/drawable-xhdpi/main_bg.png +0 -0
  265. package/android/src/main/res/drawable-xhdpi/mes_pop_box_icon.png +0 -0
  266. package/android/src/main/res/drawable-xhdpi/poput_request_permission_icon.png +0 -0
  267. package/android/src/main/res/drawable-xhdpi/prepare_box_video.png +0 -0
  268. package/android/src/main/res/drawable-xhdpi/prepare_products.png +0 -0
  269. package/android/src/main/res/drawable-xhdpi/product_box.png +0 -0
  270. package/android/src/main/res/drawable-xhdpi/progress_wait_center.png +0 -0
  271. package/android/src/main/res/drawable-xhdpi/progress_wait_other_icon.png +0 -0
  272. package/android/src/main/res/drawable-xhdpi/progress_wait_search.png +0 -0
  273. package/android/src/main/res/drawable-xhdpi/rise_rapidly.png +0 -0
  274. package/android/src/main/res/drawable-xhdpi/rise_steadily.png +0 -0
  275. package/android/src/main/res/drawable-xhdpi/sound_close.png +0 -0
  276. package/android/src/main/res/drawable-xhdpi/sound_implement.png +0 -0
  277. package/android/src/main/res/drawable-xhdpi/sound_open.png +0 -0
  278. package/android/src/main/res/drawable-xhdpi/star.png +0 -0
  279. package/android/src/main/res/drawable-xhdpi/steady.png +0 -0
  280. package/android/src/main/res/drawable-xhdpi/title_black.png +0 -0
  281. package/android/src/main/res/drawable-xhdpi/toast_success.png +0 -0
  282. package/android/src/main/res/drawable-xhdpi/trend_drop_rapidly.png +0 -0
  283. package/android/src/main/res/drawable-xhdpi/trend_drop_rapidly_low.png +0 -0
  284. package/android/src/main/res/drawable-xhdpi/trend_drop_steadily.png +0 -0
  285. package/android/src/main/res/drawable-xhdpi/trend_none.png +0 -0
  286. package/android/src/main/res/drawable-xhdpi/trend_rise_rapidly.png +0 -0
  287. package/android/src/main/res/drawable-xhdpi/trend_rise_steadily.png +0 -0
  288. package/android/src/main/res/drawable-xhdpi/trend_steady.png +0 -0
  289. package/android/src/main/res/drawable-xhdpi/triangle_red.png +0 -0
  290. package/android/src/main/res/drawable-xhdpi/triangle_yellow.png +0 -0
  291. package/android/src/main/res/drawable-xhdpi/video_wait.png +0 -0
  292. package/android/src/main/res/drawable-xhdpi/widget_drop_rapid.png +0 -0
  293. package/android/src/main/res/drawable-xhdpi/widget_drop_rapid_low.png +0 -0
  294. package/android/src/main/res/drawable-xhdpi/widget_drop_slow.png +0 -0
  295. package/android/src/main/res/drawable-xhdpi/widget_rise_rapid.png +0 -0
  296. package/android/src/main/res/drawable-xhdpi/widget_rise_slow.png +0 -0
  297. package/android/src/main/res/drawable-xhdpi/widget_steady.png +0 -0
  298. package/android/src/main/res/drawable-xhdpi/zoom_in.png +0 -0
  299. package/android/src/main/res/drawable-xhdpi/zoom_out_white.png +0 -0
  300. package/android/src/main/res/drawable-xxhdpi/alarm_sound_shake_white.png +0 -0
  301. package/android/src/main/res/drawable-xxhdpi/calibration_notice.png +0 -0
  302. package/android/src/main/res/drawable-xxhdpi/drop_rapidly.png +0 -0
  303. package/android/src/main/res/drawable-xxhdpi/drop_rapidly_low.png +0 -0
  304. package/android/src/main/res/drawable-xxhdpi/drop_steadily.png +0 -0
  305. package/android/src/main/res/drawable-xxhdpi/home_menu.png +0 -0
  306. package/android/src/main/res/drawable-xxhdpi/mes_pop_box_icon.png +0 -0
  307. package/android/src/main/res/drawable-xxhdpi/poput_request_permission_icon.png +0 -0
  308. package/android/src/main/res/drawable-xxhdpi/product_box.png +0 -0
  309. package/android/src/main/res/drawable-xxhdpi/progress_wait_center.png +0 -0
  310. package/android/src/main/res/drawable-xxhdpi/progress_wait_other_icon.png +0 -0
  311. package/android/src/main/res/drawable-xxhdpi/rise_rapidly.png +0 -0
  312. package/android/src/main/res/drawable-xxhdpi/rise_steadily.png +0 -0
  313. package/android/src/main/res/drawable-xxhdpi/sound_close.png +0 -0
  314. package/android/src/main/res/drawable-xxhdpi/sound_open.png +0 -0
  315. package/android/src/main/res/drawable-xxhdpi/steady.png +0 -0
  316. package/android/src/main/res/drawable-xxhdpi/title_black.png +0 -0
  317. package/android/src/main/res/drawable-xxhdpi/toast_success.png +0 -0
  318. package/android/src/main/res/drawable-xxhdpi/video_wait.png +0 -0
  319. package/android/src/main/res/drawable-xxxhdpi/mes_pop_box_icon.png +0 -0
  320. package/android/src/main/res/drawable-xxxhdpi/poput_request_permission_icon.png +0 -0
  321. package/android/src/main/res/drawable-xxxhdpi/progress_wait_other_icon.png +0 -0
  322. package/android/src/main/res/font/playfairdisplay_bold.ttf +0 -0
  323. package/android/src/main/res/font/playfairdisplay_medium.ttf +0 -0
  324. package/android/src/main/res/font/playfairdisplay_regular.ttf +0 -0
  325. package/android/src/main/res/font/roboto_bold.ttf +0 -0
  326. package/android/src/main/res/font/roboto_medium.ttf +0 -0
  327. package/android/src/main/res/font/roboto_regular.ttf +0 -0
  328. package/android/src/main/res/font/roboto_semibold.ttf +0 -0
  329. package/android/src/main/res/layout/activity_bt_manage.xml +107 -0
  330. package/android/src/main/res/layout/activity_cgmdevice.xml +99 -0
  331. package/android/src/main/res/layout/activity_connect_sensor.xml +415 -0
  332. package/android/src/main/res/layout/activity_count_down.xml +229 -0
  333. package/android/src/main/res/layout/activity_guide.xml +118 -0
  334. package/android/src/main/res/layout/activity_help.xml +188 -0
  335. package/android/src/main/res/layout/activity_main.xml +48 -0
  336. package/android/src/main/res/layout/activity_permission.xml +205 -0
  337. package/android/src/main/res/layout/activity_place_sensor.xml +156 -0
  338. package/android/src/main/res/layout/activity_place_transmitter.xml +124 -0
  339. package/android/src/main/res/layout/activity_prepare_step1.xml +191 -0
  340. package/android/src/main/res/layout/activity_qr.xml +16 -0
  341. package/android/src/main/res/layout/activity_qractivity.xml +10 -0
  342. package/android/src/main/res/layout/activity_search_transmitter.xml +667 -0
  343. package/android/src/main/res/layout/activity_sensor_connect_success.xml +101 -0
  344. package/android/src/main/res/layout/activity_start_cgmactivity.xml +175 -0
  345. package/android/src/main/res/layout/activity_transmitter_list.xml +38 -0
  346. package/android/src/main/res/layout/activity_transmitter_state.xml +74 -0
  347. package/android/src/main/res/layout/activity_trend_detail.xml +287 -0
  348. package/android/src/main/res/layout/activity_welcome.xml +11 -0
  349. package/android/src/main/res/layout/dialog_progress_wait.xml +49 -0
  350. package/android/src/main/res/layout/dialog_warn.xml +140 -0
  351. package/android/src/main/res/layout/exit_dialog_bottomsheet.xml +90 -0
  352. package/android/src/main/res/layout/fragment_count_down.xml +65 -0
  353. package/android/src/main/res/layout/fragment_prepare.xml +15 -0
  354. package/android/src/main/res/layout/fragment_sensor.xml +174 -0
  355. package/android/src/main/res/layout/fragment_sensor_glucose_show.xml +62 -0
  356. package/android/src/main/res/layout/history_item.xml +92 -0
  357. package/android/src/main/res/layout/layout_button.xml +56 -0
  358. package/android/src/main/res/layout/layout_green_border_button.xml +44 -0
  359. package/android/src/main/res/layout/layout_red_button.xml +43 -0
  360. package/android/src/main/res/layout/layout_toolbar.xml +61 -0
  361. package/android/src/main/res/layout/pop_error_info.xml +13 -0
  362. package/android/src/main/res/layout/popup_window_request_permisson.xml +54 -0
  363. package/android/src/main/res/layout/popup_window_transmitter_connect.xml +103 -0
  364. package/android/src/main/res/layout/top_menu_common.xml +95 -0
  365. package/android/src/main/res/layout/view_loading_button.xml +29 -0
  366. package/android/src/main/res/raw/high_alarm.mp3 +0 -0
  367. package/android/src/main/res/raw/medium_alarm.mp3 +0 -0
  368. package/android/src/main/res/values/colors.xml +44 -0
  369. package/android/src/main/res/values/dimens.xml +21 -0
  370. package/android/src/main/res/values/strings.xml +202 -0
  371. package/android/src/main/res/values/styles.xml +98 -0
  372. package/ios/Assets.xcassets/AccentColor.colorset/Contents.json +11 -0
  373. package/ios/Assets.xcassets/AppIcon.appiconset/Contents.json +35 -0
  374. package/ios/Assets.xcassets/CGM_with_Toggle.imageset/CGM_with_Toggle.png +0 -0
  375. package/ios/Assets.xcassets/CGM_with_Toggle.imageset/Contents.json +21 -0
  376. package/ios/Assets.xcassets/Contents.json +6 -0
  377. package/ios/Assets.xcassets/Take_out_transmitter.imageset/Contents.json +21 -0
  378. package/ios/Assets.xcassets/Take_out_transmitter.imageset/Take our transmitter.png +0 -0
  379. package/ios/Assets.xcassets/charging.imageset/Contents.json +21 -0
  380. package/ios/Assets.xcassets/charging.imageset/charging.png +0 -0
  381. package/ios/Assets.xcassets/charging_pod.imageset/Contents.json +21 -0
  382. package/ios/Assets.xcassets/charging_pod.imageset/charging_pod.png +0 -0
  383. package/ios/Assets.xcassets/close_pod.imageset/Contents.json +23 -0
  384. package/ios/Assets.xcassets/close_pod.imageset/Group 1000005563.png +0 -0
  385. package/ios/Assets.xcassets/close_pod.imageset/Group 1000005563@2x.png +0 -0
  386. package/ios/Assets.xcassets/close_pod.imageset/Group 1000005563@3x.png +0 -0
  387. package/ios/Assets.xcassets/do_not_place_inside.imageset/Contents.json +21 -0
  388. package/ios/Assets.xcassets/do_not_place_inside.imageset/do_not_place_inside.png +0 -0
  389. package/ios/Assets.xcassets/flip_the_reference.imageset/Contents.json +21 -0
  390. package/ios/Assets.xcassets/flip_the_reference.imageset/flip_the_reference.png +0 -0
  391. package/ios/Assets.xcassets/fully_charged.imageset/Contents.json +21 -0
  392. package/ios/Assets.xcassets/fully_charged.imageset/fully_charged.png +0 -0
  393. package/ios/Assets.xcassets/green.colorset/Contents.json +38 -0
  394. package/ios/Assets.xcassets/ic_arrow.imageset/7.png +0 -0
  395. package/ios/Assets.xcassets/ic_arrow.imageset/7@2x.png +0 -0
  396. package/ios/Assets.xcassets/ic_arrow.imageset/7@3x.png +0 -0
  397. package/ios/Assets.xcassets/ic_arrow.imageset/Contents.json +23 -0
  398. package/ios/Assets.xcassets/ic_back.imageset/7.png +0 -0
  399. package/ios/Assets.xcassets/ic_back.imageset/7@2x.png +0 -0
  400. package/ios/Assets.xcassets/ic_back.imageset/7@3x.png +0 -0
  401. package/ios/Assets.xcassets/ic_back.imageset/Contents.json +23 -0
  402. package/ios/Assets.xcassets/ic_back_arrow.imageset/Contents.json +23 -0
  403. package/ios/Assets.xcassets/ic_back_arrow.imageset/image 17 (Traced).png +0 -0
  404. package/ios/Assets.xcassets/ic_back_arrow.imageset/image 17 (Traced)@2x.png +0 -0
  405. package/ios/Assets.xcassets/ic_back_arrow.imageset/image 17 (Traced)@3x.png +0 -0
  406. package/ios/Assets.xcassets/ic_circle.imageset/Contents.json +23 -0
  407. package/ios/Assets.xcassets/ic_circle.imageset/circle.png +0 -0
  408. package/ios/Assets.xcassets/ic_circle.imageset/circle@2x.png +0 -0
  409. package/ios/Assets.xcassets/ic_circle.imageset/circle@3x.png +0 -0
  410. package/ios/Assets.xcassets/ic_close.imageset/Contents.json +23 -0
  411. package/ios/Assets.xcassets/ic_close.imageset/close button.png +0 -0
  412. package/ios/Assets.xcassets/ic_close.imageset/close button@2x.png +0 -0
  413. package/ios/Assets.xcassets/ic_close.imageset/close button@3x.png +0 -0
  414. package/ios/Assets.xcassets/ic_close_popup.imageset/Contents.json +23 -0
  415. package/ios/Assets.xcassets/ic_close_popup.imageset/Frame.png +0 -0
  416. package/ios/Assets.xcassets/ic_close_popup.imageset/Frame@2x.png +0 -0
  417. package/ios/Assets.xcassets/ic_close_popup.imageset/Frame@3x.png +0 -0
  418. package/ios/Assets.xcassets/ic_green_arrow.imageset/Contents.json +23 -0
  419. package/ios/Assets.xcassets/ic_green_arrow.imageset/image 17 (Traced).png +0 -0
  420. package/ios/Assets.xcassets/ic_green_arrow.imageset/image 17 (Traced)@2x.png +0 -0
  421. package/ios/Assets.xcassets/ic_green_arrow.imageset/image 17 (Traced)@3x.png +0 -0
  422. package/ios/Assets.xcassets/ic_play.imageset/Contents.json +26 -0
  423. package/ios/Assets.xcassets/ic_play.imageset/Play.png +0 -0
  424. package/ios/Assets.xcassets/ic_play.imageset/Play@2x.png +0 -0
  425. package/ios/Assets.xcassets/ic_play.imageset/Play@3x.png +0 -0
  426. package/ios/Assets.xcassets/ic_selected.imageset/Contents.json +23 -0
  427. package/ios/Assets.xcassets/ic_selected.imageset/Frame.png +0 -0
  428. package/ios/Assets.xcassets/ic_selected.imageset/Frame@2x.png +0 -0
  429. package/ios/Assets.xcassets/ic_selected.imageset/Frame@3x.png +0 -0
  430. package/ios/Assets.xcassets/ic_whatsApp_only.imageset/Contents.json +23 -0
  431. package/ios/Assets.xcassets/ic_whatsApp_only.imageset/WhatsApp.png +0 -0
  432. package/ios/Assets.xcassets/ic_whatsApp_only.imageset/WhatsApp@2x.png +0 -0
  433. package/ios/Assets.xcassets/ic_whatsApp_only.imageset/WhatsApp@3x.png +0 -0
  434. package/ios/Assets.xcassets/ic_whatsapp.imageset/Contents.json +23 -0
  435. package/ios/Assets.xcassets/ic_whatsapp.imageset/Frame 1000006343.png +0 -0
  436. package/ios/Assets.xcassets/ic_whatsapp.imageset/Frame 1000006343@2x.png +0 -0
  437. package/ios/Assets.xcassets/ic_whatsapp.imageset/Frame 1000006343@3x.png +0 -0
  438. package/ios/Assets.xcassets/indigo.colorset/Contents.json +38 -0
  439. package/ios/Assets.xcassets/mandala.imageset/Contents.json +21 -0
  440. package/ios/Assets.xcassets/mandala.imageset/ending.png +0 -0
  441. package/ios/Assets.xcassets/open_pod.imageset/Contents.json +23 -0
  442. package/ios/Assets.xcassets/open_pod.imageset/Screenshot 2025-04-22 at 8.07.34/342/200/257PM 1.png +0 -0
  443. package/ios/Assets.xcassets/open_pod.imageset/Screenshot 2025-04-22 at 8.07.34/342/200/257PM 1@2x.png +0 -0
  444. package/ios/Assets.xcassets/open_pod.imageset/Screenshot 2025-04-22 at 8.07.34/342/200/257PM 1@3x.png +0 -0
  445. package/ios/Assets.xcassets/step4.imageset/Contents.json +21 -0
  446. package/ios/Assets.xcassets/step4.imageset/step4.png +0 -0
  447. package/ios/Assets.xcassets/step5.imageset/Contents.json +21 -0
  448. package/ios/Assets.xcassets/step5.imageset/step5.png +0 -0
  449. package/ios/Assets.xcassets/transmitter_image.imageset/Contents.json +21 -0
  450. package/ios/Assets.xcassets/transmitter_image.imageset/transmitter_image.png +0 -0
  451. package/ios/Assets.xcassets/transmitter_shadow.imageset/CGM Shadow.png +0 -0
  452. package/ios/Assets.xcassets/transmitter_shadow.imageset/Contents.json +21 -0
  453. package/ios/Assets.xcassets/unselectedGray.colorset/Contents.json +38 -0
  454. package/ios/Custom/CustomColor.swift +22 -0
  455. package/ios/Custom/CustomFont.swift +49 -0
  456. package/ios/Custom/CustomOverlayButton.swift +237 -0
  457. package/ios/Custom/CustomStepProgressBar.swift +167 -0
  458. package/ios/Custom/CustomTopUIView.swift +173 -0
  459. package/ios/Custom/CustomView.swift +60 -0
  460. package/ios/Database/Advertise+CoreDataClass.h +23 -0
  461. package/ios/Database/Advertise+CoreDataClass.m +14 -0
  462. package/ios/Database/Advertise+CoreDataProperties.h +28 -0
  463. package/ios/Database/Advertise+CoreDataProperties.m +25 -0
  464. package/ios/Database/Device+CoreDataClass.h +23 -0
  465. package/ios/Database/Device+CoreDataClass.m +14 -0
  466. package/ios/Database/Device+CoreDataProperties.h +47 -0
  467. package/ios/Database/Device+CoreDataProperties.m +30 -0
  468. package/ios/Database/GlucoseData+CoreDataClass.h +23 -0
  469. package/ios/Database/GlucoseData+CoreDataClass.m +14 -0
  470. package/ios/Database/GlucoseData+CoreDataProperties.h +37 -0
  471. package/ios/Database/GlucoseData+CoreDataProperties.m +34 -0
  472. package/ios/Database/KLTAppDelegate.h +24 -0
  473. package/ios/Database/KLTAppDelegate.m +109 -0
  474. package/ios/Database/KLTBluetoothManager.h +83 -0
  475. package/ios/Database/KLTBluetoothManager.m +723 -0
  476. package/ios/Database/KLTCommonDefine.h +52 -0
  477. package/ios/Database/KLTDatabaseHandler.h +59 -0
  478. package/ios/Database/KLTDatabaseHandler.m +437 -0
  479. package/ios/Database/KLTFormat.h +32 -0
  480. package/ios/Database/KLTFormat.m +270 -0
  481. package/ios/Database/KLTLaunchConfiguration.h +37 -0
  482. package/ios/Database/KLTLaunchConfiguration.m +96 -0
  483. package/ios/Database/KLTLocalSettingManager.h +38 -0
  484. package/ios/Database/KLTLocalSettingManager.m +138 -0
  485. package/ios/Database/KLTPrefixHeader.pch +123 -0
  486. package/ios/Database/KLTRunLog.h +36 -0
  487. package/ios/Database/KLTRunLog.m +156 -0
  488. package/ios/Database/KLTUserDefautKeyDefine.h +42 -0
  489. package/ios/Database/MyTatva.xcdatamodeld/MyTatva.xcdatamodel/contents +68 -0
  490. package/ios/Database/NSString+KLTDateString.h +36 -0
  491. package/ios/Database/NSString+KLTDateString.m +160 -0
  492. package/ios/Database/ReceiveData+CoreDataClass.h +23 -0
  493. package/ios/Database/ReceiveData+CoreDataClass.m +14 -0
  494. package/ios/Database/ReceiveData+CoreDataProperties.h +47 -0
  495. package/ios/Database/ReceiveData+CoreDataProperties.m +44 -0
  496. package/ios/Database/UIColor+KLTUI.h +36 -0
  497. package/ios/Database/UIColor+KLTUI.m +60 -0
  498. package/ios/Extension/UIColor+Extension.swift +23 -0
  499. package/ios/Extension/UIImageView+Extension.swift +59 -0
  500. package/ios/Extension/UITableView+Extension.swift +37 -0
  501. package/ios/Extension/UIViewController+Extension.swift +24 -0
  502. package/ios/LaunchScreen.storyboard +47 -0
  503. package/ios/MyReactNativeBridge.h +19 -0
  504. package/ios/MyReactNativeBridge.m +36 -0
  505. package/ios/MyTatvaCare-Bridging-Header.h +23 -0
  506. package/ios/MyTatvaRnSdk.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  507. package/ios/MyTatvaRnSdk.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  508. package/ios/MyTatvaRnSdk.xcodeproj/project.xcworkspace/xcuserdata/sonusharma.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  509. package/ios/MyTatvaRnSdk.xcodeproj/xcuserdata/sonusharma.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
  510. package/ios/MyTatvaRnSdkViewManager.h +1 -1
  511. package/ios/MyTatvaRnSdkViewManager.m +1 -1
  512. package/ios/Storyboard/Base.lproj/LaunchScreen.storyboard +25 -0
  513. package/ios/Storyboard/Base.lproj/Main.storyboard +858 -0
  514. package/ios/Support/API.swift +325 -0
  515. package/ios/Support/BluetoothManager.swift +472 -0
  516. package/ios/Support/Converter/DataConverter.swift +34 -0
  517. package/ios/Support/Enum.swift +37 -0
  518. package/ios/Support/EnumDebouncer.swift +55 -0
  519. package/ios/Support/Font/PlayfairDisplay-Italic-VariableFont_wght.ttf +0 -0
  520. package/ios/Support/Font/PlayfairDisplay-VariableFont_wght.ttf +0 -0
  521. package/ios/Support/Global.swift +12 -0
  522. package/ios/Support/KLTFormat.swift +151 -0
  523. package/ios/Support/Library/SDK/include/AlgorithmTools.h +52 -0
  524. package/ios/Support/Library/SDK/include/CGMAlgo.h +224 -0
  525. package/ios/Support/Library/SDK/include/CGMCommonDefine.h +176 -0
  526. package/ios/Support/Library/SDK/include/CurrentGlucose.h +412 -0
  527. package/ios/Support/Library/SDK/include/EDevice.h +78 -0
  528. package/ios/Support/Library/SDK/include/KRDecodeData.h +45 -0
  529. package/ios/Support/Library/SDK/libCGMAlgo.a +0 -0
  530. package/ios/Support/gif/failure.gif +0 -0
  531. package/ios/Support/gif/play.gif +0 -0
  532. package/ios/Support/gif/searching.gif +0 -0
  533. package/ios/Support/gif/shrimmer.gif +0 -0
  534. package/ios/TableViewCell/ChargingIndicatorTVC/ChargingIndicatorTVC.swift +45 -0
  535. package/ios/TableViewCell/ChargingIndicatorTVC/ChargingIndicatorTVC.xib +136 -0
  536. package/ios/TableViewCell/ChatOptionTVC/ChatOptionTVC.swift +34 -0
  537. package/ios/TableViewCell/ChatOptionTVC/ChatOptionTVC.xib +85 -0
  538. package/ios/TableViewCell/ConnectDeviceTVC/ConnectDeviceTVC.swift +38 -0
  539. package/ios/TableViewCell/ConnectDeviceTVC/ConnectDeviceTVC.xib +94 -0
  540. package/ios/TableViewCell/ConnectSuccessTVC/ConnectSuccessTVC.swift +52 -0
  541. package/ios/TableViewCell/ConnectSuccessTVC/ConnectSuccessTVC.xib +113 -0
  542. package/ios/TableViewCell/ImageTVC/ImageTVC.swift +123 -0
  543. package/ios/TableViewCell/ImageTVC/ImageTVC.xib +115 -0
  544. package/ios/TableViewCell/LabelTVC/LabelTVC.swift +26 -0
  545. package/ios/TableViewCell/LabelTVC/LabelTVC.xib +41 -0
  546. package/ios/TableViewCell/NoteTVC/NoteTVC.swift +58 -0
  547. package/ios/TableViewCell/NoteTVC/NoteTVC.xib +98 -0
  548. package/ios/TableViewCell/PodDetailsTVC/PodDetailsTVC.swift +31 -0
  549. package/ios/TableViewCell/PodDetailsTVC/PodDetailsTVC.xib +104 -0
  550. package/ios/TableViewCell/SearchDeviceTVC/SearchDeviceTVC.swift +28 -0
  551. package/ios/TableViewCell/SearchDeviceTVC/SearchDeviceTVC.xib +67 -0
  552. package/ios/TableViewCell/SeparatorTVC/SeparatorTVC.swift +23 -0
  553. package/ios/TableViewCell/SeparatorTVC/SeparatorTVC.xib +39 -0
  554. package/ios/TableViewCell/SwitchTVC/SwitchTVC.swift +52 -0
  555. package/ios/TableViewCell/SwitchTVC/SwitchTVC.xib +139 -0
  556. package/ios/TableViewCell/VIdeoTVC/VideoTVC.swift +28 -0
  557. package/ios/TableViewCell/VIdeoTVC/VideoTVC.xib +79 -0
  558. package/ios/TableViewCell/VerticalLabelsTVC/VerticalLabelsTVC.swift +37 -0
  559. package/ios/TableViewCell/VerticalLabelsTVC/VerticalLabelsTVC.xib +60 -0
  560. package/ios/TableViewCell/WatchVideoTVC/WatchVideoTVC.swift +37 -0
  561. package/ios/TableViewCell/WatchVideoTVC/WatchVideoTVC.xib +115 -0
  562. package/ios/ViewControllers/AttachTransmitterViewController.swift +115 -0
  563. package/ios/ViewControllers/ChatWithExpertViewController.swift +113 -0
  564. package/ios/ViewControllers/ConnectToSensorViewController.swift +368 -0
  565. package/ios/ViewControllers/ConnectToTransmitterViewController.swift +300 -0
  566. package/ios/ViewControllers/ExitJourneyViewController.swift +62 -0
  567. package/ios/ViewControllers/ProvidePermissionViewController.swift +286 -0
  568. package/ios/ViewControllers/PutOnTheSensorViewController.swift +99 -0
  569. package/ios/ViewControllers/StartConnectionViewController.swift +117 -0
  570. package/ios/ViewModel/FinalViewModel.swift +395 -0
  571. package/lib/commonjs/BcaDeviceListSheet.js +7 -6
  572. package/lib/commonjs/BcaDeviceListSheet.js.map +1 -1
  573. package/lib/commonjs/CGMConnect.js +108 -0
  574. package/lib/commonjs/CGMConnect.js.map +1 -0
  575. package/lib/commonjs/MainWebView.js +9 -5
  576. package/lib/commonjs/MainWebView.js.map +1 -1
  577. package/lib/commonjs/{index.android.js → MyTatvaRnSdkView.android.js} +44 -5
  578. package/lib/commonjs/MyTatvaRnSdkView.android.js.map +1 -0
  579. package/lib/commonjs/{index.ios.js → MyTatvaRnSdkView.ios.js} +37 -8
  580. package/lib/commonjs/MyTatvaRnSdkView.ios.js.map +1 -0
  581. package/lib/commonjs/ProgressWebView.js +14 -13
  582. package/lib/commonjs/ProgressWebView.js.map +1 -1
  583. package/lib/commonjs/Services.js.map +1 -1
  584. package/lib/commonjs/Sheets.js.map +1 -1
  585. package/lib/commonjs/api/auth.js.map +1 -1
  586. package/lib/commonjs/api/base.js +6 -4
  587. package/lib/commonjs/api/base.js.map +1 -1
  588. package/lib/commonjs/api/index.js.map +1 -1
  589. package/lib/commonjs/constants/asyncstorage.js.map +1 -1
  590. package/lib/commonjs/constants/constants.js.map +1 -1
  591. package/lib/commonjs/constants.js.map +1 -1
  592. package/lib/commonjs/helpers/Matrics.js +1 -1
  593. package/lib/commonjs/helpers/Matrics.js.map +1 -1
  594. package/lib/commonjs/helpers/bluetoothPermissionHelper.js.map +1 -1
  595. package/lib/commonjs/helpers/colors.js.map +1 -1
  596. package/lib/commonjs/helpers/common.js.map +1 -1
  597. package/lib/commonjs/helpers/fonts.js.map +1 -1
  598. package/lib/commonjs/helpers/globalStyles.js +27 -27
  599. package/lib/commonjs/helpers/globalStyles.js.map +1 -1
  600. package/lib/commonjs/helpers/icons.js.map +1 -1
  601. package/lib/commonjs/index.js +67 -0
  602. package/lib/commonjs/index.js.map +1 -0
  603. package/lib/commonjs/redux/Store.js +17 -12
  604. package/lib/commonjs/redux/Store.js.map +1 -1
  605. package/lib/commonjs/redux/hooks.js +4 -6
  606. package/lib/commonjs/redux/hooks.js.map +1 -1
  607. package/lib/commonjs/redux/sagas/AuthSaga.js +11 -18
  608. package/lib/commonjs/redux/sagas/AuthSaga.js.map +1 -1
  609. package/lib/commonjs/redux/sagas/index.js.map +1 -1
  610. package/lib/commonjs/redux/slices/authSlice.js.map +1 -1
  611. package/lib/commonjs/redux/slices/index.js +1 -2
  612. package/lib/commonjs/redux/slices/index.js.map +1 -1
  613. package/lib/commonjs/types/action-sheet.d.js +2 -0
  614. package/lib/commonjs/types/action-sheet.d.js.map +1 -0
  615. package/lib/commonjs/types/auth.js.map +1 -1
  616. package/lib/commonjs/types/common.js.map +1 -1
  617. package/lib/commonjs/types/index.js +1 -2
  618. package/lib/commonjs/types/index.js.map +1 -1
  619. package/lib/commonjs/types/sheet-manager.d.js +2 -0
  620. package/lib/commonjs/types/sheet-manager.d.js.map +1 -0
  621. package/lib/commonjs/types/svg.d.js +2 -0
  622. package/lib/commonjs/types/svg.d.js.map +1 -0
  623. package/lib/module/BcaDeviceListSheet.js +6 -4
  624. package/lib/module/BcaDeviceListSheet.js.map +1 -1
  625. package/lib/module/CGMConnect.js +94 -0
  626. package/lib/module/CGMConnect.js.map +1 -0
  627. package/lib/module/MainWebView.js +9 -5
  628. package/lib/module/MainWebView.js.map +1 -1
  629. package/lib/module/{index.android.js → MyTatvaRnSdkView.android.js} +44 -4
  630. package/lib/module/MyTatvaRnSdkView.android.js.map +1 -0
  631. package/lib/module/{index.ios.js → MyTatvaRnSdkView.ios.js} +37 -7
  632. package/lib/module/MyTatvaRnSdkView.ios.js.map +1 -0
  633. package/lib/module/ProgressWebView.js +14 -9
  634. package/lib/module/ProgressWebView.js.map +1 -1
  635. package/lib/module/Services.js.map +1 -1
  636. package/lib/module/Sheets.js.map +1 -1
  637. package/lib/module/api/auth.js.map +1 -1
  638. package/lib/module/api/base.js +6 -4
  639. package/lib/module/api/base.js.map +1 -1
  640. package/lib/module/api/index.js.map +1 -1
  641. package/lib/module/constants/asyncstorage.js.map +1 -1
  642. package/lib/module/constants/constants.js.map +1 -1
  643. package/lib/module/constants.js.map +1 -1
  644. package/lib/module/helpers/Matrics.js +1 -1
  645. package/lib/module/helpers/Matrics.js.map +1 -1
  646. package/lib/module/helpers/bluetoothPermissionHelper.js.map +1 -1
  647. package/lib/module/helpers/colors.js.map +1 -1
  648. package/lib/module/helpers/common.js.map +1 -1
  649. package/lib/module/helpers/fonts.js.map +1 -1
  650. package/lib/module/helpers/globalStyles.js +1 -1
  651. package/lib/module/helpers/globalStyles.js.map +1 -1
  652. package/lib/module/helpers/icons.js.map +1 -1
  653. package/lib/module/index.js +28 -0
  654. package/lib/module/index.js.map +1 -0
  655. package/lib/module/redux/Store.js +17 -10
  656. package/lib/module/redux/Store.js.map +1 -1
  657. package/lib/module/redux/hooks.js +3 -1
  658. package/lib/module/redux/hooks.js.map +1 -1
  659. package/lib/module/redux/sagas/AuthSaga.js +9 -16
  660. package/lib/module/redux/sagas/AuthSaga.js.map +1 -1
  661. package/lib/module/redux/sagas/index.js.map +1 -1
  662. package/lib/module/redux/slices/authSlice.js.map +1 -1
  663. package/lib/module/redux/slices/index.js.map +1 -1
  664. package/lib/module/types/action-sheet.d.js +2 -0
  665. package/lib/module/types/action-sheet.d.js.map +1 -0
  666. package/lib/module/types/auth.js.map +1 -1
  667. package/lib/module/types/common.js.map +1 -1
  668. package/lib/module/types/index.js.map +1 -1
  669. package/lib/module/types/sheet-manager.d.js +2 -0
  670. package/lib/module/types/sheet-manager.d.js.map +1 -0
  671. package/lib/module/types/svg.d.js +2 -0
  672. package/lib/module/types/svg.d.js.map +1 -0
  673. package/lib/typescript/BcaDeviceListSheet.d.ts +8 -3
  674. package/lib/typescript/CGMConnect.d.ts +8 -0
  675. package/lib/typescript/MainWebView.d.ts +0 -1
  676. package/lib/typescript/ProgressWebView.d.ts +0 -1
  677. package/lib/typescript/api/auth.d.ts +0 -1
  678. package/lib/typescript/api/base.d.ts +0 -1
  679. package/lib/typescript/api/index.d.ts +0 -1
  680. package/lib/typescript/constants/asyncstorage.d.ts +0 -1
  681. package/lib/typescript/constants/constants.d.ts +0 -1
  682. package/lib/typescript/constants.d.ts +0 -1
  683. package/lib/typescript/helpers/Matrics.d.ts +0 -1
  684. package/lib/typescript/helpers/bluetoothPermissionHelper.d.ts +0 -1
  685. package/lib/typescript/helpers/colors.d.ts +0 -1
  686. package/lib/typescript/helpers/common.d.ts +0 -1
  687. package/lib/typescript/helpers/fonts.d.ts +0 -1
  688. package/lib/typescript/helpers/globalStyles.d.ts +26 -27
  689. package/lib/typescript/helpers/icons.d.ts +4 -4
  690. package/lib/typescript/redux/Store.d.ts +5 -7
  691. package/lib/typescript/redux/hooks.d.ts +1 -1
  692. package/lib/typescript/redux/sagas/AuthSaga.d.ts +2 -3
  693. package/lib/typescript/redux/sagas/index.d.ts +0 -1
  694. package/lib/typescript/redux/slices/authSlice.d.ts +0 -1
  695. package/lib/typescript/redux/slices/index.d.ts +0 -1
  696. package/lib/typescript/types/auth.d.ts +0 -1
  697. package/lib/typescript/types/common.d.ts +0 -1
  698. package/lib/typescript/types/index.d.ts +0 -1
  699. package/package.json +14 -11
  700. package/src/BcaDeviceListSheet.tsx +20 -9
  701. package/src/CGMConnect.ts +118 -0
  702. package/src/{index.android.js → MyTatvaRnSdkView.android.js} +95 -39
  703. package/src/{index.ios.js → MyTatvaRnSdkView.ios.js} +14 -0
  704. package/src/ProgressWebView.tsx +2 -1
  705. package/src/helpers/Matrics.ts +1 -1
  706. package/src/helpers/globalStyles.ts +1 -1
  707. package/src/index.js +33 -0
  708. package/src/redux/Store.ts +21 -12
  709. package/src/redux/hooks.ts +3 -1
  710. package/src/redux/sagas/AuthSaga.ts +30 -36
  711. package/src/types/action-sheet.d.ts +22 -0
  712. package/src/types/sheet-manager.d.ts +14 -0
  713. package/src/types/svg.d.ts +5 -0
  714. package/lib/commonjs/index.android.js.map +0 -1
  715. package/lib/commonjs/index.ios.js.map +0 -1
  716. package/lib/module/index.android.js.map +0 -1
  717. package/lib/module/index.ios.js.map +0 -1
  718. package/lib/typescript/BcaDeviceListSheet.d.ts.map +0 -1
  719. package/lib/typescript/MainWebView.d.ts.map +0 -1
  720. package/lib/typescript/ProgressWebView.d.ts.map +0 -1
  721. package/lib/typescript/Services.d.ts +0 -5
  722. package/lib/typescript/Services.d.ts.map +0 -1
  723. package/lib/typescript/Sheets.d.ts +0 -2
  724. package/lib/typescript/Sheets.d.ts.map +0 -1
  725. package/lib/typescript/api/auth.d.ts.map +0 -1
  726. package/lib/typescript/api/base.d.ts.map +0 -1
  727. package/lib/typescript/api/index.d.ts.map +0 -1
  728. package/lib/typescript/constants/asyncstorage.d.ts.map +0 -1
  729. package/lib/typescript/constants/constants.d.ts.map +0 -1
  730. package/lib/typescript/constants.d.ts.map +0 -1
  731. package/lib/typescript/helpers/Matrics.d.ts.map +0 -1
  732. package/lib/typescript/helpers/bluetoothPermissionHelper.d.ts.map +0 -1
  733. package/lib/typescript/helpers/colors.d.ts.map +0 -1
  734. package/lib/typescript/helpers/common.d.ts.map +0 -1
  735. package/lib/typescript/helpers/fonts.d.ts.map +0 -1
  736. package/lib/typescript/helpers/globalStyles.d.ts.map +0 -1
  737. package/lib/typescript/helpers/icons.d.ts.map +0 -1
  738. package/lib/typescript/index.android.d.ts +0 -30
  739. package/lib/typescript/index.android.d.ts.map +0 -1
  740. package/lib/typescript/index.ios.d.ts +0 -28
  741. package/lib/typescript/index.ios.d.ts.map +0 -1
  742. package/lib/typescript/redux/Store.d.ts.map +0 -1
  743. package/lib/typescript/redux/hooks.d.ts.map +0 -1
  744. package/lib/typescript/redux/sagas/AuthSaga.d.ts.map +0 -1
  745. package/lib/typescript/redux/sagas/index.d.ts.map +0 -1
  746. package/lib/typescript/redux/slices/authSlice.d.ts.map +0 -1
  747. package/lib/typescript/redux/slices/index.d.ts.map +0 -1
  748. package/lib/typescript/types/auth.d.ts.map +0 -1
  749. package/lib/typescript/types/common.d.ts.map +0 -1
  750. package/lib/typescript/types/index.d.ts.map +0 -1
  751. /package/ios/{MyTatvaRnSdk.xcodeproj → VisitRnSdk.xcodeproj}/project.pbxproj +0 -0
@@ -0,0 +1,606 @@
1
+ package cgmblelib.utils;
2
+
3
+ import static com.orhanobut.logger.Logger.ASSERT;
4
+ import static com.orhanobut.logger.Logger.DEBUG;
5
+ import static com.orhanobut.logger.Logger.ERROR;
6
+ import static com.orhanobut.logger.Logger.INFO;
7
+ import static com.orhanobut.logger.Logger.VERBOSE;
8
+ import static com.orhanobut.logger.Logger.WARN;
9
+
10
+ import android.os.Environment;
11
+ import android.os.Handler;
12
+ import android.os.HandlerThread;
13
+ import android.os.Looper;
14
+ import android.os.Message;
15
+
16
+ import androidx.annotation.NonNull;
17
+ import androidx.annotation.Nullable;
18
+
19
+ import com.orhanobut.logger.AndroidLogAdapter;
20
+ import com.orhanobut.logger.DiskLogAdapter;
21
+ import com.orhanobut.logger.FormatStrategy;
22
+ import com.orhanobut.logger.LogStrategy;
23
+ import com.orhanobut.logger.Logger;
24
+ import com.orhanobut.logger.PrettyFormatStrategy;
25
+
26
+ import org.json.JSONObject;
27
+
28
+ import java.io.File;
29
+ import java.io.FileWriter;
30
+ import java.io.IOException;
31
+ import java.text.SimpleDateFormat;
32
+ import java.util.Arrays;
33
+ import java.util.Date;
34
+ import java.util.Locale;
35
+
36
+ import cgmblelib.base.BApplication;
37
+
38
+ /**
39
+ * Created by minyuchun on 2017/6/21.
40
+ * 日志生成
41
+ *
42
+ * @author minyuchun
43
+ */
44
+ public class MyLog {
45
+ /**
46
+ * 日志工厂
47
+ */
48
+ private static FormatStrategy formatStrategy;
49
+ /**
50
+ * 存储的日志工厂
51
+ */
52
+ private static FormatStrategy localFormatStrategy;
53
+ /**
54
+ * APP是否处于debug模式
55
+ */
56
+ private static boolean isDebug = true;
57
+
58
+ /**
59
+ * 设置是否APP模式是否为debug模式
60
+ *
61
+ * @param isDebug 处于debug模式
62
+ */
63
+ public static void setIsDebug(boolean isDebug) {
64
+ MyLog.isDebug = isDebug;
65
+ }
66
+
67
+ /**
68
+ * 初始化普通的日志
69
+ * 1.默认的日志输出
70
+ */
71
+ public static void initDefault() {
72
+ if (formatStrategy == null) {
73
+ formatStrategy = PrettyFormatStrategy.newBuilder()
74
+ .tag(isDebug ? "debug" : "release")
75
+ .build();
76
+ Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy));
77
+ }
78
+ }
79
+
80
+ /**
81
+ * 初始化特殊的日志
82
+ * 1.自定义的日志输出格式
83
+ */
84
+ public static void initSpecial() {
85
+ Logger.clearLogAdapters();
86
+ if (formatStrategy == null) {
87
+ formatStrategy = PrettyFormatStrategy.newBuilder()
88
+ //(可选)是否显示线程信息。 默认值为true
89
+ .showThreadInfo(true)
90
+ // (可选)要显示的方法行数。 默认2
91
+ .methodCount(4)
92
+ // (可选)隐藏内部方法调用到偏移量。 默认5
93
+ .methodOffset(1)
94
+ //(可选)每个日志的全局标记。 默认PRETTY_LOGGER
95
+ .tag(isDebug ? "debug" : "release")
96
+ .build();
97
+ }
98
+ Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy));
99
+ }
100
+
101
+ /**
102
+ * 设置本地日志记录
103
+ *
104
+ * @param deviceId 发射器的id
105
+ * @param deviceName 发射器的名字
106
+ */
107
+ public static void setLocalLog(long deviceId, String deviceName) {
108
+ String folder = null;
109
+ if (BApplication.getContext() != null) {
110
+ File externalFilesDir = BApplication.getContext().getExternalFilesDir(Environment.DIRECTORY_DOCUMENTS);
111
+ if (externalFilesDir != null && externalFilesDir.exists()) {
112
+ folder = externalFilesDir.getAbsolutePath();
113
+ }
114
+ }
115
+ initSpecial();
116
+ if (localFormatStrategy == null) {
117
+ localFormatStrategy = MyFormatStrategy.newBuilder()
118
+ .tag(isDebug ? "debug" : "release")
119
+ .deviceId(deviceId)
120
+ .deviceName(deviceName)
121
+ .folder(folder)
122
+ .build();
123
+ }
124
+ Logger.addLogAdapter(new DiskLogAdapter(localFormatStrategy));
125
+ }
126
+
127
+ /**
128
+ * 清楚输出的日志格式设置
129
+ * 如果普通日志格式存在,再次赋予
130
+ */
131
+ public static void clearLogAdapter() {
132
+ initSpecial();
133
+ if (!ConstantsLibrary.IS_ALLINCSV) {
134
+ localFormatStrategy = null;
135
+ }
136
+ }
137
+
138
+ public static void t(String tag) {
139
+ if (isDebug) {
140
+ tLog(tag);
141
+ }
142
+ }
143
+
144
+ public synchronized static void tLog(String tag) {
145
+ try {
146
+ Logger.t(tag);
147
+ } catch (Exception e) {
148
+ e.printStackTrace();
149
+ }
150
+ }
151
+
152
+ public static void v(String s, Object... os) {
153
+ if (isDebug) {
154
+ vLog(s, os);
155
+ }
156
+ }
157
+
158
+ public synchronized static void vLog(String s, Object... os) {
159
+ try {
160
+ Logger.v(s, os);
161
+ } catch (Exception e) {
162
+ e.printStackTrace();
163
+ }
164
+ }
165
+
166
+
167
+ public static void d(String s, Object... os) {
168
+ if (isDebug) {
169
+ dLog(s, os);
170
+ }
171
+ }
172
+
173
+ public synchronized static void dLog(String s, Object... os) {
174
+ try {
175
+ Logger.d(s, os);
176
+ } catch (Exception e) {
177
+ e.printStackTrace();
178
+ }
179
+ }
180
+
181
+ public static void i(String s, Object... os) {
182
+ if (isDebug) {
183
+ iLog(s, os);
184
+ }
185
+ }
186
+
187
+ public synchronized static void iLog(String s, Object... os) {
188
+ try {
189
+ Logger.i(s, os);
190
+ } catch (Exception e) {
191
+ e.printStackTrace();
192
+ }
193
+ }
194
+
195
+ public static void w(String s, Object... os) {
196
+ if (isDebug) {
197
+ wLog(s, os);
198
+ }
199
+ }
200
+
201
+ public synchronized static void wLog(String s, Object... os) {
202
+ try {
203
+ Logger.w(s, os);
204
+ } catch (Exception e) {
205
+ e.printStackTrace();
206
+ }
207
+ }
208
+
209
+ public static void e(String s, Object... os) {
210
+ if (isDebug) {
211
+ Logger.e(s, os);
212
+ }
213
+ }
214
+
215
+ public synchronized static void eLog(String s, Object... os) {
216
+ try {
217
+ Logger.e(s, os);
218
+ } catch (Exception e) {
219
+ e.printStackTrace();
220
+ }
221
+ }
222
+
223
+ public static void e(Throwable t, String s, Object... os) {
224
+ if (isDebug) {
225
+ Logger.e(t, s, os);
226
+ }
227
+ }
228
+
229
+ public synchronized static void eLog(Throwable t, String s, Object... os) {
230
+ try {
231
+ Logger.e(t, s, os);
232
+ } catch (Exception e) {
233
+ e.printStackTrace();
234
+ }
235
+ }
236
+
237
+ public static void json(JSONObject json) {
238
+ if (isDebug) {
239
+ jsonLog(json);
240
+ }
241
+ }
242
+
243
+ public synchronized static void jsonLog(JSONObject json) {
244
+ try {
245
+ Logger.json(json.toString());
246
+ } catch (Exception e) {
247
+ e.printStackTrace();
248
+ }
249
+ }
250
+
251
+ public static void xml(String xml) {
252
+ if (isDebug) {
253
+ xmlLog(xml);
254
+ }
255
+ }
256
+
257
+ public synchronized static void xmlLog(String xml) {
258
+ try {
259
+ Logger.xml(xml);
260
+ } catch (Exception e) {
261
+ e.printStackTrace();
262
+ }
263
+ }
264
+ }
265
+
266
+ /**
267
+ * 自定义日志工厂
268
+ */
269
+ class MyFormatStrategy implements FormatStrategy {
270
+ /**
271
+ * 换行符
272
+ */
273
+ private static final String NEW_LINE = System.getProperty("line.separator");
274
+ private static final String NEW_LINE_REPLACEMENT = " <br> ";
275
+ /**
276
+ * csv文件分隔符
277
+ */
278
+ private static final String SEPARATOR = ",";
279
+
280
+ @NonNull
281
+ private final Date date;
282
+ @NonNull
283
+ private final SimpleDateFormat dateFormat;
284
+ @NonNull
285
+ private final LogStrategy logStrategy;
286
+ @Nullable
287
+ private final String tag;
288
+
289
+ private MyFormatStrategy(@NonNull Builder builder) {
290
+ checkNotNull(builder);
291
+ date = builder.date;
292
+ dateFormat = builder.dateFormat;
293
+ logStrategy = builder.logStrategy;
294
+ tag = builder.tag;
295
+ }
296
+
297
+ @NonNull
298
+ public static Builder newBuilder() {
299
+ return new Builder();
300
+ }
301
+
302
+ @Override
303
+ public void log(int priority, @Nullable String onceOnlyTag, @NonNull String message) {
304
+ checkNotNull(message);
305
+ String tag = formatTag(onceOnlyTag);
306
+ date.setTime(System.currentTimeMillis());
307
+ StringBuilder builder = new StringBuilder();
308
+ //date
309
+ builder.append(dateFormat.format(date));
310
+ // level
311
+ builder.append(SEPARATOR);
312
+ builder.append(logLevel(priority));
313
+ // tag
314
+ builder.append(SEPARATOR);
315
+ builder.append(tag);
316
+ // message
317
+ if (message.contains(NEW_LINE)) {
318
+ // a new line would break the CSV format, so we replace it here
319
+ message = message.replaceAll(NEW_LINE, NEW_LINE_REPLACEMENT);
320
+ }
321
+ builder.append(SEPARATOR);
322
+ builder.append(message);
323
+ // new line
324
+ builder.append(NEW_LINE);
325
+ logStrategy.log(priority, tag, builder.toString());
326
+ }
327
+
328
+ @Nullable
329
+ private String formatTag(@Nullable String tag) {
330
+ if (!isEmpty(tag) && !equals(this.tag, tag)) {
331
+ return this.tag + "-" + tag;
332
+ }
333
+ return this.tag;
334
+ }
335
+
336
+ public static final class Builder {
337
+ /**
338
+ * 文件最大的大小
339
+ */
340
+ private static final int MAX_BYTES = ConstantsLibrary.IS_ALLINCSV ? 1024 * 1024 : 500 * 1024;
341
+ /**
342
+ * 最大可以存储的文件数目
343
+ */
344
+ private static final int MAX_FILE_COUNT = 10;
345
+ Date date;
346
+ SimpleDateFormat dateFormat;
347
+ LogStrategy logStrategy;
348
+ String tag = "PocTech";
349
+ long deviceId = 0;
350
+ String deviceName = "";
351
+
352
+ String folder;
353
+
354
+ private Builder() {
355
+ }
356
+
357
+ @NonNull
358
+ public Builder date(@Nullable Date val) {
359
+ date = val;
360
+ return this;
361
+ }
362
+
363
+ @NonNull
364
+ public Builder dateFormat(@Nullable SimpleDateFormat val) {
365
+ dateFormat = val;
366
+ return this;
367
+ }
368
+
369
+ @NonNull
370
+ public Builder logStrategy(@Nullable LogStrategy val) {
371
+ logStrategy = val;
372
+ return this;
373
+ }
374
+
375
+ @NonNull
376
+ public Builder tag(@Nullable String tag) {
377
+ this.tag = tag;
378
+ return this;
379
+ }
380
+
381
+ @NonNull
382
+ public Builder deviceId(@Nullable long deviceId) {
383
+ this.deviceId = deviceId;
384
+ return this;
385
+ }
386
+
387
+ @NonNull
388
+ public Builder deviceName(@Nullable String deviceName) {
389
+ this.deviceName = deviceName;
390
+ return this;
391
+ }
392
+
393
+ @NonNull
394
+ public Builder folder(@Nullable String folder) {
395
+ this.folder = folder;
396
+ return this;
397
+ }
398
+
399
+ @NonNull
400
+ public MyFormatStrategy build() {
401
+ if (date == null) {
402
+ date = new Date();
403
+ }
404
+ if (dateFormat == null) {
405
+ dateFormat = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss.SSS", Locale.UK);
406
+ }
407
+ if (logStrategy == null) {
408
+ if (folder == null) {
409
+ String diskPath = Environment.getExternalStorageDirectory().getAbsolutePath();
410
+ folder = diskPath + File.separatorChar + "PocData" + File.separatorChar + "logger";
411
+ }
412
+ HandlerThread ht = new HandlerThread("AndroidFileLogger." + folder);
413
+ ht.start();
414
+ Handler handler = new MyLogStrategy.WriteHandler(ht.getLooper(), folder, MAX_BYTES, MAX_FILE_COUNT, deviceId, deviceName);
415
+ logStrategy = new MyLogStrategy(handler);
416
+ }
417
+ return new MyFormatStrategy(this);
418
+ }
419
+ }
420
+
421
+ static String logLevel(int value) {
422
+ switch (value) {
423
+ case VERBOSE:
424
+ return "VERBOSE";
425
+ case DEBUG:
426
+ return "DEBUG";
427
+ case INFO:
428
+ return "INFO";
429
+ case WARN:
430
+ return "WARN";
431
+ case ERROR:
432
+ return "ERROR";
433
+ case ASSERT:
434
+ return "ASSERT";
435
+ default:
436
+ return "UNKNOWN";
437
+ }
438
+ }
439
+
440
+ static boolean equals(CharSequence a, CharSequence b) {
441
+ if (a == b) return true;
442
+ if (a != null && b != null) {
443
+ int length = a.length();
444
+ if (length == b.length()) {
445
+ if (a instanceof String && b instanceof String) {
446
+ return a.equals(b);
447
+ } else {
448
+ for (int i = 0; i < length; i++) {
449
+ if (a.charAt(i) != b.charAt(i)) {
450
+ return false;
451
+ }
452
+ }
453
+ return true;
454
+ }
455
+ }
456
+ }
457
+ return false;
458
+ }
459
+
460
+ static boolean isEmpty(CharSequence str) {
461
+ return str == null || str.length() == 0;
462
+ }
463
+
464
+ @NonNull
465
+ static <T> T checkNotNull(@Nullable final T obj) {
466
+ if (obj == null) {
467
+ throw new NullPointerException();
468
+ }
469
+ return obj;
470
+ }
471
+ }
472
+
473
+ class MyLogStrategy implements LogStrategy {
474
+
475
+ @NonNull
476
+ private final Handler handler;
477
+
478
+ public MyLogStrategy(@NonNull Handler handler) {
479
+ this.handler = checkNotNull(handler);
480
+ }
481
+
482
+ @Override
483
+ public void log(int level, @Nullable String tag, @NonNull String message) {
484
+ checkNotNull(message);
485
+ // do nothing on the calling thread, simply pass the tag/msg to the background thread
486
+ handler.sendMessage(handler.obtainMessage(level, message));
487
+ }
488
+
489
+ static class WriteHandler extends Handler {
490
+ @NonNull
491
+ private final String folder;
492
+ private final int maxFileSize;
493
+ private final int maxFileCount;
494
+ private final long deviceId;
495
+ private final String deviceName;
496
+
497
+ WriteHandler(@NonNull Looper looper, @NonNull String folder, int maxFileSize, int maxFileCount, long deviceId, String deviceName) {
498
+ super(checkNotNull(looper));
499
+ this.folder = checkNotNull(folder);
500
+ this.maxFileSize = maxFileSize;
501
+ this.maxFileCount = maxFileCount;
502
+ this.deviceId = deviceId;
503
+ this.deviceName = deviceName;
504
+ }
505
+
506
+ @SuppressWarnings("checkstyle:emptyblock")
507
+ @Override
508
+ public void handleMessage(@NonNull Message msg) {
509
+ String content = (String) msg.obj;
510
+ FileWriter fileWriter = null;
511
+ File logFile = ConstantsLibrary.IS_ALLINCSV ? getLogFile(folder, deviceName) : getLogFile(folder, deviceId, deviceName);
512
+ try {
513
+ fileWriter = new FileWriter(logFile, true);
514
+ writeLog(fileWriter, content);
515
+ fileWriter.flush();
516
+ fileWriter.close();
517
+ } catch (IOException e) {
518
+ if (fileWriter != null) {
519
+ try {
520
+ fileWriter.flush();
521
+ fileWriter.close();
522
+ } catch (IOException e1) { /* fail silently */ }
523
+ }
524
+ }
525
+ }
526
+
527
+ /**
528
+ * This is always called on a single background thread.
529
+ * Implementing classes must ONLY write to the fileWriter and nothing more.
530
+ * The abstract class takes care of everything else including close the stream and catching IOException
531
+ *
532
+ * @param fileWriter an instance of FileWriter already initialised to the correct file
533
+ */
534
+ private void writeLog(@NonNull FileWriter fileWriter, @NonNull String content) throws IOException {
535
+ checkNotNull(fileWriter);
536
+ checkNotNull(content);
537
+ fileWriter.append(content);
538
+ }
539
+
540
+ private File getLogFile(@NonNull String folderName, @NonNull String fileName) {
541
+ checkNotNull(folderName);
542
+ checkNotNull(fileName);
543
+
544
+ File folder = new File(folderName);
545
+ if (!folder.exists()) {
546
+ //TODO: What if folder is not created, what happens then?
547
+ folder.mkdirs();
548
+ }
549
+
550
+ int newFileCount = 0;
551
+ File newFile;
552
+ File existingFile = null;
553
+
554
+ newFile = new File(folder, String.format("%s_%s.csv", fileName, newFileCount));
555
+ while (newFile.exists()) {
556
+ existingFile = newFile;
557
+ newFileCount++;
558
+ newFile = new File(folder, String.format("%s_%s.csv", fileName, newFileCount));
559
+ }
560
+
561
+ if (existingFile != null) {
562
+ if (existingFile.length() >= maxFileSize) {
563
+ return newFile;
564
+ }
565
+ return existingFile;
566
+ }
567
+
568
+ return newFile;
569
+ }
570
+
571
+ private File getLogFile(@NonNull String folderName, long deviceId, @NonNull String deviceName) {
572
+ checkNotNull(folderName);
573
+ checkNotNull(deviceName);
574
+ File folder = new File(folderName);
575
+ File[] files = folder.listFiles(pathname -> pathname.getName().contains(".csv"));
576
+ if (files.length > maxFileCount) {
577
+ Arrays.sort(files, (o1, o2) -> {
578
+ long diff = o1.lastModified() - o2.lastModified();
579
+ if (diff < 0) {
580
+ return 1;
581
+ } else if (diff > 0) {
582
+ return -1;
583
+ }
584
+ return 0;
585
+ });
586
+ File deleteFile = files[files.length - 1];
587
+ deleteFile.delete();
588
+ }
589
+ if (!folder.exists()) {
590
+ //TODO: What if folder is not created, what happens then?
591
+ folder.mkdirs();
592
+ }
593
+ File newFile;
594
+ newFile = new File(folder, String.format("%s_%s.csv", Long.toString(deviceId), deviceName));
595
+ return newFile;
596
+ }
597
+ }
598
+
599
+ @NonNull
600
+ static <T> T checkNotNull(@Nullable final T obj) {
601
+ if (obj == null) {
602
+ throw new NullPointerException();
603
+ }
604
+ return obj;
605
+ }
606
+ }
@@ -0,0 +1,115 @@
1
+ package cgmblelib.utils;
2
+
3
+ import android.app.Notification;
4
+ import android.app.NotificationChannel;
5
+ import android.app.NotificationManager;
6
+ import android.app.Service;
7
+ import android.content.Context;
8
+ import android.os.Build;
9
+
10
+ import androidx.annotation.NonNull;
11
+ import androidx.annotation.RequiresApi;
12
+ import androidx.core.app.NotificationCompat;
13
+
14
+ import com.mytatvarnsdk.R;
15
+
16
+ /**
17
+ * Created by minyuchun on 2019/6/18.
18
+ * 通知工具
19
+ * @author minyuchun
20
+ */
21
+ public class NotificationTool {
22
+ /**前台服务通知组的标识,不能为0*/
23
+ private static final int mNotificationServiceId = 1;
24
+ /**通知组的id*/
25
+ private static final String mChannelId = "POCTech";
26
+ /**通知组名称,用户可见的名称*/
27
+ private static final String mChannelName = "Warning Channel";
28
+ /**通知组,在Android 8 时需要添加*/
29
+ private NotificationChannel mChannel = null;
30
+ /**获取通知控制器*/
31
+ private NotificationManager manager = null;
32
+
33
+ private NotificationTool() {}
34
+
35
+ private static class SingletonInstance {
36
+ private static final NotificationTool INSTANCE = new NotificationTool();
37
+ }
38
+
39
+ public static NotificationTool getInstance() {
40
+ return SingletonInstance.INSTANCE;
41
+ }
42
+
43
+ /**
44
+ * 开启前台服务通知
45
+ * @param service 服务
46
+ */
47
+ public void createServiceNotification(Service service){
48
+ try{
49
+ getNotificationManager(service);
50
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
51
+ createNotificationChannel(service);
52
+ }
53
+ NotificationCompat.Builder builder = new NotificationCompat.Builder(service, mChannelId);
54
+ builder
55
+ .setAutoCancel(true)
56
+ .setOngoing(true)
57
+ .setWhen(System.currentTimeMillis())
58
+ .setPriority(NotificationCompat.PRIORITY_LOW)
59
+ .setVisibility(NotificationCompat.VISIBILITY_SECRET);
60
+ service.startForeground(mNotificationServiceId, builder.build());
61
+ } catch (Exception e){
62
+ e.printStackTrace();
63
+ }
64
+ }
65
+
66
+ /**
67
+ * 获取通知控制器
68
+ * @param context 上下文
69
+ */
70
+ private void getNotificationManager(Context context){
71
+ if (manager == null){
72
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
73
+ manager = context.getSystemService(NotificationManager.class);
74
+ } else {
75
+ manager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
76
+ }
77
+ }
78
+ }
79
+
80
+ /**
81
+ * 创建通知组,Android 8(26) 才需要增加,
82
+ */
83
+ @RequiresApi(api = Build.VERSION_CODES.O)
84
+ private void createNotificationChannel(@NonNull Context context){
85
+ try {
86
+ if (manager != null){
87
+ if (mChannel == null){
88
+ mChannel = new NotificationChannel(mChannelId, mChannelName,NotificationManager.IMPORTANCE_HIGH);
89
+ //设置通知渠道的重要性,最重要级别
90
+ mChannel.setImportance(NotificationManager.IMPORTANCE_HIGH);
91
+ mChannel.setSound(null,null);
92
+ //不震动
93
+ mChannel.enableVibration(false);
94
+ //通知可以显示在锁定屏幕上
95
+ mChannel.setLockscreenVisibility(Notification.VISIBILITY_PUBLIC);
96
+ //使用呼吸灯
97
+ mChannel.enableLights(true);
98
+ //呼吸灯颜色
99
+ mChannel.setLightColor(context.getColor(R.color.colorPrimary));
100
+ mChannel.setBypassDnd(true);
101
+ //不显示角标
102
+ mChannel.setShowBadge(false);
103
+ //指定用户在系统设置中看到的说明
104
+ mChannel.setDescription("In the process of monitoring abnormal reminder, please be sure to turn on");
105
+ //填充通知渠道
106
+ manager.createNotificationChannel(mChannel);
107
+ }
108
+ }
109
+ } catch (Exception e){
110
+ e.printStackTrace();
111
+ mChannel = null;
112
+ }
113
+ }
114
+
115
+ }