音乐支持退出页面也可以播放
authorliangzhenying <867174124@qq.com>
Tue, 18 Nov 2025 08:14:00 +0000 (16:14 +0800)
committerliangzhenying <867174124@qq.com>
Tue, 18 Nov 2025 08:14:00 +0000 (16:14 +0800)
189 files changed:
ShenYin/Pods/Kingfisher/PrivacyInfo.xcprivacy [new file with mode: 0644]
ShenYin/ShenYin/Api/Config.swift
ShenYin/ShenYin/Api/LogManager.swift [moved from ShenYin/ShenYin/Tools/LogManager.swift with 100% similarity]
ShenYin/ShenYin/Assets.xcassets/home/close_icon_1.imageset/Contents.json [new file with mode: 0644]
ShenYin/ShenYin/Assets.xcassets/home/close_icon_1.imageset/Frame_2256@2x.png [new file with mode: 0644]
ShenYin/ShenYin/Assets.xcassets/home/close_icon_1.imageset/Frame_2256@3x.png [new file with mode: 0644]
ShenYin/ShenYin/Assets.xcassets/home/play_paus_icon.imageset/Contents.json [new file with mode: 0644]
ShenYin/ShenYin/Assets.xcassets/home/play_paus_icon.imageset/Frame 2079@2x.png [new file with mode: 0644]
ShenYin/ShenYin/Assets.xcassets/home/play_paus_icon.imageset/Frame 2079@3x.png [new file with mode: 0644]
ShenYin/ShenYin/Assets.xcassets/home/play_play_icon.imageset/Contents.json [new file with mode: 0644]
ShenYin/ShenYin/Assets.xcassets/home/play_play_icon.imageset/Frame 2079@2x.png [new file with mode: 0644]
ShenYin/ShenYin/Assets.xcassets/home/play_play_icon.imageset/Frame 2079@3x.png [new file with mode: 0644]
ShenYin/ShenYin/Launch/BleManager.swift
ShenYin/ShenYin/ShenYin-Bridging-Header.h
ShenYin/ShenYin/Tools/YLTools.swift
ShenYin/ShenYin/UI/Base/BaseTC.swift
ShenYin/ShenYin/UI/Base/BaseVC.swift
ShenYin/ShenYin/UI/Home/Device/HomeDeviceVC.swift
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Headers/JLLogHelper.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Headers/JLLogManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Info.plist [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/JLLogHelper [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Modules/module.modulemap [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Frameworks/JLLogHelper.framework/Info.plist [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Frameworks/JLLogHelper.framework/JLLogHelper [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLAdvParse.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLChargingBoxAdv.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLDevicesAdv.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLEarphoneAdv.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLOtaAdv.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLSoundBoxAdv.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLSoundCardAdv.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLTwsAdv.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLWatchAdv.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JL_AdvParse.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Info.plist [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/JL_AdvParse [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Modules/module.modulemap [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Frameworks/JLLogHelper.framework/Info.plist [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Frameworks/JLLogHelper.framework/JLLogHelper [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECBDTManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECBDTObjc.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECOneToMorePtl.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECThreadHelper.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL4GUpgradeManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAIDialManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAiManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAutoConfigAnc.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAutoPressureModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLCmdBasic.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLConsequentHeartRateModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDevPlayerCtrl.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDeviceConfig.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDeviceConfigFuncModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDeviceConfigTws.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDhaFitting.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDialInfoExtentManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDialInfoExtentedModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDisconnectRemindModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLEmergencyContactModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLExerciseHeartRateRemindModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLFallDetectionModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLHttpHelper.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelCardInfo.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelDevFunc.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelNoiseDetection.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelSceneNoiseReduction.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelSmartPickFree.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelVocalBoost.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_ANC.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_AlarmSetting.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_BT.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Device.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_EQ.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_FM.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_File.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Flash.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Headset.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_RTC.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Ring.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_SPEEX.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_SmallFile.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLOxygenSturationRemindModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLPersonInfoModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLPublicSetting.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLPublicSettingBlocks.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSedentaryRmdModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSensorFuncModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSleepMonitorModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSportDataModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWatchEnum.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSync.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncCustom.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncFinishModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncInfoModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncRealTimeModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearable.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWristLiftDetectionModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_AlarmClockManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_Assist.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BLEAction.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BLEKit.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BLEMultiple.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BatchManger.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BigDataManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BinChargeManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_CallManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_CustomManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_DeviceLogs.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_EntityM.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FileManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FindDeviceManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FlashOperateManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FmManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FunctionBaseManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_Handle.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_LRCManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_LightManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_MSG_Func.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_MSG_Weather.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_ManagerM.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_MusicControlManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_NFC.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_OpCode.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_RCSP.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_AirPressure.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_Altitude.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_Header.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_HeartRate.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_MaxOxg.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_MoveSteps.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_OxSaturation.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_RecTime.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_SportMessage.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_Stress.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_TrainLoad.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SmallFileManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SoundCardManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SpeechAIttsHandler.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SpeexManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SystemEQ.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SystemTime.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SystemVolume.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_Tools.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_TwsManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_TypeEnum.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_WatchProtocol.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_WatchSyncProtocol.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_vad.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLeSimManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLwSettingModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/NSData+ToUnit.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/NSObject+JLTools.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/NfcModel.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/RTC_RingInfo.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Info.plist [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/JL_BLEKit [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Modules/module.modulemap [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Frameworks/JLLogHelper.framework/Info.plist [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Frameworks/JLLogHelper.framework/JLLogHelper [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/BtHash.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/JLHashHandler.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/JL_HashPair.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/JL_ble_pair.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Info.plist [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/JL_HashPair [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Modules/module.modulemap [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Frameworks/JLLogHelper.framework/Info.plist [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Frameworks/JLLogHelper.framework/JLLogHelper [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/JLOTAFile.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/JL_OTALib.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/JL_OTAManager.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/jl_ufw.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Info.plist [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/JL_OTALib [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Modules/module.modulemap [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_RunSDK.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_RunSDK.m [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/SDKBleHelper.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/SDKBleHelper.m [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/YLOtaManager2.h [deleted file]
ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/YLOtaManager2.m [deleted file]
ShenYin/ShenYin/UI/Sleep/AudioPlayView.swift [new file with mode: 0644]
ShenYin/ShenYin/UI/Sleep/AudioPlayerManager.swift
ShenYin/ShenYin/UI/Sleep/AudioPlayerVC.swift
ShenYin/ShenYin/UI/Sleep/CircleProgressView.swift [new file with mode: 0644]
ShenYin/ShenYin/UI/Sleep/SleepListView.swift
ShenYin/ShenYin/UI/Sleep/SleepVC.swift
ShenYin/ShenYin/UI/common/pop/PopPlayView.swift

diff --git a/ShenYin/Pods/Kingfisher/PrivacyInfo.xcprivacy b/ShenYin/Pods/Kingfisher/PrivacyInfo.xcprivacy
new file mode 100644 (file)
index 0000000..148b97e
--- /dev/null
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+       <key>NSPrivacyTracking</key>
+       <false/>
+       <key>NSPrivacyTrackingDomains</key>
+       <array/>
+       <key>NSPrivacyAccessedAPITypes</key>
+       <array>
+               <dict>
+                       <key>NSPrivacyAccessedAPIType</key>
+                       <string>NSPrivacyAccessedAPICategoryDiskSpace</string>
+                       <key>NSPrivacyAccessedAPITypeReasons</key>
+                       <array>
+                               <string>E174.1</string>
+                       </array>
+               </dict>
+       </array>
+       <key>NSPrivacyCollectedDataTypes</key>
+       <array/>
+</dict>
+</plist>
index 02ddd36..b64eda9 100644 (file)
@@ -24,8 +24,8 @@ class DCConfig{
     static let appStoreVersionURL = "https://itunes.apple.com/cn/lookup?id=6752551504"
     
     /// 服务器地址
-    static let baseURL = "http://118.145.178.188:32000"
-//    static let baseURL = "https://app-api.deepchords.com"
+//    static let baseURL = "http://118.145.178.188:32000"
+    static let baseURL = "https://app-api.deepchords.com"
     /// 用户隐私协议地址
     static let yonghuBaseURL = "https://pub-tos.deepchords.com"
     
diff --git a/ShenYin/ShenYin/Assets.xcassets/home/close_icon_1.imageset/Contents.json b/ShenYin/ShenYin/Assets.xcassets/home/close_icon_1.imageset/Contents.json
new file mode 100644 (file)
index 0000000..9e74fdf
--- /dev/null
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "Frame_2256@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "Frame_2256@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/ShenYin/ShenYin/Assets.xcassets/home/close_icon_1.imageset/Frame_2256@2x.png b/ShenYin/ShenYin/Assets.xcassets/home/close_icon_1.imageset/Frame_2256@2x.png
new file mode 100644 (file)
index 0000000..0d587c3
Binary files /dev/null and b/ShenYin/ShenYin/Assets.xcassets/home/close_icon_1.imageset/Frame_2256@2x.png differ
diff --git a/ShenYin/ShenYin/Assets.xcassets/home/close_icon_1.imageset/Frame_2256@3x.png b/ShenYin/ShenYin/Assets.xcassets/home/close_icon_1.imageset/Frame_2256@3x.png
new file mode 100644 (file)
index 0000000..2502b23
Binary files /dev/null and b/ShenYin/ShenYin/Assets.xcassets/home/close_icon_1.imageset/Frame_2256@3x.png differ
diff --git a/ShenYin/ShenYin/Assets.xcassets/home/play_paus_icon.imageset/Contents.json b/ShenYin/ShenYin/Assets.xcassets/home/play_paus_icon.imageset/Contents.json
new file mode 100644 (file)
index 0000000..8fe8247
--- /dev/null
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "Frame 2079@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "Frame 2079@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/ShenYin/ShenYin/Assets.xcassets/home/play_paus_icon.imageset/Frame 2079@2x.png b/ShenYin/ShenYin/Assets.xcassets/home/play_paus_icon.imageset/Frame 2079@2x.png
new file mode 100644 (file)
index 0000000..89c70c1
Binary files /dev/null and b/ShenYin/ShenYin/Assets.xcassets/home/play_paus_icon.imageset/Frame 2079@2x.png differ
diff --git a/ShenYin/ShenYin/Assets.xcassets/home/play_paus_icon.imageset/Frame 2079@3x.png b/ShenYin/ShenYin/Assets.xcassets/home/play_paus_icon.imageset/Frame 2079@3x.png
new file mode 100644 (file)
index 0000000..fd0e9c1
Binary files /dev/null and b/ShenYin/ShenYin/Assets.xcassets/home/play_paus_icon.imageset/Frame 2079@3x.png differ
diff --git a/ShenYin/ShenYin/Assets.xcassets/home/play_play_icon.imageset/Contents.json b/ShenYin/ShenYin/Assets.xcassets/home/play_play_icon.imageset/Contents.json
new file mode 100644 (file)
index 0000000..8fe8247
--- /dev/null
@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "Frame 2079@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "Frame 2079@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/ShenYin/ShenYin/Assets.xcassets/home/play_play_icon.imageset/Frame 2079@2x.png b/ShenYin/ShenYin/Assets.xcassets/home/play_play_icon.imageset/Frame 2079@2x.png
new file mode 100644 (file)
index 0000000..b31ee32
Binary files /dev/null and b/ShenYin/ShenYin/Assets.xcassets/home/play_play_icon.imageset/Frame 2079@2x.png differ
diff --git a/ShenYin/ShenYin/Assets.xcassets/home/play_play_icon.imageset/Frame 2079@3x.png b/ShenYin/ShenYin/Assets.xcassets/home/play_play_icon.imageset/Frame 2079@3x.png
new file mode 100644 (file)
index 0000000..18fb61c
Binary files /dev/null and b/ShenYin/ShenYin/Assets.xcassets/home/play_play_icon.imageset/Frame 2079@3x.png differ
index 24c7179..0b2697a 100644 (file)
@@ -28,6 +28,7 @@ class BleManager: NSObject {
     private var centralManager: CBCentralManager!
     var devices: [DCPeripheral] = []
     var connectPeripheral: DCPeripheral?
+    var otaCharacteristic:CBCharacteristic?
     
     private override init() {
         super.init()
@@ -88,7 +89,7 @@ extension BleManager:CBCentralManagerDelegate{
         Logger.debug("蓝牙已连接 \(peripheral)")
 
         peripheral.delegate = self
-        peripheral.discoverServices([CBUUID(string: kJoyGemAIServiceUUID)]);
+        peripheral.discoverServices([CBUUID(string: kJoyGemAIServiceUUID),CBUUID(string: "AE00")]);
         
 //        DeviceCache.saveLastConnected(mac: connectPeripheral!.mac)
 //        DeviceCache.shared.add(connectPeripheral!.device.identifier.uuidString, mac: connectPeripheral!.mac)
@@ -120,16 +121,8 @@ extension BleManager:CBCentralManagerDelegate{
         }
     }
 }
-// 扩展 String 来添加 padLeft 方法
-extension String {
-    func padLeft(toLength: Int, withPad pad: String) -> String {
-        let paddingCount = max(0, toLength - self.count)
-        return String(repeating: pad, count: paddingCount) + self
-    }
-}
 
 extension BleManager: CBPeripheralDelegate {
-    
     func peripheral(_ peripheral: CBPeripheral, didDiscoverServices error: Error?) {
         
         Logger.debug("发现服务成功")
@@ -152,6 +145,25 @@ extension BleManager: CBPeripheralDelegate {
                 Logger.debug("初始化失败!")
             }
         }
+        else if service.uuid.uuidString == "AE00",let list = service.characteristics{
+            for char in list {
+                if char.uuid.uuidString == "AE01" {
+                    Logger.debug( "BLE Get Rcsp(Write) Channel ---> %@",char.uuid.uuidString)
+                self.otaCharacteristic = char
+            }
+
+            if char.uuid.uuidString == "AE02" {
+                Logger.debug( "BLE Get Rcsp(read) Channel ---> %@",char.uuid.uuidString)
+                peripheral.setNotifyValue(true, for: char)
+
+//                if self.mRcspRead.properties == CBCharacteristicPropertyRead) {
+                 peripheral.readValue(for: char)
+                    Logger.debug( "BLE  Rcsp(Read) Read Value For Characteristic.")
+//                }
+                }
+            }
+                
+        }
     }
     
     func peripheral(_ peripheral: CBPeripheral, didUpdateNotificationStateFor characteristic: CBCharacteristic, error: (any Error)?) {
@@ -383,3 +395,8 @@ extension BleManager{
         return list
     }
 }
+
+
+extension BleManager{
+    
+}
index 7b69571..15ff0ba 100644 (file)
@@ -9,4 +9,4 @@
 #import "YLTimerButton.h"
 #import "PcmSound.h"
 #import <zlib.h>
-#import "YLOtaManager2.h"
+//#import "YLOtaManager2.h"
index 5aa4bb0..d80de07 100644 (file)
@@ -117,4 +117,9 @@ extension Data {
 
 extension String {
     var data: Data? { self.data(using: .utf8) }
+    
+    func padLeft(toLength: Int, withPad pad: String) -> String {
+        let paddingCount = max(0, toLength - self.count)
+        return String(repeating: pad, count: paddingCount) + self
+    }
 }
index bf09675..75d4e34 100644 (file)
@@ -54,6 +54,6 @@ class BaseTC:UITabBarController{
         self.tabBar.backgroundColor = .white
         view.backgroundColor = .color(.bgColor)
 
-//        self.selectedIndex = 4
+        self.selectedIndex = 2
     }
 }
index 1820b0c..226a4bf 100644 (file)
@@ -55,7 +55,6 @@ open class BaseVC:UIViewController {
         super.viewDidAppear(animated)
         self.navigationController?.navigationBar.isHidden = true
     }
-
     
     deinit {
         Logger.debug("deinit \(Self.self)")
@@ -92,6 +91,7 @@ open class BaseVC:UIViewController {
         logBtn.setTitle("log", for: .normal)
         logBtn.addTarget(self, action: #selector(logAction), for: .touchUpInside)
         view.addSubview(logBtn)
+        logBtn.isHidden = !Logger.isDebug
     }
     @objc func logAction(){
         App.shared.goToPage(LogVC())
index 77f2c10..5c39a28 100644 (file)
@@ -71,8 +71,8 @@ class HomeDeviceVC:BaseVC{
         //        v.selectedIndex(4)
         //        v.show(animate: true)
         
-//        App.shared.goToPage(BleScanVC())
-        App.shared.goToPage(CalendarPickerVC())
+        App.shared.goToPage(BleScanVC())
+//        App.shared.goToPage(CalendarPickerVC())
         
 //        BleManager.shared.checkSettingsConnected()
     }
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Headers/JLLogHelper.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Headers/JLLogHelper.h
deleted file mode 100644 (file)
index a681462..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-//
-//  JLLogHelper.h
-//  JLLogHelper
-//
-//  Created by EzioChan on 2024/5/8.
-//  Copyright © 2024 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-//! Project version number for JLLogHelper.
-FOUNDATION_EXPORT double JLLogHelperVersionNumber;
-
-//! Project version string for JLLogHelper.
-FOUNDATION_EXPORT const unsigned char JLLogHelperVersionString[];
-
-// In this header, you should import all the public headers of your framework using statements like #import <JLLogHelper/PublicHeader.h>
-
-#import <JLLogHelper/JLLogManager.h>
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Headers/JLLogManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Headers/JLLogManager.h
deleted file mode 100644 (file)
index db31d82..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-//
-//  JLLogManager.h
-//  JLLogHelper
-//
-//  Created by EzioChan on 2024/5/8.
-//  Copyright © 2024 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 打印宏
-#define kJLLog(level,fmt...) [JLLogManager logLevel:level funcName:__FUNCTION__ line:__LINE__ format:fmt]
-
-typedef NS_ENUM(NSInteger, JLLOG_LEVEL) {
-    JLLOG_COMPLETE  = 0,
-    JLLOG_DEBUG     = 1,
-    JLLOG_INFO      = 2,
-    JLLOG_WARN      = 3,
-    JLLOG_ERROR     = 4,
-};
-
-/// 日志打印
-@interface JLLogManager : NSObject
-
-/// 打印SDK版本
-+(void)sdkVersion;
-
-///清理已存储的打印
-+(void)clearLog;
-
-/**
- *    打印文本
- */
-+(void)openLogTextFile;
-
-
-/// 打印时间
-/// @param isTimeStamp 是否打印 default is false
-+(void)logWithTimestamp:(BOOL)isTimeStamp;
-
-/// 把日志保存存储起来
-/// @param isSave 是否保存 default is \ 5yes
-+(void)saveLogAsFile:(BOOL)isSave;
-
-///LOG使能与等级,默认开启且debug等级。
-/// @param enable LOG使能
-/// @param isMore 是否打印【函数名&行号】
-/// @param level   LOG等级
-+(void)setLog:(BOOL)enable IsMore:(BOOL)isMore Level:(JLLOG_LEVEL)level;
-
-/// 打印函数
-/// @param level     LOG等级
-/// @param func       函数名
-/// @param line       行号
-/// @param format   内容
-+(void)logLevel:(JLLOG_LEVEL)level funcName:(const char* _Nullable)func line:(const int)line format:(NSString * _Nonnull)format,...;
-
-/// 打印
-/// @param something 任意字符串内容
-+(void)logSomething:(NSString *)something;
-
-/// 打印
-/// @param level    LOG等级
-/// @param content   内容
-+(void)logLevel:(JLLOG_LEVEL)level content:(NSString *)content;
-
-/// 保存日志信息到文件中
-/// @param logContent 日志内容
-+(void)saveLog:(NSString *)logContent;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Info.plist b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Info.plist
deleted file mode 100644 (file)
index 22f0b62..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Info.plist and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/JLLogHelper b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/JLLogHelper
deleted file mode 100644 (file)
index 1f0d9f5..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/JLLogHelper and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Modules/module.modulemap b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JLLogHelper.framework/Modules/module.modulemap
deleted file mode 100644 (file)
index 21384c4..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-framework module JLLogHelper {
-  umbrella header "JLLogHelper.h"
-  export *
-
-  module * { export * }
-}
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Frameworks/JLLogHelper.framework/Info.plist b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Frameworks/JLLogHelper.framework/Info.plist
deleted file mode 100644 (file)
index 22f0b62..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Frameworks/JLLogHelper.framework/Info.plist and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Frameworks/JLLogHelper.framework/JLLogHelper b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Frameworks/JLLogHelper.framework/JLLogHelper
deleted file mode 100755 (executable)
index b51baf2..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Frameworks/JLLogHelper.framework/JLLogHelper and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLAdvParse.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLAdvParse.h
deleted file mode 100644 (file)
index 5293e91..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-//
-//  JLAdvParse.h
-//  JL_AdvParse
-//
-//  Created by EzioChan on 2023/1/31.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JLLogHelper/JLLogHelper.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8,JL_AdvType) {
-    JL_AdvTypeSoundBox              = 0,     //音箱类型
-    JL_AdvTypeChargingBin           = 1,     //充电仓类型
-    JL_AdvTypeTWS                   = 2,     //TWS耳机类型
-    JL_AdvTypeHeadset               = 3,     //普通耳机类型
-    JL_AdvTypeSoundCard             = 4,     //声卡类型
-    JL_AdvTypeWatch                 = 5,     //手表类型
-    JL_AdvTypeTradition             = 6,     //传统设备类型
-};
-
-
-typedef NS_ENUM(NSInteger,JL_DeviceType) {
-    JL_DeviceTypeSoundBox           = 0,     //AI音箱类型
-    JL_DeviceTypeChargingBin        = 1,     //充电仓类型
-    JL_DeviceTypeTWS                = 2,     //TWS耳机类型
-    JL_DeviceTypeHeadset            = 3,     //普通耳机类型
-    JL_DeviceTypeSoundCard          = 4,     //声卡类型
-    JL_DeviceTypeWatch              = 5,     //手表类型
-    JL_DeviceTypeTradition          = -1,    //传统设备类型
-};
-
-
-/// 广播包解析器
-@interface JLAdvParse : NSObject
-
-/// 打印当前SDK的版本
-+(void)sdkVersion;
-
-/// 解析设备广播包内容
-/// @param key 过滤码(只针对传统设备生效,默认填空即可)
-/// @param advertData 蓝牙广播字典
-+(NSDictionary*)bluetoothAdvParse:(NSData *_Nullable)key AdvData:(NSDictionary*_Nonnull)advertData;
-
-
-#pragma mark - 回连广播包信息
-/**
- *  获取广播包kCBAdvDataManufacturerData里面 'JLOTA' 标识的蓝牙地址
- *  @param kCBAdvDataManufacturerData 广播包
- */
-+ (NSString * _Nullable)otaBleMacAddressFromCBAdvDataManufacturerData:(NSData *)kCBAdvDataManufacturerData;
-
-/**
- *  判断当前蓝牙地址是否等于广播包kCBAdvDataManufacturerData里面的蓝牙地址
- *  @param otaBleMacAddress ota升级中设备的蓝牙地址
- *  @param kCBAdvDataManufacturerData 广播包
- */
-+ (Boolean)otaBleMacAddress:(NSString *)otaBleMacAddress isEqualToCBAdvDataManufacturerData:(NSData *)kCBAdvDataManufacturerData;
-
-
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLChargingBoxAdv.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLChargingBoxAdv.h
deleted file mode 100644 (file)
index 27e16d1..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-//
-//  JLChargingBoxAdv.h
-//  JL_AdvParse
-//
-//  Created by EzioChan on 2023/12/12.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLDevicesAdv.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLChargingBoxAdv : JLDevicesAdv
-
-/// 经典蓝牙地址
-@property(nonatomic, strong) NSString *edrAddr;
-
-/// 是否已配对
-@property(nonatomic, assign) BOOL isParied;
-
-/// 是否已开盖
-@property(nonatomic, assign) BOOL isOpen;
-
-/// 耳机状态
-///0x00:不显示弹窗
-///0x01:经典蓝牙未连接
-///0x02:经典蓝牙已连接
-///0x03:设备正在回连
-///0x04:设备不可连接 (需要手动进入配对模式)
-@property(nonatomic, assign) uint8_t status;
-
-/// 左耳电量
-@property(nonatomic, assign) uint8_t batteryLeft;
-
-/// 右耳电量
-@property(nonatomic, assign) uint8_t batteryRight;
-
-/// 充电仓电量
-@property(nonatomic, assign) uint8_t batteryBox;
-
-///左耳是否在充电中
-@property(nonatomic, assign) BOOL isChargingLeft;
-
-///右耳是否在充电中
-@property(nonatomic, assign) BOOL isChargingRight;
-
-///充电仓是否在充电中
-@property(nonatomic, assign) BOOL isChargingBox;
-
-/// seq
-/// 用于区分是否同一次开机。每次开机或者断开连接后 增加1
-@property(nonatomic, assign) uint8_t seq;
-
-///模式
-/// 0x00:充电模式
-/// 0x01:发射模式
-@property(nonatomic, assign) uint8_t mode;
-
-/// 加密 Hash 校验值
-@property(nonatomic, copy) NSData *hashData;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLDevicesAdv.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLDevicesAdv.h
deleted file mode 100644 (file)
index 432142d..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-//
-//  JLDevicesAdv.h
-//  JL_AdvParse
-//
-//  Created by EzioChan on 2023/12/12.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JLAdvParse.h"
-
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLDevicesAdv : NSObject
-
-/// 客户唯一标识
-@property(nonatomic,assign)uint16_t uid;
-
-/// 产品唯一标识
-@property(nonatomic,assign)uint16_t pid;
-
-/// 设备类型
-///JL_DeviceTypeSoundBox           = 0,     //AI音箱类型
-///JL_DeviceTypeChargingBin        = 1,     //充电仓类型
-///JL_DeviceTypeTWS                = 2,     //TWS耳机类型
-///JL_DeviceTypeHeadset            = 3,     //普通耳机类型
-///JL_DeviceTypeSoundCard          = 4,     //声卡类型
-///JL_DeviceTypeWatch              = 5,     //手表类型
-///JL_DeviceTypeTradition          = -1,    //传统设备类型
-@property(nonatomic,assign)JL_DeviceType type;
-
-/// 协议版本
-@property(nonatomic,assign)uint8_t version;
-
-/// 可变数据段
-@property(nonatomic,copy)NSData *variableData;
-
-- (instancetype)initWithData:(NSData *)data;
-
-
-/// 转成model类型
-/// @param basicData 蓝牙广播数据
-+(JLDevicesAdv *__nullable)advertDataToModel:(NSData *)basicData;
-
-/// 转成model类型
-/// @param basicHexStr 蓝牙广播数据
-+(JLDevicesAdv *__nullable)advertDataHexStrToModel:(NSString *)basicHexStr;
-
-@end
-
-
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLEarphoneAdv.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLEarphoneAdv.h
deleted file mode 100644 (file)
index ab6475e..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-//
-//  JLEarphoneAdv.h
-//  JL_AdvParse
-//
-//  Created by EzioChan on 2023/12/12.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLDevicesAdv.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLEarphoneAdv : JLDevicesAdv
-
-/// 左耳电量
-@property(nonatomic, assign) uint8_t batteryLeft;
-
-/// 右耳电量
-@property(nonatomic, assign) uint8_t batteryRight;
-
-///左耳是否在充电中
-@property(nonatomic, assign) BOOL isChargingLeft;
-
-///右耳是否在充电中
-@property(nonatomic, assign) BOOL isChargingRight;
-
-/// 是否已配对
-@property(nonatomic, assign) BOOL isParied;
-
-/// 是否主机
-@property(nonatomic, assign) BOOL isMaster;
-
-/// 是否允许连接
-@property(nonatomic, assign) BOOL enableConnect;
-
-/// 耳机状态
-///0x00:不显示弹窗
-///0x01:经典蓝牙未连接
-///0x02:经典蓝牙已连接
-///0x03:设备正在回连
-///0x04:设备不可连接 (需要手动进入配对模式)
-@property(nonatomic, assign) uint8_t status;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLOtaAdv.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLOtaAdv.h
deleted file mode 100644 (file)
index da40339..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-//
-//  JLOtaAdv.h
-//  JL_AdvParse
-//
-//  Created by EzioChan on 2023/12/12.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <JL_AdvParse/JL_AdvParse.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLOtaAdv : JLDevicesAdv
-
-/// ble address before
-@property(nonatomic,strong)NSString *BleAddrBefore;
-
-//MARK: - Version 1
-/// battery
-@property(nonatomic,assign)uint8_t battery;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLSoundBoxAdv.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLSoundBoxAdv.h
deleted file mode 100644 (file)
index 9ac1041..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-//
-//  JLSoundBoxAdv.h
-//  JL_AdvParse
-//
-//  Created by EzioChan on 2023/12/12.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLTwsAdv.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLSoundBoxAdv : JLTwsAdv
-
-@property(nonatomic,assign)uint8_t battery;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLSoundCardAdv.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLSoundCardAdv.h
deleted file mode 100644 (file)
index 792c3b3..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-//
-//  JLSoundCardAdv.h
-//  JL_AdvParse
-//
-//  Created by EzioChan on 2023/12/12.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLTwsAdv.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLSoundCardAdv : JLTwsAdv
-
-@property(nonatomic,assign)uint8_t battery;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLTwsAdv.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLTwsAdv.h
deleted file mode 100644 (file)
index ebe2eed..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-//
-//  JLTwsAdv.h
-//  JL_AdvParse
-//
-//  Created by EzioChan on 2023/12/12.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLDevicesAdv.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLTwsAdv : JLDevicesAdv
-
-//MARK: - Version 0
-
-/// 经典蓝牙地址
-@property(nonatomic, strong) NSString *edrAddr;
-
-/// 耳机状态
-///0x00:不显示弹窗
-///0x01:经典蓝牙未连接
-///0x02:经典蓝牙已连接
-///0x03:设备正在回连
-///0x04:设备不可连接 (需要手动进入配对模式)
-@property(nonatomic, assign) uint8_t status;
-
-/// 左耳电量
-@property(nonatomic, assign) uint8_t batteryLeft;
-
-/// 右耳电量
-@property(nonatomic, assign) uint8_t batteryRight;
-
-/// 充电仓电量
-@property(nonatomic, assign) uint8_t batteryBox;
-
-///左耳是否在充电中
-@property(nonatomic, assign) BOOL isChargingLeft;
-
-///右耳是否在充电中
-@property(nonatomic, assign) BOOL isChargingRight;
-
-///充电仓是否在充电中
-@property(nonatomic, assign) BOOL isChargingBox;
-
-/// seq
-/// 用于区分是否同一次开机。每次开机或者断开连接后 增加1
-@property(nonatomic, assign) uint8_t seq;
-
-/// 加密 Hash 校验值
-@property(nonatomic, copy) NSData *hashData;
-
-//MARK: - Version 1
-/// BLE连接属性(enableConnect)
-@property(nonatomic, assign) BOOL bleEnable;
-
-//MARK: - Version 2
-/// 连接方式
-/// 0x00 BLE 通迅
-/// 0x01 SPP 通迅
-@property(nonatomic, assign) uint8_t connectWay;
-
-/// 是否支持智能充电仓
-@property(nonatomic, assign) BOOL isSupportChargBox;
-
-//MARK: - Version 3
-/// 左耳电量为挂脖耳机电量!!!,其他耳机电量使用
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLWatchAdv.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JLWatchAdv.h
deleted file mode 100644 (file)
index 696ad92..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-//
-//  JLWatchAdv.h
-//  JL_AdvParse
-//
-//  Created by EzioChan on 2023/12/12.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <JL_AdvParse/JLDevicesAdv.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLWatchAdv : JLDevicesAdv
-
-/// 经典蓝牙地址
-@property(nonatomic, strong) NSString *edrAddr;
-
-/// 连接方式
-/// 0x00 ble
-/// 0x01 spp
-@property(nonatomic, assign) int8_t connectWay;
-
-
-/// 手表状态
-/// 0x00:经典蓝牙未连接
-/// 0x01:经典蓝牙已连接 0x02:设备正在回连
-/// 0x03:设备不可连接 (需要手动进入配对模式)
-@property(nonatomic, assign) int8_t connectState;
-
-/// 是否需要先连上 ble
-@property(nonatomic, assign) BOOL priorityConnection;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JL_AdvParse.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Headers/JL_AdvParse.h
deleted file mode 100644 (file)
index b599b7e..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-//
-//  JL_AdvParse.h
-//  JL_AdvParse
-//
-//  Created by EzioChan on 2023/1/31.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-//! Project version number for JL_AdvParse.
-FOUNDATION_EXPORT double JL_AdvParseVersionNumber;
-
-//! Project version string for JL_AdvParse.
-FOUNDATION_EXPORT const unsigned char JL_AdvParseVersionString[];
-
-// In this header, you should import all the public headers of your framework using statements like #import <JL_AdvParse/PublicHeader.h>
-#import <JL_AdvParse/JLAdvParse.h>
-#import <JL_AdvParse/JLDevicesAdv.h>
-#import <JL_AdvParse/JLTwsAdv.h>
-#import <JL_AdvParse/JLSoundBoxAdv.h>
-#import <JL_AdvParse/JLSoundCardAdv.h>
-#import <JL_AdvParse/JLChargingBoxAdv.h>
-#import <JL_AdvParse/JLEarphoneAdv.h>
-#import <JL_AdvParse/JLWatchAdv.h>
-#import <JL_AdvParse/JLOtaAdv.h>
-
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Info.plist b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Info.plist
deleted file mode 100644 (file)
index 178219d..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Info.plist and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/JL_AdvParse b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/JL_AdvParse
deleted file mode 100644 (file)
index a0c8ad3..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/JL_AdvParse and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Modules/module.modulemap b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_AdvParse.framework/Modules/module.modulemap
deleted file mode 100644 (file)
index c072084..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-framework module JL_AdvParse {
-  umbrella header "JL_AdvParse.h"
-  export *
-
-  module * { export * }
-}
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Frameworks/JLLogHelper.framework/Info.plist b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Frameworks/JLLogHelper.framework/Info.plist
deleted file mode 100644 (file)
index 22f0b62..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Frameworks/JLLogHelper.framework/Info.plist and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Frameworks/JLLogHelper.framework/JLLogHelper b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Frameworks/JLLogHelper.framework/JLLogHelper
deleted file mode 100755 (executable)
index f3db781..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Frameworks/JLLogHelper.framework/JLLogHelper and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECBDTManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECBDTManager.h
deleted file mode 100644 (file)
index 7dca272..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-//
-//  ECBDTManager.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/11/20.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <JL_BLEKit/JL_BLEKit.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class JL_ManagerM;
-
-@protocol ECBDTManagerProtocol <NSObject>
-
-/// 大数据传输错误
-/// - Parameters:
-///   - manager: 设备
-///   - type: 类型
-///   - error: 错误
--(void)ecBDTManagerError:(JL_ManagerM *)manager Type:(uint8_t) type  Error:(NSError *)error;
-
-/// 获取到设备端推送/ SDK 端读取的大数据内容
-/// - Parameters:
-///   - manager: 设备
-///   - type: 类型
-///   - data: 数据块
-///   - progress: 进度
--(void)ecBDTManager:(JL_ManagerM *)manager Type:(uint8_t) type GetBigData:(NSData *)data Progress:(float) progress;
-
-/// 获取到设备端推送/ SDK 端读取的大数据内容 结束
-/// - Parameters:
-///   - manager: 设备
-///   - type: 类型
-///   - saveFilePath: 数据存放位置
--(void)ecBDTManager:(JL_ManagerM *)manager Type:(uint8_t) type  FinishBigData:(NSString *)saveFilePath;
-
-
-@optional
-
-///  App 端主动发起的向写入数据进度
-/// - Parameters:
-///   - manager: 设备
-///   - progress: 数据
-///   - finish: 是否完成
--(void)ecBDTManager:(JL_ManagerM *)manager SendBigDataPresent:(float )progress Finish:(BOOL)finish;
-
-///  设备端发起大数据写操作
-///  设备端主动发起的向 App 端写入数据
-/// - Parameters:
-///   - manager: 设备
-///   - type: 类型
-///   - req: 请求写入的内容
--(void)ecBDTManager:(JL_ManagerM *)manager StartBigData:(ECBDTWriteReq *)req Type:(uint8_t) type;
-
-
-/// 设备端发起大数据读取操作
-/// 开发者在这里需要对设备主动过来请求的内容进行回复
-/// -(void)responseDev:(JL_ManagerM *)manager resp:(ECBDTReadReq *)req Data:(NSData *)data
-/// - Parameters:
-///   - manager: 设备
-///   - type: 类型
-///   - req: 请求内容
--(void)ecBDTManager:(JL_ManagerM *)manager ReadBigData:(ECBDTReadReq *)req Type:(uint8_t) type;
-
-/// 发送大数据完毕
-/// - Parameter manager: 设备
-/// - Parameter type: 类型
--(void)ecBDTManagerSendFinish:(JL_ManagerM *)manager  Type:(uint8_t) type;
-
-@end
-
-@interface ECBDTManager : ECOneToMorePtl
-
-+(instancetype)share;
-
-/// APP 读取设备数据
-/// - Parameters:
-///   - manager: 设备
-///   - type: 数据类型
-/// * 0 :原始数据
-/// * 1 :  阿里云数据
-/// * 2:RTC数据
-/// * 3:AI云
-/// * 4:TTS语音合成
-/// * 5:平台接口认证信息
-/// * 6:esim 卡信息
-/// * 7:4G 模块升级数据
-/// * 8:提示音文件数据
--(void)readData:(JL_ManagerM *)manager Type:(uint8_t)type;
-
-/// APP 写入设备数据
-/// - Parameters:
-///   - manager: 设备
-///   - type: 数据类型
-/// * 0 :原始数据
-/// * 1 :  阿里云数据
-/// * 2:RTC数据
-/// * 3:AI云
-/// * 4:TTS语音合成
-/// * 5:平台接口认证信息
-/// * 6:esim 卡信息
-/// * 7:4G 模块升级数据
-/// * 8:提示音文件数据
-///   - data: 大数据内容
--(void)writeData:(JL_ManagerM *)manager Type:(uint8_t) type Data:(NSData*)data;
-
-/// 回应设备主动读取内容
-/// 此方法需要配合使用
-/// -(void)ecBDTManager:(JL_ManagerM *)manager ReadBigData:(ECBDTReadReq *)req
-/// - Parameters:
-///   - manager: 设备
-///   - req: 设备端请求的对象
-///   - data: 需要下发的数据内容
--(void)responseDev:(JL_ManagerM *)manager resp:(ECBDTReadReq *)req Data:(NSData *)data;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECBDTObjc.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECBDTObjc.h
deleted file mode 100644 (file)
index 9416bee..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
-//
-//  ECBDTObjc.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/11/21.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface ECBDTObjc : NSObject
-
-@end
-
-/// 设备传输参数回复数据
-@interface ECBDTBasic : NSObject
-/// 操作类型
-/// 0:设备传输参数
-/// 1:传输数据
-@property (nonatomic, assign) uint8_t op;
-
-/// 方式
-/// 0:读取数据
-/// 1:发送数据
-@property (nonatomic, assign) uint8_t way;
-
-/// 数据类型
-/// * 0 :原始数据
-/// * 1 :  阿里云数据
-/// * 2:RTC数据
-/// * 3:AI云
-/// * 4:TTS语音合成
-/// * 5:平台接口认证信息
-/// * 6:esim 卡信息
-/// * 7:4G 模块升级数据
-@property (nonatomic, assign) uint8_t type;
-
-/// 版本
-@property (nonatomic, assign) uint8_t version;
-
-/// 数据
-@property (nonatomic, copy)NSData *paramData;
-
--(instancetype)initData:(NSData *)data;
-
-@end
-
-
-//MARK: - 回复大数据数据解析(设备回复)
-
-/// 设备传输参数(读取回复)
-@interface ECBDTReadResp : ECBDTBasic
-/// 结果码
-@property (nonatomic, assign) uint8_t result;
-
-/// 数据长度
-@property (nonatomic, assign) uint32_t dtLen;
-
-/// 数据总 CRC
-@property (nonatomic, assign) uint16_t crc;
-
-/// 发送 MTU 协商值
-@property (nonatomic, assign) uint16_t sendMtu;
-
-/// 接收 MTU 协商值
-@property (nonatomic, assign) uint16_t receiveMtu;
-
-@end
-
-/// 设备传输参数(发送回复)
-@interface ECBDTWriteResp : ECBDTBasic
-/// 结果码
-@property (nonatomic, assign) uint8_t result;
-
-/// 发送 MTU 协商值
-@property (nonatomic, assign) uint16_t sendMtu;
-
-/// 接收 MTU 协商值
-@property (nonatomic, assign) uint16_t receiveMtu;
-
-@end
-
-//MARK: - 请求大数据数据解析(设备请求)
-
-/// 设备传输参数(读取请求)
-@interface ECBDTReadReq: ECBDTBasic
-
-/// 发送 MTU 协商值
-@property (nonatomic, assign) uint16_t sendMtu;
-
-/// 接收 MTU 协商值
-@property (nonatomic, assign) uint16_t receiveMtu;
-
-@end
-
-
-/// 设备传输参数(发送请求)
-@interface ECBDTWriteReq : ECBDTBasic
-
-/// 数据长度
-@property (nonatomic, assign) uint32_t dtLen;
-
-/// 数据总 CRC
-@property (nonatomic, assign) uint16_t crc;
-
-/// 发送 MTU 协商值
-@property (nonatomic, assign) uint16_t sendMtu;
-
-/// 接收 MTU 协商值
-@property (nonatomic, assign) uint16_t receiveMtu;
-
-@end
-
-
-//传输数据命令参数
-@interface ECBDTCmdData : NSObject<NSCopying>
-/// 数据类型
-/// * 0 :原始数据
-/// * 1 :  阿里云数据
-/// * 2:RTC数据
-/// * 3:AI云
-/// * 4:TTS语音合成
-/// * 5:平台接口认证信息
-/// * 6:esim 卡信息
-/// * 7:4G 模块升级数据
-@property (nonatomic, assign) uint8_t type;
-
-
-/// 标识位
-/// YES:结束
-/// NO:继续
-@property (nonatomic, assign) BOOL isEnd;
-
-///序号
-@property (nonatomic, assign) uint32_t seq;
-
-/// crc
-@property (nonatomic, assign) uint16_t crc;
-
-/// 数据偏移
-@property (nonatomic, assign) uint32_t offset;
-
-/// 数据长度
-@property (nonatomic, assign) uint16_t len;
-
-/// 数据
-@property (nonatomic, copy)NSData *data;
-
-
--(instancetype)initData:(NSData *)data;
-
--(NSData *)beData;
-
-/// 切块分包数据
-/// - Parameters:
-///   - mtu: 发送的 mtu
-///   - type: 数据类型
-///   - dt: 文件数据
-+(NSArray<ECBDTCmdData *>*)makeWithMtu:(uint16_t)mtu Type:(uint8_t) type Data:(NSData *)dt;
-
-@end
-
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECOneToMorePtl.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECOneToMorePtl.h
deleted file mode 100644 (file)
index e88639a..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-//
-//  ECOneToMorePtl.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/27.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "NSData+ToUnit.h"
-#import "JL_ManagerM.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface ECOneToMorePtl : NSObject
-
-@property(nonatomic,strong,readonly)NSHashTable         *delegates;
-@property(nonatomic,strong)NSLock                       *delegateLock;
-
--(void)addDelegate:(id)delegate;
--(void)removeDelegate:(id)delegate;
--(void)removeAll;
--(void)inputPKG:(JL_PKG*)pkg;
--(void)inputPKG:(JL_PKG *)pkg Manager:(JL_ManagerM *)mgr;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECThreadHelper.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/ECThreadHelper.h
deleted file mode 100644 (file)
index a648b96..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-//
-//  ECThreadHelper.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/11/20.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@protocol ECThreadHelperPtl <NSObject>
-
--(void)startAction:(id)objc;
--(void)finishThreadTaskAction;
-
-@end
-
-typedef void(^EcThreadAction)(id objc);
-
-@interface ECThreadHelper : NSObject
-
-
-@property (nonatomic, weak) id<ECThreadHelperPtl> delegate;
-
-@property (nonatomic, copy) EcThreadAction action;
-
-+(instancetype)share;
-
--(instancetype)init;
-
--(void)addTask:(id<NSCopying>)any;
-
--(void)nextTask;
-
--(void)clean;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL4GUpgradeManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL4GUpgradeManager.h
deleted file mode 100644 (file)
index be3e20a..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-//
-//  JL4GUpgradeManager.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/12/18.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JLPublicSettingBlocks.h"
-
-NS_ASSUME_NONNULL_BEGIN
-/// 4G 升级状态枚举
-typedef NS_ENUM(uint8_t, JL4GUpgradeStatus) {
-    /// 完成
-    JL4GUpgradeStatusFinish = 0x00,
-    /// 开始
-    JL4GUpgradeStatusStart = 0x01,
-    /// 传输中
-    JL4GUpgradeStatusTransporting = 0x02,
-    /// 设备处理中
-    JL4GUpgradeStatusDeviceProcessing = 0xff
-};
-
-@class JL4GUpgradeManager;
-
-/// 4G 升级代理回调
-@protocol JL4GUpgradeDelegate  <NSObject>
-
-/// 升级结果
-/// - Parameters:
-///   - mgr:4G升级管理对象
-///   - status: 升级状态
-///   - progress: 升级进度
-///   - code: 结果码
-///     0x00 升级成功
-///     0x01 升级失败
-///     0x02 升级超时
-///   - error: 错误信息
--(void)jl4GUpgradeResult:(JL4GUpgradeManager *)mgr Status:(JL4GUpgradeStatus) status Progress:(float)progress Code:(uint8_t)code error:(NSError * _Nullable)error;
-
-/// 设备 4G 信息更新
-/// - Parameter g4Model: 4G信息
--(void)jl4GGetDeviceInfo:(JLPublic4GModel *)g4Model;
-
-@end
-
-@class JL_ManagerM;
-
-/// 4G模块升级管理对象
-@interface JL4GUpgradeManager : NSObject
-
-/// 单例
-+(instancetype)share;
-
-/// 4G 升级信息
-/// ⚠️需要先执行获取模块信息后获得值
-@property(nonatomic,strong)JLPublic4GModel *g4Model;
-
-/// 4G升级代理回调
-@property(nonatomic,weak) id<JL4GUpgradeDelegate> delegate;
-
-/// 获取4G模块信息
-/// - Parameters:
-///   - manager: 设备
-///   - result: 回调结果
--(void)cmdGetDevice4GInfo:(JL_ManagerM *)manager result:(JLPSSource4GCbk)result;
-
-
-/// 开始4G升级
-/// - Parameters:
-///   - manager: 设备
-///   - data: 升级数据
--(void)cmdStartUpgrade4G:(JL_ManagerM *)manager Data:(NSData *)data;
-
-/// 取消4G升级
-/// - Parameter manager: 设备
--(void)cmdCancel4GUpgrade:(JL_ManagerM *)manager;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAIDialManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAIDialManager.h
deleted file mode 100644 (file)
index 05cef72..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-//
-//  JLAIDialManager.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/10/12.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_FileManager.h>
-
-NS_ASSUME_NONNULL_BEGIN
-@class JL_ManagerM;
-@class JLAIDialManager;
-
-@protocol JLAIDialManagerDelegate <NSObject>
-
-/// 设备通知App AI表盘界面变化
-/// - Parameters:
-///   - manager: ai dial manager
-///   - status:0x00: 退出AI表盘功能  0x01: 进入AI表盘功能
--(void)aiDialManager:(JLAIDialManager *)manager didAiDialStatusChange:(uint8_t)status;
-
-/// 开始AI生成表盘
-/// - Parameter manager: ai dial manager
--(void)aiDialdidStartCreateManager:(JLAIDialManager *)manager;
-
-/// 重新录音
-/// - Parameter manager: ai dial manager
--(void)aiDialdidRestartRecordManager:(JLAIDialManager *)manager;
-
-/// AI表盘开始安装
-/// - Parameter manager: ai dial manager
--(void)aiDialdidStartInstallManager:(JLAIDialManager *)manager;
-
-
-/// 重新生成表盘
-/// - Parameter manager: ai dial manager
--(void)aiDialdidReCreateManager:(JLAIDialManager *)manager;
-
-@end
-
-
-
-/// ai dial manager
-@interface JLAIDialManager : NSObject
-
-/// 进入/退出AI表盘
-@property (nonatomic, assign) BOOL isCreateing;
-
-/// 缩略图尺寸 默认 200*200
-/// scale zoom size default 200*200
-@property (nonatomic,assign) CGSize scaleZoomSize;
-
-
-/// 代理
-@property (nonatomic, weak) id<JLAIDialManagerDelegate> delegate;
-
-
-/// AI 表盘风格显示设置
-/// - Parameter manager: 设备对象
-/// - Parameter style: 风格类型
-/// - Parameter result: 回调对象
--(void)aiDialSetManager:(JL_ManagerM *)manager AiStyle:(NSString *)style Result:(JL_CMD_RESPOND)result;
-
-
-/// AI表盘告诉设备缩略图发送完毕
-/// - Parameter manager: 设备对象
-/// - Parameter path: 目标缩略图路径(设备端的位置)默认 "/VIE_THUMB"
-/// - Parameter result: 回调对象
--(void)aiDialSendThumbAiImageTo:(JL_ManagerM *)manager withPath:(NSString *)path Result:(JL_CMD_RESPOND)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAiManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAiManager.h
deleted file mode 100644 (file)
index 2687548..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-//
-//  JLAiManager.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/8/9.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-//MARK: - JLOpenPlatformInfo
-/// 平台接口认证信息
-@interface JLOpenPlatformInfo : NSObject
-/// 版本号
-@property(nonatomic,assign)uint8_t version;
-/// 平台 ID
-@property(nonatomic,copy)NSString *appID;
-/// app key
-@property(nonatomic,copy)NSString *appKey;
-/// app 的密钥
-@property(nonatomic,copy)NSString *appSecret;
-/// 原始数据
-@property(nonatomic,copy)NSData *basicData;
-
--(instancetype)initData:(NSData *)data;
-
-@end
-
-/// 平台接口认证信息
-@interface JLOpenPlatformMessage : NSObject
-/// 版本号
-@property(nonatomic,assign)uint8_t version;
-/// 支持平台信息
-@property(nonatomic,copy)NSArray <JLOpenPlatformInfo *>* infoArray;
-
--(instancetype)initData:(NSData *)dt;
-
-@end
-
-//MARK: - JLAiManager
-@class JL_ManagerM;
-@class JLAiManager;
-
-@protocol JLAIManagerDelegate <NSObject>
-
-/// 设备回调/推送结果
-/// - Parameter mgr: JLAiManager
--(void)jlaiUpdateStatus:(JLAiManager *)mgr;
-
-@optional
-///  设备主动推送JLOpenPlatformInfo信息
-/// - Parameters:
-///   - mgr: 设备
-///   - infoArray: [JLOpenPlatformInfo]
--(void)jlaiUpdateDevAiOpenPlatforms:(JLAiManager *)mgr Info:(JLOpenPlatformMessage *)info;
-
-
-@end
-
-typedef void(^JLOpenPFBlock)(JLOpenPlatformMessage *message,JL_CMDStatus result);
-
-/// AI状态 管理类
-/// 当前接口适用于一些支持设备对讲的设备,在使用时需要先初始化当前类并接受代理:JLAIManagerDelegate
-/// 在初始化后需要主动获取状态才可以获得首次的状态内容
-///
-@interface JLAiManager : NSObject
-
-/// 版本号
-@property(assign,nonatomic)uint8_t version;
-
-/// 0x00:默认状态
-/// 0x01:进入AI界面
-/// 0x02:退出AI界面
-@property(assign,nonatomic)uint8_t status;
-
-/// 回调代理
-@property(weak,nonatomic)id<JLAIManagerDelegate> delegate;
-
-/// 获取AI 的状态
-///- Parameters:
-///   - manager: 设备对象
--(void)getStatus:(JL_ManagerM *)manager;
-
-/// 设置设备的状态
-/// - Parameters:
-///   - manager: 设备对象
-///   - result: 回调结果
--(void)setToDevice:(JL_ManagerM *)manager result:(JL_CMD_RESPOND _Nullable)result;
-
-
-/// 获取平台接口认证信息,此信息需要先获取 JLDeviceConfig
-/// 根据JLDeviceConfigModel 的 exportFunc 属性的
-/// spOpenInfo 判断是否支持平台开放接口信息获得
-/// - Parameters:
-///   - manager: 设备对象
-///   - result: 回调结果
--(void)getOpenPlatformInfo:(JL_ManagerM *)manager result:(JLOpenPFBlock _Nullable)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAutoConfigAnc.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAutoConfigAnc.h
deleted file mode 100644 (file)
index 67e2329..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-//
-//  JLAutoConfigAnc.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2022/10/28.
-//  Copyright © 2022 www.zh-jieli.com. All rights reserved.
-//
-
-
-#import "ECOneToMorePtl.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class JL_ManagerM;
-
-typedef void(^AutoConfigResult)(BOOL status);
-
-@protocol JLAutoConfigAncPtl <NSObject>
-
-
-/// 设备正在重新检测自适应降噪
--(void)autoConfigDidConfiging;
-///设置自适应降噪失败了
--(void)autoConfigDidFailed;
-///设置自适应降噪成功了
--(void)autoConfigDidSucceed;
-///关闭自适应降噪
--(void)autoConfigDidClose;
-
-@end
-
-
-/// 自适应降噪处理类
-@interface JLAutoConfigAnc : ECOneToMorePtl
-
-/// 设备开启/关闭自适应降噪的状态
-@property (assign,nonatomic)BOOL status;
-
-/// 开启设备自适应降噪
-/// 这里只是进入了设备开始适配降噪的命令过程
-/// 适配成功与否需要添加协议JLAutoConfigAncPtl进行监听
-/**
- interface testView : UIView<JLAutoConfigAncPtl>
- 
- @end
- 
- -(void)initData{
-    JLAutoConfigAnc *anc = [[JLAutoConfigAnc alloc] init];
-    [anc addDelegate:self];
- }
- 
- -(void)autoConfigDidFailed{
-    //设置自适应降噪失败了
- }
- -(void)autoConfigDidSucceed{
-    //设置自适应降噪成功了
- }
- -(void)autoConfigDidClose{
-    //关闭自适应降噪
- }
-*/
-/// - Parameter manager: manager
--(void)atAncStartAutoConfigWithManager:(JL_ManagerM*)manager;
-
-
-/// 打开设备自适应降噪
-/// 设备默认有一套已在运行的降噪算法
-/// 打开后设备会进入降噪模式,不会经历检测启动自适应的时间,相当于是即时生效
-/// - Parameter result: 这里回调的是一个设备命令处理的结果
-/// - Parameter manager: manager
--(void)atAncOpenAutoConfigResult:(JL_CMD_RESPOND)result Manager:(JL_ManagerM*)manager;
-
-/// 用户关闭设备的自适应降噪模式算法
-/// - Parameter result: 命令处理结果,不代表命令处理成功
-/// - Parameter manager: manager
--(void)atAncCloseAutoConfigResult:(JL_CMD_RESPOND)result Manager:(JL_ManagerM*)manager;
-
-/// 获取设备是否开启了自适应降噪
-/// - Parameter result: 这里处理的结果是,设备实际是否开启了的结果,无需从代理中获得结果
-/// - Parameter manager: manager
--(void)atAncGetAutoConfigResult:(AutoConfigResult)result Manager:(JL_ManagerM*)manager;
-
-          
-@end
-          
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAutoPressureModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLAutoPressureModel.h
deleted file mode 100644 (file)
index c019440..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-//
-//  JLAutoPressureModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/12.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-///压力自动检测模式
-typedef NS_ENUM(UInt8, WatchAPLeveType) {
-    ///放松
-    WatchAPLeve_Relex = 0x00,
-    /// 正常
-    WatchAPLeve_Normal = 0x01,
-    /// 中等
-    WatchAPLeve_Middle = 0x02,
-    /// 偏高
-    WatchAPLeve_Hight = 0x03
-};
-
-@interface JLAutoPressureModel : JLwSettingModel
-
-///开关
-@property(nonatomic,assign)BOOL status;
-/// 模式
-@property(nonatomic,assign)WatchAPLeveType model;
-
--(instancetype)initWithData:(NSData *)data;
-
--(instancetype)initWithModel:(WatchAPLeveType)model switchStatus:(BOOL)status;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLCmdBasic.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLCmdBasic.h
deleted file mode 100644 (file)
index 8efb367..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-//
-//  JLCmdBasic.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/9/13.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_ManagerM.h>
-#import <JL_BLEKit/NSData+ToUnit.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLCmdBasic : NSObject
-
--(void)inputPKG:(JL_PKG *)pkg;
-
--(void)makeCommandAction:(NSData *)targetData withManager:(JL_ManagerM *)manager Result:(JL_CMD_RESPOND _Nullable)result;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLConsequentHeartRateModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLConsequentHeartRateModel.h
deleted file mode 100644 (file)
index 3a407f6..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-//  JLConsequentHeartRateModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/12.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 测量心率传感器设置
-@interface JLConsequentHeartRateModel : JLwSettingModel
-///开关
-@property(nonatomic,assign)BOOL status;
-/// 测量模式
-@property(nonatomic,assign)WatchConsequentType rType;
-
-/// 上限心率
-@property(nonatomic,assign)UInt8    maxHeartRate;
-
-/// 下限心率
-@property(nonatomic,assign)UInt8    minHeartRate;
-
-/// 是否包含上下心率区间
-@property(nonatomic,assign)BOOL hasRange;
-
--(instancetype)initWithData:(NSData *)data;
-
-/// 创建一个新的传感器设置对象
-/// @param type 测量类型
-/// @param status 开团状态
-- (instancetype)initWithModel:(WatchConsequentType)type Status:(BOOL)status;
-
-/// 创建一个新的传感器设置对象
-/// 携带心率上下限的
-/// @param type 测量类型
-/// @param status 开关状态
-/// @param min 心率下限
-/// @param max 心率上限
-- (instancetype)initWithModel:(WatchConsequentType)type Status:(BOOL)status Min:(UInt8) min Max:(UInt8)max;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDevPlayerCtrl.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDevPlayerCtrl.h
deleted file mode 100644 (file)
index 74e171a..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-//
-//  JLDevPlayerCtrl.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/9/25.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <JL_BLEKit/JL_BLEKit.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class JL_ManagerM;
-@class JLDevPlayerCtrl;
-
-/// 播放器回调
-@protocol JLDevPlayerCtrlDelegate<NSObject>
-
-/// 播放状态
-/// - Parameters:
-///   - ctrl: 播放器
-///   - status: 播放模式
--(void)jlDevPlayerCtrl:(JLDevPlayerCtrl *)ctrl playMode:(uint8_t)playMode;
-
-/// 播放状态回调
-/// - Parameters:
-///   - ctrl: 播放器
-///   - status: 播放状态
-///   - card: 当前播放的设备
-///   - time: 当前播放的时间
-///   - total: 总时长
--(void)jlDevPlayerCtrl:(JLDevPlayerCtrl *)ctrl playStatus:(uint8_t)status currentCard:(uint8_t)card currentTime:(uint32_t)time tolalTime:(uint32_t)total;
-
-/// 播放文件回调
-/// - Parameters:
-///   - ctrl: 播放器
-///   - name: 文件名
-///   - clus: 文件簇号
--(void)jlDevPlayerCtrl:(JLDevPlayerCtrl *)ctrl fileName:(NSString *)name currentClus:(uint32_t)clus;
-
-@end
-
-
-/// 设备播放器管理类
-@interface JLDevPlayerCtrl : JLCmdBasic
-
-/// 播放状态
-@property(nonatomic,assign)uint8_t playStatus;
-
-/// 当前播放的设备
-/// 0x00 : USB
-/// 0x01 : SD_0
-/// 0x02 : SD_1
-/// 0x03 : FLASH
-/// 0x04 : LineIn
-/// 0x05 : FLASH2
-@property(nonatomic,assign)uint8_t currentCard;
-
-/// 当前播放时间
-@property(nonatomic,assign)uint32_t currentTime;
-
-/// 歌曲总时长
-@property(nonatomic,assign)uint32_t tolalTime;
-
-/// 当前播放文件名
-@property(nonatomic,strong)NSString *fileName;
-
-/// 当前播放文件的簇号
-@property(nonatomic,assign)uint32_t currentClus;
-
-/// 当前播放模式
-///  0x01:全部循环;
-///  0x02:设备循环;
-///  0x03:单曲循环;
-///  0x04:随机播放;
-///  0x05:文件夹循环
-@property (nonatomic,assign)uint8_t playMode;
-
-/// 代理
-@property(nonatomic,weak)id<JLDevPlayerCtrlDelegate> delegate;
-
-/// 操控设备播放器设置
-/// - Parameters:
-///   - cmd: 操作命令
-///    0x01:PP按钮
-///    0x02:上一曲
-///    0x03:下一曲
-///    0x04:切换播放模式(当前播放模式:不可指定,设备播放模式自增)
-///    0x05:EQ
-///    0x06:快退
-///    0x07:快进
-///   - sec: 时间(当快进/快退时需要,其他功能时值为0)
-///   - manager: 设备对象
-///   - result: 返回结果
--(void)cmdPlayerCtrl:(uint8_t)cmd
-              Second:(uint16_t)sec
-             Manager:(JL_ManagerM *)manager
-              Result:(JL_CMD_RESPOND __nullable)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDeviceConfig.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDeviceConfig.h
deleted file mode 100644 (file)
index aa9fbea..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-//
-//  JLDeviceConfig.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2022/10/31.
-//  Copyright © 2022 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-@class ECOneToMorePtl;
-@class JLDeviceConfigTws;
-@class JLDeviceConfigModel;
-
-NS_ASSUME_NONNULL_BEGIN
-typedef void(^JLConfigRsp)(JL_CMDStatus status, uint8_t sn, JLDeviceConfigModel* __nullable config);
-
-typedef void(^JLConfigTwsRsp)(JL_CMDStatus status, uint8_t sn, JLDeviceConfigTws* __nullable config);
-
-
-/// 固件设置配置回调协议
-/// 遵循时,可通过父类的- (void)addDelegate:(id)delegate方法添加遵循
-@protocol JLConfigPtl <NSObject>
-
-@optional
-/// 监听回调协议
-/// - Parameter configModel: 固件设置配置回调
--(void)deviceConfigWith:(JLDeviceConfigModel *)configModel;
-
-/// TWS监听回调协议
-/// - Parameter configModel: 固件设置配置回调
--(void)deviceTwsConfigWith:(JLDeviceConfigTws *)configModel;
-
-@end
-
-@interface JLDeviceConfig : ECOneToMorePtl
-
-+(instancetype)share;
-
-/// 手表查询设备当前固件配置内容
-/// - Parameters:
-///   - manager: manager
-///   - result: 回调功能配置内容
--(void)deviceGetConfig:(JL_ManagerM *)manager result:(JLConfigRsp)result;
-
-/// 手表多设备管理时,可通过对应的设备UUID 获取相关的设备配置
-/// - Parameter entity: 设备uuidStr
--(JLDeviceConfigModel *_Nullable)deviceGetConfigWithUUID:(NSString *)uuidStr;
-
-/// TWS查询设备当前固件配置内容
-/// - Parameters:
-///   - manager: manager
-///   - result: 回调功能配置内容
--(void)deviceTwsGetConfig:(JL_ManagerM *)manager result:(JLConfigTwsRsp)result;
-
-/// Tws多设备管理时,可通过对应的设备UUID 获取相关的设备配置
-/// - Parameter entity: 设备uuidStr
--(JLDeviceConfigTws *)deviceGetTwsConfigWithUUID:(NSString *)uuidStr;
-
-
-/// 私有测试接口请勿使用
-/// - Parameter data: 用于测试数据
-/// - Parameter st: 是否开启测试模式
--(void)pDeviceTest:(NSData *)data Status:(BOOL)st;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDeviceConfigFuncModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDeviceConfigFuncModel.h
deleted file mode 100644 (file)
index cc23809..0000000
+++ /dev/null
@@ -1,240 +0,0 @@
-//
-//  JLDeviceConfigFuncModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2022/10/31.
-//  Copyright © 2022 www.zh-jieli.com. All rights reserved.
-//
-
-#import "ECOneToMorePtl.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-//MARK: - 必须功能
-
-/// 必须功能
-@interface JLDeviceBasicFuncModel : NSObject
-
-/// 支持OTA
-@property(nonatomic,assign)BOOL spOTA;
-
-/// 支持资源更新
-@property(nonatomic,assign)BOOL spSourceUpdate;
-
-/// 支持表盘增加/删除/查询
-@property(nonatomic,assign)BOOL spDialOperation;
-
-/// 支持表盘切换
-@property(nonatomic,assign)BOOL spDialSwitch;
-
-/// 支持表盘预览
-@property(nonatomic,assign)BOOL spDialPreview;
-
-
--(instancetype)init:(NSData *)data;
-
-@end
-
-//MARK: - 系统功能
-/// 系统功能
-@interface JLDeviceSystemFuncModel : NSObject
-
-/// 支持屏幕设置
-@property(nonatomic,assign)BOOL spScreenSetting;
-/// 支持震动强度
-@property(nonatomic,assign)BOOL spVibrationIntensity;
-/// 支持勿扰模式
-@property(nonatomic,assign)BOOL spDoNotDisturb;
-/// 支持锻炼设置
-@property(nonatomic,assign)BOOL spExerciseSettings;
-/// 支持断开提醒
-@property(nonatomic,assign)BOOL spDisconnectReminder;
-
--(instancetype)init:(NSData *)data;
-
-@end
-
-//MARK: - 功能选项
-/// 功能选项
-@interface JLDeviceExportFuncModel : NSObject
-/// 支持常用联系人
-@property(nonatomic,assign)BOOL spTopContacts;
-/// 支持音乐文件浏览
-@property(nonatomic,assign)BOOL spMusicFileBrows;
-/// 音乐文件删除、传输
-@property(nonatomic,assign)BOOL spMusicFileOp;
-/// 支持闹钟设置
-@property(nonatomic,assign)BOOL spAlarmSettings;
-/// 支持信息同步
-@property(nonatomic,assign)BOOL spSyncInfo;
-/// 支持天气同步
-@property(nonatomic,assign)BOOL spSyncWeather;
-/// 支持找手机/设备
-@property(nonatomic,assign)BOOL spFindPhoneOrDevice;
-/// Ai 云功能
-@property(nonatomic,assign)BOOL spAiCloud;
-/// Ai 表盘
-@property(nonatomic,assign)BOOL spAiDial;
-/// 平台接口信息获取
-@property(nonatomic,assign)BOOL spOpenInfo;
-/// 支持4G模块
-@property(nonatomic,assign)BOOL sp4GModel;
-
-/// 支持表盘信息拓展
-@property(nonatomic,assign)BOOL spDialInfoExtend;
-
--(instancetype)init:(NSData *)data;
-
-@end
-
-//MARK: - 运动健康
-
-/// 手表综合功能支持
-@interface JLHealthFuncComprehensive : NSObject
-
-/// 支持健康监控
-@property(nonatomic,assign)BOOL spHealthMonitor;
-/// 支持个人信息
-@property(nonatomic,assign)BOOL spPersonInfo;
-/// 支持睡眠检测
-@property(nonatomic,assign)BOOL spSleepMonitor;
-/// 支持运动心率提醒
-@property(nonatomic,assign)BOOL spSportHeartRateRemind;
-/// 支持久坐提醒
-@property(nonatomic,assign)BOOL spSedentaryRemind;
-/// 支持压力自动检测
-@property(nonatomic,assign)BOOL spStressDetection;
-/// 支持跌倒检测
-@property(nonatomic,assign)BOOL spFallDetection;
-/// 支持传感器设置
-@property(nonatomic,assign)BOOL spSensorSetup;
-
--(instancetype)init:(NSData *)data;
-
-@end
-
-/// 手表运动模式支持功能
-@interface JLHealthFuncSportModel : NSObject
-/// 支持运动记录
-@property(nonatomic,assign)BOOL spRecord;
-/// 支持运动统计
-@property(nonatomic,assign)BOOL spStatistics;
-/// 支持室外运动
-@property(nonatomic,assign)BOOL spOutdoor;
-/// 支持室内运动
-@property(nonatomic,assign)BOOL spIndoor;
-
--(instancetype)init:(NSData *)data;
-@end
-
-/// 手表计步功能支持功能
-@interface JLHealthFuncGSensorModel : NSObject
-/// 是否存在该传感器
-@property(nonatomic,assign)BOOL spExist;
-/// 支持运动步数
-@property(nonatomic,assign)BOOL spStep;
-
--(instancetype)init:(NSData *)data;
-
-@end
-
-
-/// 手表心率功能支持功能
-@interface JLHealthFuncHeartRateModel : NSObject
-/// 是否存在该传感器
-@property(nonatomic,assign)BOOL spExist;
-/// 支持连续测试
-@property(nonatomic,assign)BOOL spSerialTest;
-
--(instancetype)init:(NSData *)data;
-
-@end
-
-/// 手表血氧功能支持功能
-@interface JLHealthFuncBloodOxygenModel : NSObject
-/// 是否存在该传感器
-@property(nonatomic,assign)BOOL spExist;
-
--(instancetype)init:(NSData *)data;
-
-@end
-
-
-/// 手表海拔功能支持功能
-@interface JLHealthFuncAltitudeModel : NSObject
-/// 是否存在该传感器
-@property(nonatomic,assign)BOOL spExist;
-
--(instancetype)init:(NSData *)data;
-
-@end
-
-/// 手表GPS功能支持功能
-@interface JLHealthFuncGPSModel : NSObject
-/// 是否存在该传感器
-@property(nonatomic,assign)BOOL spExist;
-
--(instancetype)init:(NSData *)data;
-
-@end
-
-
-
-@interface JLDeviceHealthFuncModel : NSObject
-
-/// 手表综合功能支持
-@property(nonatomic,strong)JLHealthFuncComprehensive *spComprehensive;
-/// 手表运动模式支持功能
-@property(nonatomic,strong)JLHealthFuncSportModel *spSportModel;
-/// 手表计步功能支持功能
-@property(nonatomic,strong)JLHealthFuncGSensorModel *spGSensor;
-/// 手表心率功能支持功能
-@property(nonatomic,strong)JLHealthFuncHeartRateModel *spHeartRate;
-/// 手表血氧功能支持功能
-@property(nonatomic,strong)JLHealthFuncBloodOxygenModel *spBloodOxygen;
-/// 手表海拔功能支持功能
-@property(nonatomic,strong)JLHealthFuncAltitudeModel *spAltitude;
-/// 手表GPS功能支持功能
-@property(nonatomic,strong)JLHealthFuncGPSModel *spGPS;
-
--(instancetype)init:(NSData *)data;
-
-@end
-
-//MARK: - 设备配置信息
-
-/// 设备配置信息
-@interface JLDeviceConfigBasic:NSObject
-/// 产品标志类型
-/// 0 - 手表
-/// 1 - TWS耳机
-@property(nonatomic,assign)int deviceType;
-/// 版本
-@property(nonatomic,assign)int version;
-
-/// 数据
-@property(nonatomic,copy)NSData *basicData;
-
-/// 功能配置所属设备的UUID
-@property(nonatomic,strong)NSString  * _Nullable mbleIdentifyStr;
-
--(instancetype)init:(NSData *)data;
-
-@end
-
-//MARK: - 手表配置信息数据结构解析
-
-/// 手表配置信息数据结构
-@interface JLDeviceConfigModel:JLDeviceConfigBasic
-/// - 必须功能
-@property(nonatomic,strong)JLDeviceBasicFuncModel *basicFunc;
-/// - 系统功能
-@property(nonatomic,strong)JLDeviceSystemFuncModel *systemFunc;
-/// - 功能选项
-@property(nonatomic,strong)JLDeviceExportFuncModel * exportFunc;
-/// - 运动健康
-@property(nonatomic,strong)JLDeviceHealthFuncModel *healthFunc;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDeviceConfigTws.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDeviceConfigTws.h
deleted file mode 100644 (file)
index 5d11b79..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-//
-//  JLDeviceConfigTws.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2024/1/23.
-//  Copyright © 2024 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JLDeviceConfigFuncModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLDeviceConfigTws : JLDeviceConfigBasic
-
-/// 是否支持替换提示音
-@property(nonatomic, assign)BOOL isSupportReplaceTipsVoice;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDhaFitting.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDhaFitting.h
deleted file mode 100644 (file)
index 61570c0..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-//
-//  JLDhaFitting.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2022/6/28.
-//  Copyright © 2022 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-
-
-@class JL_ManagerM;
-
-/// 左右声道类型
-typedef NS_ENUM(UInt8, DhaChannel) {
-    ///左声道
-    DhaChannel_left = 0x00,
-    ///右声道
-    DhaChannel_right = 0x01
-};
-
-/// 左右耳验配类型
-typedef NS_ENUM(UInt8, DhaFittingType) {
-    ///验配左耳
-    DhaFittingType_left = 0x00,
-    ///验配右耳
-    DhaFittingType_right = 0x00,
-    ///验配左右耳
-    DhaFittingType_All = 0x00,
-};
-
-
-/// 辅听耳机的信息
-@interface DhaFittingInfo : NSObject
-/// /*版本号:DHA_FITTING_VERSION*/
-@property(nonatomic,assign)uint8_t version;
-/// /*通道数:DHA_FITTING_CHANNEL_MAX*/
-@property(nonatomic,assign)uint8_t ch_num;
-/// /*通道频率组:获取通道对应的freq*/
-@property(nonatomic,strong)NSArray *ch_freq;
-
-- (instancetype)initWithData:(NSData *)basicData;
-
-@end
-
-@interface DhaFittingSwitch : NSObject
-
-@property(nonatomic,assign)BOOL leftOn;
-
-@property(nonatomic,assign)BOOL rightOn;
-
-@end
-
-
-/// 辅听验配对象
-@interface DhaFittingData : NSObject<NSCopying>
-/// 左右声道
-@property(nonatomic,assign)DhaChannel channel;
-
-/// 左开关
-@property(nonatomic,assign)BOOL leftOn;
-/// 右开关
-@property(nonatomic,assign)BOOL rightOn;
-
-/// 保留位
-@property(nonatomic,assign)uint8_t reserved;
-/// 通道频率
-@property(nonatomic,assign)uint16_t freq;
-/// 通道增益
-@property(nonatomic,assign)float gain;
-
--(NSData*)beData;
-
-@end
-
-
-typedef void(^DhaInfoBlock)(DhaFittingInfo *info,NSArray <NSNumber *>*gains);
-
-
-@interface JLDhaFitting : NSObject
-
-/// 获取设备当前辅听的基础信息
-/// @param result 辅听耳机信息
-/// @param manager manager
-+(void)auxiGetInfo:(DhaInfoBlock)result Manager:(JL_ManagerM*)manager;
-
-/// 进行辅听验配
-/// @param dhaFit 辅听设置对象
-/// @param manager manager
-/// @param result 设备工作状态回调
--(void)auxiCheckByStep:(DhaFittingData *)dhaFit Manager:(JL_ManagerM*)manager Result:(JL_CMD_RESPOND __nullable)result;
-
-/// 退出辅听验配
-/// @param manager 命令对象
-/// @param result 设备工作状态回调
--(void)auxiCloseManager:(JL_ManagerM*)manager Result:(JL_CMD_RESPOND __nullable)result;
-
-/// 保存验配设置
-/// @param gains 验配的增益数组
-/// @param manager manager
-/// @param type 左右耳类型
-/// @param result 回调结果
--(void)auxiSaveGainsList:(NSArray <DhaFittingData *>*) gains Manager:(JL_ManagerM*)manager  Type:(DhaFittingType)type Result:(JL_CMD_RESPOND __nullable)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDialInfoExtentManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDialInfoExtentManager.h
deleted file mode 100644 (file)
index c434e30..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-//
-//  JLDialInfoExtentManager.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2024/2/20.
-//  Copyright © 2024 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JL_TypeEnum.h"
-
-@class JLDialInfoExtentedModel;
-@class JL_ManagerM;
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 表盘信息扩展内容回调
-/// Dial information extended content block
-typedef void(^JLDialInfoExtentedBlock)(JL_CMDStatus status,JLDialInfoExtentedModel *_Nullable op);
-
-/// 请求设备表盘信息扩展内容类
-/// Request device dial information extended content class
-@interface JLDialInfoExtentManager : NSObject
-
-/// 单例
-/// Single
-+(instancetype)share;
-
-/// 开始请求表盘信息扩展内容
-/// Start request dial information extended content
-/// - Parameters:
-///   - manager: 设备 - Device manager
-///   - block: 状态回调 - Dial information extended content block
--(void)getDialInfoExtented:(JL_ManagerM *)manager result:(JLDialInfoExtentedBlock)block;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDialInfoExtentedModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDialInfoExtentedModel.h
deleted file mode 100644 (file)
index 9b516dc..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-//
-//  JLDialInfoExtentedModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2024/2/20.
-//  Copyright © 2024 www.zh-jieli.com. All rights reserved.
-//
-
-#import <UIKit/UIKit.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class JL_ManagerM;
-
-/// 设备表盘拓展信息
-/// device dial information extended model
-@interface JLDialInfoExtentedModel : NSObject
-
-
-/// 屏幕形状
-/// shape of screen
-/// 默认形状 0x01
-/// default 0x01 circular
-/// 0x01 - 圆形 circular
-/// 0x02 - 矩形 rectangle
-/// 0x03 - 圆角矩形 rounded rectangle
-@property(nonatomic, assign) uint8_t shape;
-
-
-/// 圆形半径
-/// radius of circle
-@property(nonatomic, assign) CGFloat radius;
-
-/// 背景颜色
-/// background color
-/// default is clean color
-@property(nonatomic, strong) UIColor *backgroundColor;
-
-/// 屏幕尺寸
-/// 此项默认值为(240 * 240)
-/// default is (240 * 240)
-/// device screen sice
-@property(nonatomic, assign) CGSize size;
-
-
-/// 初始化
-/// initialize
-/// - Parameter data: 数据 data
-/// - Returns: 实例
--(instancetype)initWithData:(NSData *)data Manager:(JL_ManagerM*)manager;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDisconnectRemindModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLDisconnectRemindModel.h
deleted file mode 100644 (file)
index e799fb0..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-//
-//  JLDisconnectRemindModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/12.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 手表蓝牙断开提醒设置
-@interface JLDisconnectRemindModel : JLwSettingModel
-//开关
-@property(nonatomic,assign)BOOL status;
-/// 提醒模式
-@property(nonatomic,assign)WatchRemindType rType;
-
--(instancetype)initWithData:(NSData *)data;
-
-- (instancetype)initWithModel:(WatchRemindType)type Status:(BOOL)status;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLEmergencyContactModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLEmergencyContactModel.h
deleted file mode 100644 (file)
index ca5e0e6..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-//
-//  JLEmergencyContactModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2022/2/17.
-//  Copyright © 2022 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 紧急联系人设置
-@interface JLEmergencyContactModel : JLwSettingModel
-
-/// 联系电话
-@property(nonatomic,strong)NSString *phoneNumber;
-
--(instancetype)initWithData:(NSData *)data;
-
--(instancetype)initWithPhoneNumber:(NSString *)phoneNumber;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLExerciseHeartRateRemindModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLExerciseHeartRateRemindModel.h
deleted file mode 100644 (file)
index f88b192..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-//
-//  JLExerciseHeartRateRemindModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/12.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-#import "JLWatchEnum.h"
-NS_ASSUME_NONNULL_BEGIN
-
-/// 运动心率提醒设置
-@interface JLExerciseHeartRateRemindModel : JLwSettingModel
-///开关
-@property(nonatomic,assign)BOOL status;
-/// 上限心率0~255
-@property(nonatomic,assign)uint8_t maxRate;
-
-/// 心率区间划分方式:
-///  0x00:最大心率百分比
-///  0x01:存储心率百分比s
-@property(nonatomic,assign)WatchHeartRateType way;
-
--(instancetype)initWithWay:(WatchHeartRateType)way maxRate:(uint8_t)max switchStatus:(BOOL)status;
-
--(instancetype)initWithData:(NSData *)data;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLFallDetectionModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLFallDetectionModel.h
deleted file mode 100644 (file)
index fc9367f..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-//
-//  JLFallDetectionModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/12.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 跌到监测设置
-@interface JLFallDetectionModel : JLwSettingModel
-///开关
-@property(nonatomic,assign)BOOL status;
-/// 提醒模式
-@property(nonatomic,assign)WatchRemindType rType;
-/// 电话号码
-@property(nonatomic,strong,readonly)NSString *phoneNumber;
-
--(instancetype)initWithData:(NSData *)data;
-
-/// 构建一个跌倒监测的设置对象
-/// @param type 提醒类型
-/// @param status 开关
-/// @param pn 电话号码
-- (instancetype)initWithModel:(WatchRemindType)type Status:(BOOL)status phoneNumber:(NSString * _Nullable)pn;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLHttpHelper.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLHttpHelper.h
deleted file mode 100644 (file)
index 7654837..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-//
-//  HttpHelper.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2022/7/2.
-//  Copyright © 2022 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-typedef void(^JLHttpDataCbk)(NSData * _Nullable data);
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLHttpHelper : NSObject
-
-+(instancetype)share;
-
--(void)dataTask:(NSURL *)url Result:(JLHttpDataCbk)result;
-
--(NSData *)dataTaskSync:(NSURL *)url;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelCardInfo.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelCardInfo.h
deleted file mode 100644 (file)
index 3f4e707..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-//
-//  JLModelCardInfo.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/11/30.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLCardInfo : NSObject
-
-/// 存储类型
-/// 0x00 USB
-/// 0x01 SD0
-/// 0x02 SD1
-/// 0x03 flash
-/// 0x04 lineIn
-/// 0x05 flash2
-/// 0x06 flash3
-@property(nonatomic,assign)uint8_t type;
-
-/// 是否在线
-@property(nonatomic,assign)BOOL isOnline;
-
-/// 文件句柄
-@property(nonatomic,copy)NSData *handle;
-
-@end
-
-/// 存储卡信息
-@interface JLModelCardInfo:NSObject
-
-/// 版本信息
-@property(nonatomic,assign)uint8_t version;
-
-/// 存储卡在线数组
-@property(nonatomic,strong,readonly)NSArray *cardArray;
-
-/// USB 在线状态
-@property (nonatomic, assign) BOOL usbOnline;
-
-/// SD0 在线状态
-@property (nonatomic, assign) BOOL sd0Online;
-
-/// SD1 在线状态
-@property (nonatomic, assign) BOOL sd1Online;
-
-/// lineIn 在线状态
-@property (nonatomic, assign) BOOL lineInOnline;
-
-/// flash 在线状态
-@property (nonatomic, assign) BOOL flashOnline;
-
-/// flash 2 在线状态
-@property (nonatomic, assign) BOOL flash2Online;
-
-/// flash 3 在线状态
-@property (nonatomic, assign) BOOL flash3Online;
-
-/// 是否处于设备复用状态
-@property (nonatomic, assign) BOOL isComplex;
-
-/// USB 句柄
-@property (nonatomic, copy)NSData *usbHandle;
-
-/// SD0 句柄
-@property (nonatomic, copy)NSData *sd0Handle;
-
-/// SD1 句柄
-@property (nonatomic, copy)NSData *sd1Handle;
-
-/// flash 句柄
-@property (nonatomic, copy)NSData *flashHandle;
-
-/// flash2 句柄
-@property (nonatomic, copy)NSData *flash2Handle;
-
-/// flash3 句柄
-@property (nonatomic, copy)NSData *flash3Handle;
-
-/// 卡在线数组信息
-@property (nonatomic, strong)NSArray <JLCardInfo *> *cardInfos;
-
--(instancetype)initData:(NSData *)data;
-
-/// 是否具备存储卡在线
--(BOOL)hasStorageCard;
-
-@end
-
-
-
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelDevFunc.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelDevFunc.h
deleted file mode 100644 (file)
index 91e59c9..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-//
-//  JLModelDevFunc.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/11/29.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLModelDevFunc : NSObject
-
-/// 当前模式
-/// 0x16代表低功耗模式)
-@property (nonatomic, assign) uint8_t currentModel;
-
-/// 设备是否支持蓝牙(EDR)
-@property (nonatomic, assign) BOOL isSupportEDR;
-
-/// 设备是否支持音乐模式
-@property (nonatomic, assign) BOOL isSupportDevMusic;
-
-/// 设备是否支持 RTC
-@property (nonatomic, assign) BOOL isSupportDevRTC;
-
-/// 设备是否支持 LineIn
-@property (nonatomic, assign) BOOL isSupportDevLineIn;
-
-/// 设备是否支持 FM
-@property (nonatomic, assign) BOOL isSupportDevFm;
-
-/// 设备是否支持氛围灯
-@property (nonatomic, assign) BOOL isSupportDevLight;
-
-/// 设备是否支持 FMTX
-@property (nonatomic, assign) BOOL isSupportDevFMTX;
-
-/// 设备是否支持 EQ
-@property (nonatomic, assign) BOOL isSupportDevEQ;
-
-/// 是否显示不在线的usb 、sd、linein功能
-@property (nonatomic, assign) BOOL isShowOfflineFunc;
-
-/// 设备是否持有 USB
-@property (nonatomic, assign) BOOL isSupportUSB;
-
-/// 设备是否持有 SD0
-@property (nonatomic, assign) BOOL isSupportSD0;
-
-/// 设备是否持有 SD1
-@property (nonatomic, assign) BOOL isSupportSD1;
-
-/// 设备是否支持网络电台
-@property (nonatomic, assign) BOOL isSupportNetRadio;
-
--(instancetype)initWithData:(NSData *)data;
-
-@end
-
-
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelNoiseDetection.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelNoiseDetection.h
deleted file mode 100644 (file)
index 5b61f67..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-//
-//  JLModelNoiseDetection.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/9/13.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <JL_BLEKit/JL_BLEKit.h>
-
-NS_ASSUME_NONNULL_BEGIN
-@class JLModelNoiseDetection;
-
-@protocol JLModelNoiseDetectionDelegate <NSObject>
-
--(void)noiseDetectionGetInfo:(JLModelNoiseDetection *)model;
-
-@end
-
-typedef void(^JLModelNoiseDetectionBlock)(JLModelNoiseDetection *model);
-
-/// TWS风噪检测
-@interface JLModelNoiseDetection : JLCmdBasic
-
-/// 版本号
-@property(nonatomic,assign)uint8_t version;
-
-/// 风噪检测:
-/// 0x00:关闭
-/// 0x01:开启
-@property(nonatomic,assign)uint8_t status;
-
-@property(nonatomic,weak)id<JLModelNoiseDetectionDelegate> delegate;
-
-/// 获取设备风噪检测
-/// - Parameter manager: 设备对象
--(void)noiseDetectionStatusGet:(JL_ManagerM *)manager Result:(JLModelNoiseDetectionBlock)block;
-
-/// 设置设备风噪检测
-/// - Parameters:
-///   - manager: 设备对象
-///   - status: 开关
-///   - result:回调
--(void)noiseDetectionStatusSet:(JL_ManagerM *)manager Status:(uint8_t)status Result:(JL_CMD_RESPOND)result;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelSceneNoiseReduction.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelSceneNoiseReduction.h
deleted file mode 100644 (file)
index 80963a2..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-//
-//  JLModelSceneNoiseReduction.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/9/13.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <JL_BLEKit/JLCmdBasic.h>
-
-NS_ASSUME_NONNULL_BEGIN
-@class JLModelSceneNoiseReduction;
-
-@protocol JLModelSceneNoiseReductionDelegate <NSObject>
-
--(void)sceneNoiseReductionGetInfo:(JLModelSceneNoiseReduction *)model;
-
-@end
-
-typedef void(^JLSceneNoiseReductionBlock)(JLModelSceneNoiseReduction *model);
-
-/// TWS场景降噪
-@interface JLModelSceneNoiseReduction : JLCmdBasic
-
-/// 版本号
-@property(nonatomic,assign)uint8_t version;
-
-/// 场景降噪模式:
-/// 0x00:智能
-/// 0x01:轻度
-/// 0x02:均衡
-/// 0x03:深度
-@property(nonatomic,assign)uint8_t scene;
-
-@property(nonatomic,weak)id<JLModelSceneNoiseReductionDelegate> delegate;
-
-/// 获取设备场景降噪
-/// - Parameter manager: 设备对象
--(void)sceneNoiseStatusGet:(JL_ManagerM *)manager Result:(JLSceneNoiseReductionBlock)block;
-
-/// 设置设备场景降噪
-/// - Parameters:
-///   - manager: 设备对象
-///   - scene: 场景降噪
-///   - result:回调
--(void)sceneNoiseStatusSet:(JL_ManagerM *)manager Scene:(uint8_t)scene Result:(JL_CMD_RESPOND)result;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelSmartPickFree.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelSmartPickFree.h
deleted file mode 100644 (file)
index cc0c0c2..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-//
-//  JLModelSmartPickFree.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/9/12.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class JL_ManagerM;
-@class JLModelSmartPickFree;
-
-@protocol JLModelSmartPickFreeDelegate <NSObject>
-
--(void)smartPickFreeGetInfo:(JLModelSmartPickFree *)model;
-
-@end
-
-/// 智能免摘的耳机管理类
-@interface JLModelSmartPickFree : NSObject
-
-/// 版本号
-@property(nonatomic,assign)uint8_t version;
-
-/// 功能类型
-/// 0x00:仅设置开关
-/// 0x01:仅设置灵敏度
-/// 0x02:仅设置启动后关闭时间
-/// 0xff:仅获取全部参数
-@property(nonatomic,assign)uint8_t funcType;
-
-/// 功能开关
-/// 当功能类型 funcType 为 0x00 时此属性需要对应设置
-/// 当功能类型 funcType 为 0xFF 时此属性为设备端功能开关状态
-@property(nonatomic,assign)BOOL funcStatus;
-
-/// 灵敏度
-/// 当功能类型 funcType 为 0x01 时此属性需要对应设置
-/// 当功能类型 funcType 为 0xFF 时此属性为设备端灵敏度
-/// 0x00:高灵敏度
-/// 0x01:低灵敏度
-@property(nonatomic,assign)uint8_t senivitiy;
-
-///启动后关闭时间
-///当功能类型 funcType 为 0x02 时此属性需要对应设置的时间
-///当功能类型 funcType 为 0xFF 时此属性为设备端启动后关闭时间
-///0x00:不自动关闭;
-///0x01:短(5s);
-///0x02:标准(15s);
-///0x03:长(30s);
-@property(nonatomic,assign)uint8_t autoInterval;
-
-
-@property(nonatomic,weak)id<JLModelSmartPickFreeDelegate> delegate;
-
-/// 设置智能免摘功能开关
-/// - Parameters:
-///   - manager: 设备对象
-///   - status: 开关
-///   - result: 结果回调
--(void)smartPickFreeSetOn:(JL_ManagerM *)manager st:(BOOL)status Result:(JL_CMD_RESPOND)result;
-
-/// 设置智能免摘灵敏度
-/// - Parameters:
-///   - manager: 设备对象
-///   - senivitiy: 灵敏度
-///      0x00:高灵敏度
-///      0x01:低灵敏度
-///   - result: 结果回调
--(void)smartPickFreeSetSenivitiy:(JL_ManagerM *)manager Senivitiy:(uint8_t)senivitiy Result:(JL_CMD_RESPOND)result;
-
-/// 设置智能免摘启动后关闭时间
-/// - Parameters:
-///   - manager: 设备对象
-///   - interval: 启动后关闭时间
-///     0x01:短(5s);
-///     0x02:标准(15s);
-///     0x03:长(30s);
-///   - result: 结果回调
--(void)smartPickFreeSetAutoInterval:(JL_ManagerM *)manager Interval:(uint8_t)interval Result:(JL_CMD_RESPOND)result;
-
-
-/// 查询设备状态
-/// - Parameter manager: 设备对象
--(void)smartPickFreeGet:(JL_ManagerM *)manager;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelVocalBoost.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModelVocalBoost.h
deleted file mode 100644 (file)
index 0a64173..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-//
-//  JLModelVocalBoost.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/9/13.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <JL_BLEKit/JL_BLEKit.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-
-@class JLModelVocalBoost;
-
-@protocol JLModelVocalBoostDelegate <NSObject>
-
--(void)vocalBoostGetInfo:(JLModelVocalBoost *)model;
-
-@end
-
-typedef void(^JLModelVocalBoostBlock)(JLModelVocalBoost *model);
-
-
-/// TWS人声增强
-@interface JLModelVocalBoost : JLCmdBasic
-
-/// 版本号
-@property(nonatomic,assign)uint8_t version;
-
-/// 人声增强:
-/// 0x00: 关闭人声增强模式;
-/// 0x01: 开启人声增强模式
-@property(nonatomic,assign)uint8_t status;
-
-@property(nonatomic,weak)id<JLModelVocalBoostDelegate> delegate;
-
-/// 获取设备人声增强
-/// - Parameter manager: 设备对象
--(void)vocalBoostStatusGet:(JL_ManagerM *)manager Result:(JLModelVocalBoostBlock)block;
-
-/// 设置设备人声增强
-/// - Parameters:
-///   - manager: 设备对象
-///   - status: 开关
-///     0x00: 关闭人声增强模式;
-///     0x01: 开启人声增强模式
-///   - result:回调
--(void)vocalBoostStatusSet:(JL_ManagerM *)manager Status:(uint8_t)status Result:(JL_CMD_RESPOND)result;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_ANC.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_ANC.h
deleted file mode 100644 (file)
index 7b586e9..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-//
-//  JLModel_ANC.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8,JL_AncMode) {
-    JL_AncMode_Normal               = 0,    //普通模式
-    JL_AncMode_NoiseReduction       = 1,    //降噪模式
-    JL_AncMode_Transparent          = 2,    //通透模式
-};
-
-@interface JLModel_ANC : NSObject
-@property(assign,nonatomic)JL_AncMode       mAncMode;               //耳机降噪模式
-@property(assign,nonatomic) uint16_t        mAncMax_L;              //左耳最大增益
-@property(assign,nonatomic) uint16_t        mAncCurrent_L;          //左耳当前增益
-@property(assign,nonatomic) uint16_t        mAncMax_R;              //右耳最大增益
-@property(assign,nonatomic) uint16_t        mAncCurrent_R;          //右耳当前增益
--(NSData*)dataModel;
-@end
-
-
-
-/// 手机名/经典蓝牙地址信息
-@interface JLTWSAddrNameInfo : NSObject
-
-/// 是否被绑定
-@property(nonatomic,assign)uint8_t isBind;
-
-/// 手机蓝牙地址
-@property(nonatomic,strong)NSData *phoneEdrAddr;
-
-/// 手机名称
-@property(nonatomic,strong)NSString *phoneName;
-
-/// 初始化数据成对象
-/// - Parameter data: 数据内容
-+(NSArray<JLTWSAddrNameInfo *>*)dataBeObjc:(NSData *)data;
-
-@end
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_AlarmSetting.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_AlarmSetting.h
deleted file mode 100644 (file)
index a4b6f85..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-//
-//  JLModel_AlarmSetting.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLModel_AlarmSetting : NSObject
-@property(assign,nonatomic)uint8_t index;       //闹钟索引
-@property(assign,nonatomic)uint8_t isCount;     //是否可以设置【闹铃次数】
-@property(assign,nonatomic)uint8_t count;       //闹铃次数
-@property(assign,nonatomic)uint8_t isInterval;  //是否可以设置【时间间隔】
-@property(assign,nonatomic)uint8_t interval;    //时间间隔
-@property(assign,nonatomic)uint8_t isTime;      //是否可以设置【时间长度】
-@property(assign,nonatomic)uint8_t time;        //时间长度
--(NSData*)dataModel;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_BT.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_BT.h
deleted file mode 100644 (file)
index 86b4a40..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-//
-//  JLModel_BT.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLModel_BT : NSObject
-@property(assign,nonatomic)uint32_t         mBtType;
-@property(strong,nonatomic)NSData *__nullable mBtAddress;
-@property(assign,nonatomic)uint8_t          mBtRssi;
-@property(strong,nonatomic)NSString *__nullable mBtName;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Device.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Device.h
deleted file mode 100644 (file)
index 316620f..0000000
+++ /dev/null
@@ -1,626 +0,0 @@
-//
-//  JLModel_Device.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Modify by EzioChan on 2023/03/16
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JLModel_Flash.h>
-#import <JL_BLEKit/JLModel_ANC.h>
-#import <JL_BLEKit/JLModel_RTC.h>
-#import <JL_BLEKit/JLModel_FM.h>
-#import <JL_BLEKit/JLModel_File.h>
-#import <JL_BLEKit/JLModel_EQ.h>
-#import <JL_BLEKit/JLDhaFitting.h>
-#import <JL_OTALib/JL_OTALib.h>
-#import <JL_BLEKit/JLModelCardInfo.h>
-#import <JL_BLEKit/JLModelDevFunc.h>
-
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_DevicePlatform) {
-    JL_DevicePlatformTuring         = 0,    //适用于【图灵】
-    JL_DevicePlatformDeepbrain      = 1,    //适用于【Deepbrain】
-    JL_DevicePlatformUnknown,
-};
-typedef NS_ENUM(UInt8, JL_SDKType) {
-    JL_SDKTypeAI                    = 0x0,    //AI SDK  AC692x
-    JL_SDKTypeST                    = 0x1,    //标准 SDK AC692x
-    JL_SDKType693xTWS               = 0x2,    //TWS
-    JL_SDKType695xSDK               = 0x3,    //
-    JL_SDKType697xTWS               = 0x4,    //TWS
-    JL_SDKType696xSB                = 0x5,    //696x_soundbox
-    JL_SDKType696xTWS               = 0x6,    //TWS
-    JL_SDKType695xSC                = 0x7,    //695x_sound_card
-    JL_SDKType695xWATCH             = 0x8,    //BR23 Watch
-    JL_SDKType701xWATCH             = 0x9,    //BR28 Watch
-    JL_SDKTypeManifestEarphone      = 0x0A,   //ManifestEarphone
-    JL_SDKTypeManifestSoundbox      = 0x0B,   //ManifestSoundbox
-    JL_SDKTypeChargingCase          = 0x0C,   //ChargingCase 彩屏充电仓
-    JL_SDKType707nWATCH             = 0x0D,   //707N Watch
-    JL_SDKTypeUnknown,
-};
-typedef NS_ENUM(UInt8, JL_FunctionCode) {
-    JL_FunctionCodeBT               = 0,    //BT
-    JL_FunctionCodeMUSIC            = 1,    //音乐
-    JL_FunctionCodeRTC              = 2,    //闹钟
-    JL_FunctionCodeLINEIN           = 3,    //LineIn
-    JL_FunctionCodeFM               = 4,    //FM
-    JL_FunctionCodeLIGHT            = 5,    //LIGHT
-    JL_FunctionCodeFMTX             = 6,    //发射频点
-    JL_FunctionCodeCOMMON           = 0xff, //通用
-};
-
-typedef NS_ENUM(UInt8, JL_FCmdMusic) {
-    JL_FCmdMusicPP                  = 0x01, //PP按钮
-    JL_FCmdMusicPREV                = 0x02, //上一曲
-    JL_FCmdMusicNEXT                = 0x03, //下一曲
-    JL_FCmdMusicMODE                = 0x04, //切换播放模式
-    JL_FCmdMusicEQ                  = 0x05, //EQ
-    JL_FCmdMusicFastBack            = 0x06, //快退
-    JL_FCmdMusicFastPlay            = 0x07, //快进
-};
-
-typedef NS_ENUM(UInt8, JL_OtaBleAllowConnect) {
-    JL_OtaBleAllowConnectYES        = 0,    //OTA 允许BLE连接
-    JL_OtaBleAllowConnectNO         = 1,    //OTA 禁止BLE连接
-    JL_OtaBleAllowConnectUnknow     = 2,    //未定义
-};
-typedef NS_ENUM(UInt8, JL_BLEOnly) {        //是否仅仅支持BLE
-    JL_BLEOnlyNO                    = 0,    //否
-    JL_BLEOnlyYES                   = 1,    //是
-};
-typedef NS_ENUM(UInt8, JL_FasheEnable) {    //是否发射模式
-    JL_FasheEnableNO                = 0,    //否
-    JL_FasheEnableYES               = 1,    //是
-};
-typedef NS_ENUM(UInt8, JL_FasheType) {      //当前是否为发射模式
-    JL_FasheTypeNO                  = 0,    //否
-    JL_FasheTypeYES                 = 1,    //是
-};
-typedef NS_ENUM(UInt8, JL_MD5Type) {        //是否支持MD5校验
-    JL_MD5TypeNO                    = 0,    //否
-    JL_MD5TypeYES                   = 1,    //是
-};
-typedef NS_ENUM(UInt8, JL_GameType) {       //是否为游戏模式
-    JL_GameTypeNO                   = 0,    //否
-    JL_GameTypeYES                  = 1,    //是
-};
-typedef NS_ENUM(UInt8, JL_SearchType) {     //是否支持查找设备
-    JL_SearchTypeNO                 = 0,    //否
-    JL_SearchTypeYES                = 1,    //是
-};
-typedef NS_ENUM(UInt8, JL_KaraokeType) {    //是否支持卡拉OK
-    JL_KaraokeTypeNO                = 0,    //否
-    JL_KaraokeTypeYES               = 1,    //是
-};
-typedef NS_ENUM(UInt8,JL_KaraokeEQType){    //是否禁止app调节设备音效
-    JL_KaraokeEQTypeNO              = 0,    //不禁止
-    JL_KaraokeEQTypeYES             = 1,    //禁止
-};
-typedef NS_ENUM(UInt8,JL_FlashType){        //是否支持外挂Flash
-    JL_FlashTypeNO                  = 0,    //不支持
-    JL_FlashTypeYES                 = 1,    //支持
-};
-typedef NS_ENUM(UInt8,JL_AncType){          //是否支持ANC
-    JL_AncTypeNO                    = 0,    //不支持
-    JL_AncTypeYES                   = 1,    //支持
-};
-typedef NS_ENUM(UInt8, JL_AudioFileType) {  //是否支持音频文件传输
-    JL_AudioFileTypeNO              = 0,    //否
-    JL_AudioFileTypeYES             = 1,    //是
-};
-typedef NS_ENUM(UInt8, JL_FileSubcontractTransferCrc16Type){//文件分包传输是否支持crc16方式
-    JL_FileSubcontractTransferCrc16TypeNO      = 0,    //不支持
-    JL_FileSubcontractTransferCrc16TypeYES     = 1,    //支持
-};
-typedef NS_ENUM(UInt8, JL_ReadFileInNewWayType){       //是否以新的方式读取固件文件
-    JL_ReadFileInNewWayTypeNO                  = 0,    //不支持
-    JL_ReadFileInNewWayTypeYES                 = 1,    //支持
-};
-
-typedef NS_ENUM(UInt8, JL_SmallFileWayType){           //是否支持小文件传输
-    JL_SmallFileWayTypeNO                      = 0,    //不支持
-    JL_SmallFileWayTypeYES                     = 1,    //支持
-};
-
-typedef NS_ENUM(UInt8,JL_CALLType) {
-    JL_CALLType_OFF                 = 0,    //空闲
-    JL_CALLType_ON                  = 1,    //通话中
-};
-
-typedef NS_ENUM(UInt8, JL_LightState) {
-    JL_LightStateClose          = 0x00, //关闭
-    JL_LightStateOpen           = 0x01, //开启
-    JL_LightStateSetting        = 0x02, //设置模式
-};
-typedef NS_ENUM(UInt8, JL_LightMode) {
-    JL_LightModeNormal          = 0x00, //彩色模式
-    JL_LightModeFlash           = 0x01, //闪烁模式
-    JL_LightModeScene           = 0x02, //情景模式
-};
-typedef NS_ENUM(UInt8, JL_LightFlashModeIndex) {
-    JL_LightModeIndexColorfulFlash          = 0x00, //七彩闪烁
-    JL_LightModeIndexRedFlash               = 0x01, //红色闪烁
-    JL_LightModeIndexOrangeFlash            = 0x02, //橙色闪烁
-    JL_LightModeIndexYeallowFlash           = 0x03, //黄色闪烁
-    JL_LightModeIndexGreenFlash             = 0x04, //绿色闪烁
-    JL_LightModeIndexCyanFlash              = 0x05, //青色闪烁
-    JL_LightModeIndexBlueFlash              = 0x06, //蓝色闪烁
-    JL_LightModeIndexPurpleFlash            = 0x07, //紫色闪烁
-};
-
-typedef NS_ENUM(UInt8, JL_LightFlashModeFrequency) {
-    JL_LightFlashModeFrequencyFast          = 0x00, //快闪
-    JL_LightFlashModeFrequencySlow          = 0x01, //慢闪
-    JL_LightFlashModeFrequencyNormal        = 0x02, //缓闪
-    JL_LightFlashModeFrequencyMusic         = 0x03, //音乐闪烁
-};
-
-typedef NS_ENUM(UInt8, JL_LightSceneMode) {
-    JL_LightSceneModeRainbow                = 0x00, //彩虹
-    JL_LightSceneModeHeartbeat              = 0x01, //心跳
-    JL_LightSceneModeCandlelight            = 0x02, //烛火
-    JL_LightSceneModeNightLight             = 0x03, //夜灯
-    JL_LightSceneModeStage                  = 0x04, //舞台
-    JL_LightSceneModeDiffuseColourBreathing = 0x05, //漫彩呼吸
-    JL_LightSceneModeDiffuseRedBreathing    = 0x06, //漫红呼吸
-    JL_LightSceneModeDiffuseGreenBreathing  = 0x07, //漫绿呼吸
-    JL_LightSceneModeDiffuseBlueBreathing   = 0x08, //漫蓝呼吸
-    JL_LightSceneModeGreenMood              = 0x09, //绿色心情
-    JL_LightSceneModeSettingSunView         = 0x10, //夕阳美景
-    JL_LightSceneModeMusicRhythm            = 0x11, //音乐律动
-};
-
-typedef NS_ENUM(UInt8, JL_FileHandleType) {     //文件句柄
-    JL_FileHandleTypeSD_0                 = 0,    //SD_0
-    JL_FileHandleTypeSD_1                 = 1,    //SD_1
-    JL_FileHandleTypeFLASH                = 2,    //FLASH
-    JL_FileHandleTypeUSB                  = 3,    //USB
-    JL_FileHandleTypeLineIn               = 4,    //LineIn
-    JL_FileHandleTypeFLASH2               = 5,    //FLASH2
-    JL_FileHandleTypeFLASH3               = 6,    //FLASH3
-};
-
-typedef NS_ENUM(UInt8, JL_MusicMode) {
-    JL_MusicModeLoopAll             = 0x01, //全部循环
-    JL_MusicModeLoopDevice          = 0x02, //单设备循环
-    JL_MusicModeLoopOne             = 0x03, //单曲循环
-    JL_MusicModeRandomDevice        = 0x04, //单设备随机
-    JL_MusicModeLoopFolder          = 0x05, //文件夹循环
-};
-
-typedef NS_ENUM(UInt8, JL_MusicStatus) {
-    JL_MusicStatusPlay              = 0x01, //播放
-    JL_MusicStatusPause             = 0x00, //暂停
-};
-
-typedef NS_ENUM(UInt8, JL_EQType) {         //EQ段数类型
-    JL_EQType10                     = 0,    //固定10段式
-    JL_EQTypeMutable                = 1,    //动态EQ段
-};
-
-//---------------------------------------------------------//
-#pragma mark - RTC
-typedef NS_ENUM(UInt8, JL_RTCAlarmType) {   //是否支持闹铃设置
-    JL_RTCAlarmTypeNO               = 0,    //不支持
-    JL_RTCAlarmTypeYES              = 1,    //支持
-};
-//---------------------------------------------------------//
-#pragma mark - LINEIN
-typedef NS_ENUM(UInt8, JL_LineInStatus) {
-    JL_LineInStatusPause            = 0x00, //暂停
-    JL_LineInStatusPlay             = 0x01, //播放
-    JL_LineInStatusUnknown,
-};
-//---------------------------------------------------------//
-#pragma mark - FM
-typedef NS_ENUM(UInt8, JL_FMStatus) {
-    JL_FMStatusPause                = 0x01, //播放
-    JL_FMStatusPlay                 = 0x02, //暂停
-    JL_FMStatusSearching            = 0x03, //搜索中
-    JL_FMStatusUnknown,
-};
-typedef NS_ENUM(UInt8, JL_FMMode) {
-    JL_FMMode875Mhz                 = 0x00, //87.5-108.0Mhz
-    JL_FMMode760Mhz                 = 0x01, //76.5-108.0Mhz
-    JL_FMModeUnknown,
-};
-
-typedef NS_ENUM(UInt8,JL_ReverberationType) {
-    JL_ReverberationTypeNormal      = 0,     //混响
-    JL_ReverberationTypeDynamic     = 1,     //限幅器
-};
-
-
-@interface JLModel_Device : NSObject<NSCopying>
-
-///设备UUID
-@property (copy,  nonatomic) NSString           *mBLE_UUID;
-
-///协议版本
-@property (copy,  nonatomic) NSString           *versionProtocol;
-
-///固件版本
-@property (copy,  nonatomic) NSString           *versionFirmware;
-
-/// 单包固件最大发送值,APP单次能收到最大的值
-@property (assign,nonatomic) NSInteger          getMtu;
-
-/// 单包固件最大接收值(MaxMtu)APP单次可发送最大值
-@property (assign,nonatomic) NSInteger          sendMtu;
-
-///SDK类型
-@property (assign,nonatomic) JL_SDKType         sdkType;
-
-///电量0~9
-@property (assign,nonatomic) NSUInteger         battery;
-
-/// 是否支持音量同步
-@property (assign,nonatomic) BOOL               isSyncVoice;
-
-/// 最低允许升级资源/OTA电量
-@property (assign,nonatomic) NSInteger          lowBattery;
-
-///当前音量
-@property (assign,nonatomic) NSUInteger         currentVol;
-
-///最大音量
-@property (assign,nonatomic) NSUInteger         maxVol;
-
-///经典蓝牙地址
-@property (copy,  nonatomic) NSString           *btAddr;
-
-///平台序列号
-@property (copy,  nonatomic) NSString           *license;
-
-///平台类型(图灵,Deepbrain)
-@property (assign,nonatomic) JL_DevicePlatform  platform;
-
-///经典蓝牙状态
-@property (assign,nonatomic) JL_DeviceBTStatus  btStatus;
-
-///BIT(0):BT BIT(1):MUSIC BIT(2):RTC
-@property (assign,nonatomic) uint32_t           function;
-
-///当前处于的模式
-@property (assign,nonatomic) JL_FunctionCode    currentFunc;
-
-///USb,SD,LineIn,网络电台是否在线
-@property (assign,nonatomic) uint8_t            funcOnlineStatus;
-
-/// 设备功能模式支持
-@property (strong,nonatomic) JLModelDevFunc     *deviceFuncs;
-
-///uboot版本
-@property (copy,  nonatomic) NSString           *versionUBoot;
-
-///设备单、双备份
-@property (assign,nonatomic) JL_Partition       partitionType;
-
-///OTA状态
-@property (assign,nonatomic) JL_OtaStatus       otaStatus;
-
-///耳机单备份 是否需要强制升级
-@property (assign,nonatomic) JL_OtaHeadset      otaHeadset;
-
-///手表资源 是否需要强制升级
-@property (assign,nonatomic) JL_OtaWatch        otaWatch;
-
-///厂商ID
-@property (copy,  nonatomic) NSString           *pidvid;
-
-///授权Key
-@property (copy,  nonatomic) NSString           *authKey;
-
-///授权Code
-@property (copy,  nonatomic) NSString           *proCode;
-
-///是否下载BootLoader
-@property (assign,nonatomic) JL_BootLoader      bootLoaderType;
-
-///OTA是否允许BLE连接
-@property (assign,nonatomic) JL_OtaBleAllowConnect otaBleAllowConnect;
-
-///是否仅仅支持BLE
-@property (assign,nonatomic) JL_BLEOnly         bleOnly;
-
-///ble蓝牙地址
-@property (copy,  nonatomic) NSString           *bleAddr;
-
-///是否支持发射模式
-@property (assign,nonatomic) JL_FasheEnable     fasheEnable;
-
-///当前是否为发射模式
-@property (assign,nonatomic) JL_FasheType       fasheType;
-
-///是否支持MD5固件校验
-@property (assign,nonatomic) JL_MD5Type         md5Type;
-
-///是否为游戏模式
-@property (assign,nonatomic) JL_GameType        gameType;
-
-///是否支持游戏模式
-@property (assign,nonatomic) BOOL               isSupportGameModel;
-
-///是否支持查找设备
-@property (assign,nonatomic) JL_SearchType      searchType;
-
-///是否支持卡拉OK
-@property (assign,nonatomic) JL_KaraokeType     karaokeType;
-
-///是否禁止app调节设备音效
-@property (assign,nonatomic) JL_KaraokeEQType   karaokeEQType;
-
-///是否外挂flash
-@property (assign,nonatomic) JL_FlashType       flashType;
-
-///是否支持ANC
-@property (assign,nonatomic) JL_AncType         ancType;
-
-///是否支持音频文件传输功能
-@property (assign,nonatomic) JL_AudioFileType   audioFileType;
-
-/// 是否支持日志获取
-@property (assign,nonatomic) BOOL               isSupportLog;
-
-/// 是否支持辅听设置
-@property (assign,nonatomic) BOOL               isSupportDhaFitting;
-
-///验配信息交互:版本、通道数、通道频率
-///Fitting information interaction: version, channel number, channel frequency
-@property (strong,nonatomic) DhaFittingInfo     *dhaFitInfo;
-
-/// 验配中断/开启的对象,仅限于监听
-/// Fitting interrupted/opened object, only for listening
-@property (strong,nonatomic) DhaFittingSwitch   *dhaFitSwitch;
-
-/// 通道增益值数组,先左耳后右耳,个数和验配信息中返回的一致
-/// Array of channel gain values, first left ear then right ear, the number is the same as the one returned in the fitting information
-@property (strong,nonatomic) NSArray<NSNumber *> *dhaFittingList;
-
-/// 是否支持获取设备配置信息
-@property (assign,nonatomic) BOOL               isSupportDevConfigInfo;
-
-/// 是否支持自适应ANC
-@property (assign,nonatomic) BOOL               isSupportAutoANC;
-
-///低音
-@property (assign,nonatomic) int                pitchLow;
-
-///高音
-@property (assign,nonatomic) int                pitchHigh;
-
-///外挂flash信息
-@property (copy,  nonatomic) JLModel_Flash      *flashInfo;
-
-/// 设备信息中指明,外部SD卡/U盘引脚是否被复用
-/// Specify in the device information, whether the external SD card/U disk pins are multiplexed
-@property (assign,nonatomic) BOOL               devPinMultiplex;
-
-
-/*--- File INFO ---*/
-///当前文件传输句柄
-@property (assign,nonatomic) JL_FileHandleType        currentFileHandleType;
-///文件分包传输是否支持crc16方式
-@property (assign,nonatomic) JL_FileSubcontractTransferCrc16Type fileSubcontractTransferCrc16Type;
-///是否以新的方式读取固件文件
-@property (assign,nonatomic) JL_ReadFileInNewWayType readFileInNewWayType;
-///是否小文件方式传输
-@property (assign,nonatomic) JL_SmallFileWayType smallFileWayType;
-
-/*--- 公用INFO ---*/
-//MARK: - 存储信息
-///卡的数组
-@property (copy,  nonatomic) NSArray            *cardArray __attribute__((deprecated ( "Use the instance property cardArray of the JLModelCardInfo class instead, this property is about to become invalid")));
-///USB   handle
-@property (copy,  nonatomic) NSString           *handleUSB __attribute__((deprecated ( "Use the instance property usbHandle of the JLModelCardInfo class instead, this property is about to become invalid")));
-///SD_0  handle
-@property (copy,  nonatomic) NSString           *handleSD_0 __attribute__((deprecated ( "Use the instance property sd0Handle of the JLModelCardInfo class instead, this property is about to become invalid")));
-///SD_1  handle
-@property (copy,  nonatomic) NSString           *handleSD_1 __attribute__((deprecated ( "Use the instance property sd1Handle of the JLModelCardInfo class instead, this property is about to become invalid")));
-///Flash handle
-@property (copy,  nonatomic) NSString           *handleFlash __attribute__((deprecated ( "Use the instance property flashHandle of the JLModelCardInfo class instead, this property is about to become invalid")));
-///Flash2 handle
-@property (copy,  nonatomic) NSString           *handleFlash2 __attribute__((deprecated ( "Use the instance property flash2Handle of the JLModelCardInfo class instead, this property is about to become invalid")));
-
-///Flash3 handle
-@property (copy,  nonatomic) NSString           *handleFlash3 __attribute__((deprecated ( "Use the instance property flash3Handle of the JLModelCardInfo class instead, this property is about to become invalid")));
-
-///USB    handle Data
-@property (copy,  nonatomic) NSData             *handleUSBData __attribute__((deprecated ( "Use the instance property usbHandle of the JLModelCardInfo class instead, this property is about to become invalid")));
-///SD_0   handle Data
-@property (copy,  nonatomic) NSData             *handleSD_0Data __attribute__((deprecated ( "Use the instance property sd0Handle of the JLModelCardInfo class instead, this property is about to become invalid")));
-///SD_1   handle Data
-@property (copy,  nonatomic) NSData             *handleSD_1Data __attribute__((deprecated ( "Use the instance property sd1Handle of the JLModelCardInfo class instead, this property is about to become invalid")));
-///Flash  handle Data
-@property (copy,  nonatomic) NSData             *handleFlashData __attribute__((deprecated ( "Use the instance property flashHandle of the JLModelCardInfo class instead, this property is about to become invalid")));
-///Flash2 handle Data
-@property (copy,  nonatomic) NSData             *handleFlash2Data __attribute__((deprecated ( "Use the instance property flash2Handle of the JLModelCardInfo class instead, this property is about to become invalid")));
-
-///Flash3 handle Data
-@property (copy,  nonatomic) NSData             *handleFlash3Data __attribute__((deprecated ( "Use the instance property flash3Handle of the JLModelCardInfo class instead, this property is about to become invalid")));
-
-/// 设备存储信息(卡信息)
-@property (strong, nonatomic)JLModelCardInfo    *cardInfo;
-
-/// 错误原因
-@property (copy,  nonatomic) NSString           *errReason;
-
-/// 发射频点
-@property (assign,nonatomic) uint16_t           fmtxPoint;
-/// 0x00:普通模式 0x01:发射模式
-@property (assign,nonatomic) uint8_t            mTWS_Mode;
-/// 0x00:未连接   0x01:已连接
-@property (assign,nonatomic) uint8_t            mTWS_Status;
-/// 发射模式中,连接的外设地址
-@property (copy  ,nonatomic) NSString           *mTWS_Addr;
-/// 当前ANC的模式
-@property (copy  ,nonatomic) JLModel_ANC        *mAncModeCurrent;
-/// ANC模式数组
-@property (copy  ,nonatomic) NSMutableArray     *mAncModeArray;
-///通话状态
-@property (assign,nonatomic) JL_CALLType        mCallType;
-
-/// 混响所支持的类型
-@property (strong,nonatomic) NSArray            *reverberationTypes;
-/// 混响的开关
-@property (assign,nonatomic) int                reverberationSwitchState;
-/// 深度值
-@property (assign,nonatomic) int                depthValue;
-/// 混响度值
-@property (assign,nonatomic) int                intensityValue;
-/// 混响幅值
-@property (assign,nonatomic) int                dynamicLimiterValue;
-
-//MARK: - 卡拉OK
-///卡拉OK 固件返回的掩码
-@property (assign,nonatomic)uint64_t kalaokMask __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_SoundCardManager class instead, this property is about to become invalid")));
-
-///卡拉OK 频率数组
-@property (strong,nonatomic)NSArray *mKaraokeMicFrequencyArray __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_SoundCardManager class instead, this property is about to become invalid")));
-
-///卡拉OK EQ数组
-@property (strong,nonatomic)NSArray *mKaraokeMicEQArray __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_SoundCardManager class instead, this property is about to become invalid")));
-
-//MARK: - EQ 属性列表
-/// EQ模式
-@property (assign,nonatomic) JL_EQMode          eqMode __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_SystemEQ class instead, this property is about to become invalid")));;
-/// EQ参数值(只适用于EQ Mode == CUSTOM情况)
-@property (copy,  nonatomic) NSArray            *eqArray __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_SystemEQ class instead, this property is about to become invalid")));;
-///自定义EQ
-@property (copy,  nonatomic) NSArray            *eqCustomArray __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_SystemEQ class instead, this property is about to become invalid")));;
-
-///EQ频率
-@property (copy,  nonatomic) NSArray            *eqFrequencyArray __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_SystemEQ class instead, this property is about to become invalid")));;
-///EQ段数类型
-@property (assign,nonatomic) JL_EQType          eqType __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_SystemEQ class instead, this property is about to become invalid")));;
-
-///EQ的预设值数组 数组元素类型-->【JLEQModel】
-@property (strong,nonatomic) NSArray            *eqDefaultArray __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_SystemEQ class instead, this property is about to become invalid")));;
-
-//MARK: - 灯光属性列表
-/// 0:关闭 1:打开 2:设置模式(彩色/闪烁/情景)
-@property (assign,nonatomic) JL_LightState      lightState __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_LightManager class instead, this property is about to become invalid")));
-/// 0:彩色 1:闪烁 2: 情景
-@property (assign,nonatomic) JL_LightMode       lightMode __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_LightManager class instead, this property is about to become invalid")));
-/// 灯光红色
-@property (assign,nonatomic) uint8_t            lightRed __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_LightManager class instead, this property is about to become invalid")));
-/// 灯光绿色
-@property (assign,nonatomic) uint8_t            lightGreen __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_LightManager class instead, this property is about to become invalid")));
-/// 灯光蓝色
-@property (assign,nonatomic) uint8_t            lightBlue __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_LightManager class instead, this property is about to become invalid")));
-/// 闪烁模式Index
-@property (assign,nonatomic) JL_LightFlashModeIndex lightFlashIndex __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_LightManager class instead, this property is about to become invalid")));
-/// 闪烁频率Index
-@property (assign,nonatomic) JL_LightFlashModeFrequency lightFrequencyIndex __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_LightManager class instead, this property is about to become invalid")));
-/// 情景模式Index
-@property (assign,nonatomic) JL_LightSceneMode  lightSceneIndex __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_LightManager class instead, this property is about to become invalid")));
-/// 色调,范围0-360
-@property (assign,nonatomic) uint16_t           lightHue __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_LightManager class instead, this property is about to become invalid")));
-/// 饱和度,0-100
-@property (assign,nonatomic) uint8_t            lightSat __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_LightManager class instead, this property is about to become invalid")));
-/// 亮度,0-100
-@property (assign,nonatomic) uint8_t            lightLightness __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_LightManager class instead, this property is about to become invalid")));
-
-
-//MARK: -  BT INFO
-@property (strong,nonatomic) NSString           *ID3_Title;
-@property (strong,nonatomic) NSString           *ID3_Artist;
-@property (strong,nonatomic) NSString           *ID3_AlBum;
-@property (assign,nonatomic) uint8_t            ID3_Number;
-@property (assign,nonatomic) uint16_t           ID3_Total;
-@property (strong,nonatomic) NSString           *ID3_Genre;
-@property (assign,nonatomic) uint32_t           ID3_Time;
-/// 0x01:播放 0x00:暂停
-@property (assign,nonatomic) uint8_t            ID3_Status;
-
-@property (assign,nonatomic) uint32_t           ID3_CurrentTime;
-
-//MARK: -  Music INFO
-///播放状态
-@property (assign,nonatomic) JL_MusicStatus     playStatus __attribute__((deprecated ( "Use the instance property rtcVersion of the JLDevPlayerCtrl class instead, this property is about to become invalid")));
-
-///播放模式
-@property (assign,nonatomic) JL_MusicMode       playMode __attribute__((deprecated ( "Use the instance property rtcVersion of the JLDevPlayerCtrl class instead, this property is about to become invalid")));
-
-///当前播放文件的簇号
-@property (assign,nonatomic) uint32_t           currentClus __attribute__((deprecated ( "Use the instance property rtcVersion of the JLDevPlayerCtrl class instead, this property is about to become invalid")));
-
-///当前时间
-@property (assign,nonatomic) uint32_t           currentTime __attribute__((deprecated ( "Use the instance property rtcVersion of the JLDevPlayerCtrl class instead, this property is about to become invalid")));
-
-///总时长
-@property (assign,nonatomic) uint32_t           tolalTime __attribute__((deprecated ( "Use the instance property rtcVersion of the JLDevPlayerCtrl class instead, this property is about to become invalid")));
-
-///当前卡
-@property (assign,nonatomic) JL_CardType        currentCard __attribute__((deprecated ( "Use the instance property rtcVersion of the JLDevPlayerCtrl class instead, this property is about to become invalid")));
-
-///名字
-@property (copy,  nonatomic) NSString           *fileName __attribute__((deprecated ( "Use the instance property rtcVersion of the JLDevPlayerCtrl class instead, this property is about to become invalid")));
-
-///目录浏览文件类型(所支持解码音频格式)
-@property (copy,  nonatomic) NSString           *typeSupport;
-    
-//MARK: -  RTC INFO
-
-///RTC 版本
-@property (assign,nonatomic) uint8_t             rtcVersion __attribute__((deprecated ( "Use the instance property rtcVersion of the JL_AlarmClockManager class instead, this property is about to become invalid")));
-
-///是否支持闹铃设置
-@property (assign,nonatomic) JL_RTCAlarmType     rtcAlarmType __attribute__((deprecated ( "Use the instance property rtcAlarmType of the JL_AlarmClockManager class instead, this property is about to become invalid")));
-
-///设备当前时间
-@property (strong,nonatomic) JLModel_RTC         *rtcModel __attribute__((deprecated ( "Use the instance property rtcModel of the JL_AlarmClockManager class instead, this property is about to become invalid")));
-
-///设备闹钟数组
-@property (strong,nonatomic) NSMutableArray      *rtcAlarms __attribute__((deprecated ( "Use the instance property rtcAlarms of the JL_AlarmClockManager class instead, this property is about to become invalid")));
-
-///默认铃声
-@property (strong,nonatomic) NSMutableArray      *rtcDfRings __attribute__((deprecated ( "Use the instance property rtcDfRings of the JL_AlarmClockManager class instead, this property is about to become invalid")));
-
-//MARK: -  LineIn INFO
-
-///LineIn状态
-@property (assign,nonatomic) JL_LineInStatus    lineInStatus;
-
-
-//MARK: - Fm 模式
-///Fm状态
-@property (assign,nonatomic) JL_FMStatus        fmStatus;
-
-///Fm 频段范围
-///76.5-108.0Mhz
-///87.5-108.0Mhz
-@property (assign,nonatomic) JL_FMMode          fmMode;
-
-///当前fm
-@property (strong,nonatomic) JLModel_FM          *currentFm;
-
-///Fm列表
-@property (strong,nonatomic) NSArray            *fmArray;
-
-//MARK: -  custom version info
-/// 自定义版本信息
-@property(strong,nonatomic) NSData              *customizeInfo;
-
-
--(void)cleanMe;
-+(void)observeModelProperty:(NSString*)prty Action:(SEL)action Own:(id)own;
-+(void)removeModelProperty:(NSString*)prty Own:(id)own;
-
-#pragma mark ---> 设备信息
--(void)deviceInfoData:(NSData*)infoData;
-
-#pragma mark ---> 各个模式信息
--(void)deviceModeInfoData:(NSData*)infoData;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_EQ.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_EQ.h
deleted file mode 100644 (file)
index 0d3cc78..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-//
-//  JLModel_EQ.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_EQMode) {
-    JL_EQModeNORMAL                 = 0,    //自然
-    JL_EQModeROCK                   = 1,    //摇滚
-    JL_EQModePOP                    = 2,    //流行
-    JL_EQModeCLASSIC                = 3,    //经典
-    JL_EQModeJAZZ                   = 4,    //爵士
-    JL_EQModeCOUNTRY                = 5,    //乡村
-    JL_EQModeCUSTOM                 = 6,    //用户自定义
-    JL_EQModeLATIN                  = 7,    //拉丁
-    JL_EQModeDANCE                  = 8,    //舞蹈
-};
-
-@interface JLModel_EQ : NSObject
-@property(assign,nonatomic)JL_EQMode        mMode;
-@property(strong,nonatomic)NSArray *__nullable mEqArray;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_FM.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_FM.h
deleted file mode 100644 (file)
index 34cd845..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-//
-//  JLModel_FM.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLModel_FM : NSObject<NSCoding>
-@property (assign,nonatomic) uint8_t        fmChannel;
-@property (assign,nonatomic) uint16_t       fmFrequency;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_File.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_File.h
deleted file mode 100644 (file)
index dbb6387..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-//  JLModel_File.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_BrowseType) {
-    JL_BrowseTypeFolder             = 0,    //文件夹
-    JL_BrowseTypeFile               = 1,    //文件
-};
-typedef NS_ENUM(UInt8, JL_CardType) {
-    JL_CardTypeUSB                  = 0,    //USB
-    JL_CardTypeSD_0                 = 1,    //SD_0
-    JL_CardTypeSD_1                 = 2,    //SD_1
-    JL_CardTypeFLASH                = 3,    //FLASH
-    JL_CardTypeLineIn               = 4,    //LineIn
-    JL_CardTypeFLASH2               = 5,    //FLASH2
-    JL_CardTypeFLASH3               = 6,    //FLASH3
-};
-
-@interface JLModel_File : NSObject<NSCopying,NSCoding>
-@property (assign,nonatomic) JL_BrowseType  fileType;
-@property (assign,nonatomic) JL_CardType    cardType;
-@property (assign,nonatomic) uint32_t       fileClus;
-@property (assign,nonatomic) uint16_t       fileIndex;
-@property (copy,  nonatomic) NSString       *fileHandle;
-@property (copy,  nonatomic) NSString       *fileName;
-@property (copy,  nonatomic) NSString       *folderName;
-@property (copy,  nonatomic) NSData *__nullable pathData;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Flash.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Flash.h
deleted file mode 100644 (file)
index acfdd0f..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-//
-//  JLModel_Flash.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_FlashSystemType) {
-    JL_FlashSystemType_FATFS        = 0,
-    JL_FlashSystemType_RCSP         = 1,
-};
-
-@interface JLModel_Flash : NSObject
-
-/// flash大小
-@property(assign,nonatomic)uint32_t         mFlashSize;
-
-/// FAT系统大小
-@property(assign,nonatomic)uint32_t         mFatfsSize;
-
-/// 系统类型 0:FATFS,1:RCSP
-@property(assign,nonatomic)JL_FlashSystemType mFlashType;
-
-/// 系统当前状态,0x00正常,0x01异常
-@property(assign,nonatomic)uint8_t          mFlashStatus;
-
-/// Flash版本
-@property(assign,nonatomic)uint16_t         mFlashVersion;
-
-/// 读数MTU
-@property(assign,nonatomic)uint16_t         mFlashReadMtu;
-
-/// 扇区大小
-@property(assign,nonatomic)uint16_t         mFlashCluster;
-
-/// 手表兼容列表"W001,W002,W003"
-@property(strong,nonatomic)NSString         *mFlashMatchVersion;
-
-/// 写数MTU
-@property(assign,nonatomic)uint16_t         mFlashWriteMtu;
-
-/// 屏幕宽度
-@property(assign,nonatomic)uint16_t         mScreenWidth;
-
-/// 屏幕高度
-@property(assign,nonatomic)uint16_t         mScreenHeight;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Headset.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Headset.h
deleted file mode 100644 (file)
index 6c4d843..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-//
-//  JLModel_Headset.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLModel_Headset : NSObject
-@property(assign,nonatomic)BOOL             mCharging_L;
-@property(assign,nonatomic)BOOL             mCharging_R;
-@property(assign,nonatomic)BOOL             mCharging_C;
-@property(assign,nonatomic)uint8_t          mPower;
-@property(assign,nonatomic)uint8_t          mPower_L;
-@property(assign,nonatomic)uint8_t          mPower_R;
-@property(assign,nonatomic)uint8_t          mPower_C;
-@property(assign,nonatomic)uint8_t          mLedScene;
-@property(assign,nonatomic)uint8_t          mLedEffect;
-@property(assign,nonatomic)uint8_t          mKeyLR;
-@property(assign,nonatomic)uint8_t          mKeyAction;
-@property(assign,nonatomic)uint8_t          mKeyFunction;
-@property(assign,nonatomic)uint8_t          mMicMode;
-@property(assign,nonatomic)uint8_t          mWorkMode;
-@property(strong,nonatomic)NSString         *mEdr;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_RTC.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_RTC.h
deleted file mode 100644 (file)
index e9731e9..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-//
-//  JLModel_RTC.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/RTC_RingInfo.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLModel_RTC : NSObject
-
-/// 年
-@property (assign,nonatomic) uint16_t       rtcYear;
-
-/// 月
-@property (assign,nonatomic) uint8_t        rtcMonth;
-
-/// 日
-@property (assign,nonatomic) uint8_t        rtcDay;
-
-/// 时
-@property (assign,nonatomic) uint8_t        rtcHour;
-
-/// 分
-@property (assign,nonatomic) uint8_t        rtcMin;
-
-/// 秒
-@property (assign,nonatomic) uint8_t        rtcSec;
-
-/// RTC使能
-@property (assign,nonatomic) BOOL           rtcEnable;
-
-/// RTC循环模式
-/// mode: 值为 0 时只响一次
-/// bit0: 每天
-/// bit1: 周一
-/// bit2: 周二
-/// bit3: 周三
-/// bit4: 周四
-/// bit5: 周五
-/// bit6: 周六
-/// bit7: 周日
-@property (assign,nonatomic) uint8_t        rtcMode;
-
-
-/// RTC索引
-@property (assign,nonatomic) uint8_t        rtcIndex;
-
-/// 名称
-@property (copy  ,nonatomic) NSString       *rtcName;
-
-/// 自定义闹铃内容
-/// 这部分内容取自设备音乐浏览所获得的句柄以及簇号
-@property (strong,nonatomic) RTC_RingInfo   *ringInfo;
-
-/// 闹铃数据
-@property (strong,nonatomic) NSData         *RingData;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Ring.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_Ring.h
deleted file mode 100644 (file)
index c227fa6..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-//
-//  JLModel_Ring.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLModel_Ring : NSObject
-
-/// 默认铃声序号
-/// alarm default rings index
-@property(assign,nonatomic) uint8_t         index;
-
-/// 默认铃声名称
-/// alarm default rings name
-@property(strong,nonatomic) NSString        *name;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_SPEEX.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_SPEEX.h
deleted file mode 100644 (file)
index 4128868..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-//
-//  JLModel_SPEEX.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Modify By EzioChan on 2023/03/27.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_SpeakType) {
-    JL_SpeakTypeDo                  = 0,    //开始录音
-    JL_SpeakTypeDone                = 1,    //结束录音
-    JL_SpeakTypeDoing               = 2,    //正在录音
-    JL_SpeakTypeDoneFail            = 0x0f, //结束失败
-};
-typedef NS_ENUM(UInt8, JL_SpeakDataType) {
-    JL_SpeakDataTypePCM             = 0,    //PCM数据
-    JL_SpeakDataTypeSPEEX           = 1,    //SPEEX数据
-    JL_SpeakDataTypeOPUS            = 2,    //OPUS数据
-};
-
-/// 结束原因
-typedef NS_ENUM(UInt8, JLSpeakDownReason) {
-    ///正常
-    JLSpeakDownNormal = 0x00,
-    ///取消
-    JLSpeakDownByDevice = 0x01
-};
-
-/// SampleRate
-typedef NS_ENUM(UInt8, JLRecordSampleRate) {
-    ///8000
-    JLRecordSampleRate8K = 0x08,
-    ///16000
-    JLRecordSampleRate16K = 0x10
-};
-
-
-
-
-
-
-@interface JLModel_SPEEX : NSObject
-@property(assign,nonatomic)JL_SpeakType     mSpeakType;
-@property(assign,nonatomic)JL_SpeakDataType mDataType;
-@property(assign,nonatomic)JLSpeakDownReason mDownReason;
-@property(assign,nonatomic)uint8_t          mSampleRate;            //0x08=8k,0x10=16k
-@property(assign,nonatomic)uint8_t          mVad;                   //断句方: 0:固件 1:APP
-@end
-
-
-///语音助手配置参数
-@interface JLSpeechRecognition:NSObject
-
-///是否下发识别文本,0:否 1:是
-@property(assign,nonatomic)BOOL sendText;
-
-/// 是否下发AI文本,0:否 1:是
-@property(assign,nonatomic)BOOL sendAIText;
-
-/// 是否播放AI TTS语音,0:否 1:是
-@property(assign,nonatomic)BOOL needPlayTTS;
-
-+(JLSpeechRecognition *)beObjc:(NSData *)data;
-
--(NSData *)beData;
-
-@end
-
-
-/// 录音参数对象
-@interface JLRecordParams : NSObject
-
-/// 音频类型
-@property(nonatomic,assign)JL_SpeakDataType mDataType;
-
-/// VAD方式
-@property(assign,nonatomic)JLSpeakDownReason mVadWay;
-
-/// 采样率
-@property(assign,nonatomic)JLRecordSampleRate mSampleRate;
-
-/// 语音助手配置参数
-@property(strong,nonatomic)JLSpeechRecognition *speechRecognit;
-
-@end
-
-
-/// speech 语音:AI云数据格式
-@interface JLSpeechAiCloud : NSObject
-
-/// 版本信息
-@property(nonatomic,assign)uint8_t version;
-
-/// 文本类型
-/// 0 : 手表本地文本(语音识别)
-/// 1 : AI应答文本
-/// 2 : 错误提示文本
-@property(nonatomic,assign)uint8_t type;
-
-/// 供应商
-/// 0 : 杰理
-/// 1 : 科大讯飞
-@property(nonatomic,assign)uint8_t vendorID;
-
-/// 有效数据长度
-@property(nonatomic,assign)uint16_t lenght;
-
-/// 数据内容
-@property(nonatomic,strong)NSData *playload;
-
-+(JLSpeechAiCloud *)beObject:(NSData *)data;
-
--(NSData *)beData;
-
-@end
-
-/// TTS语音合成数据格式
-@interface JLSpeechTTSSynthesis : NSObject
-
-/// 版本信息
-@property(nonatomic,assign)uint8_t version;
-
-/// 有效数据长度
-@property(nonatomic,assign)uint16_t lenght;
-
-/// 数据内容
-@property(nonatomic,strong)NSData *playload;
-
--(NSData *)beData;
-
-+(JLSpeechTTSSynthesis *)beObject:(NSData *)data;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_SmallFile.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLModel_SmallFile.h
deleted file mode 100644 (file)
index 88bc3b7..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-//
-//  JLModel_SmallFile.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/14.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-typedef NS_ENUM(UInt8, JL_SmallFileType) {
-    JL_SmallFileTypeContacts        = 0x01, //联系人
-    JL_SmallFileTypeMotionRecord    = 0x02, //运动记录
-    JL_SmallFileTypeHeartRate       = 0x03, //心率数据
-    JL_SmallFileTypeSpoData         = 0x04, //血氧数据
-    JL_SmallFileTypeSleepData       = 0x05, //睡眠数据
-    JL_SmallFileTypeMassage         = 0x06, //消息数据
-    JL_SmallFileTypeWeather         = 0x07, //天气数据
-    JL_SmallFileTypeCallLog         = 0x08, //通话记录
-    JL_SmallFileTypeStepCount       = 0x09, //步数数据
-    JL_SmallFileTypeWeight          = 0xFF, //体重数据
-};
-
-@interface JLModel_SmallFile : NSObject
-@property(nonatomic,assign)JL_SmallFileType  file_type;
-@property(nonatomic,assign)uint8_t  file_ver;
-@property(nonatomic,assign)uint16_t file_id;
-@property(nonatomic,assign)uint16_t file_size;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLOxygenSturationRemindModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLOxygenSturationRemindModel.h
deleted file mode 100644 (file)
index 0474d40..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-//
-//  JLOxygenSturationRemindModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2022/2/17.
-//  Copyright © 2022 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 血氧检测控制
-@interface JLOxygenSturationRemindModel : JLwSettingModel
-///开关
-@property(nonatomic,assign)BOOL status;
-/// 测量模式
-@property(nonatomic,assign)WatchOxygenMsmType rType;
-
-
--(instancetype)initWithData:(NSData *)data;
-
-/// 创建一个新的传感器设置对象
-/// @param type 测量类型
-/// @param status 开闭状态
-- (instancetype)initWithModel:(WatchOxygenMsmType)type Status:(BOOL)status;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLPersonInfoModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLPersonInfoModel.h
deleted file mode 100644 (file)
index 9cf61b1..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-//  JLPersonInfoModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/12.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 个人信息设置
-@interface JLPersonInfoModel : JLwSettingModel
-
-/// 身高,cm
-@property(nonatomic,assign)uint16_t height;
-/// 体重,kg
-@property(nonatomic,assign)uint16_t weight;
-/// 生日
-@property(nonatomic,strong)NSDate *birthDay;
-/// 性别
-/// 女性:0x00
-/// 男性:0x01
-@property(nonatomic,assign)uint8_t gender;
-
--(instancetype)initWith:(NSDate *)birthDay height:(uint16_t)h weight:(uint16_t)w gener:(uint8_t)gender;
-
--(instancetype)initWithData:(NSData *)data;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLPublicSetting.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLPublicSetting.h
deleted file mode 100644 (file)
index 4539cc1..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-//
-//  JLPublicSetting.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/12/1.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JLPublicSettingBlocks.h"
-
-
-NS_ASSUME_NONNULL_BEGIN
-@class JL_ManagerM;
-
-/// 公共 设置/通知/读取 交互类 0x33 回调协议
-@protocol JLPublicSettingProtocol <NSObject>
-@optional
-
-/// 屏幕亮度设置回调/通知
-/// - Parameters:
-///   - manager: 设备
-///   - light: 亮度
--(void)publicSettingScreenLight:(JL_ManagerM *)manager Value:(uint8_t)light;
-
-/// 手电筒设置回调/通知
-/// - Parameters:
-///   - manager: 设备
-///   - isOn: 是否打开
--(void)publicSettingFlashLight:(JL_ManagerM *)manager Value:(BOOL)isOn;
-
-/// 设备绑定状态回调/通知
-/// - Parameters:
-///   - manager: 设备
-///   - model: 绑定信息
--(void)publicSettingBindStatus:(JL_ManagerM *)manager Model:(JLPublicBindDeviceModel *)model;
-
-/// 功能使用资源通知/回调
-/// - Parameters:
-///   - manager: 设备
-///   - model: 资源信息
--(void)publicSettingFuncSource:(JL_ManagerM *)manager Model:(JLPublicSourceInfoModel *)model;
-
-/// 功能使用资源通知/回调
-/// - Parameters:
-///   - manager: 设备
-///   - model: 
-///     0x00 结束
-///     0x01 开始推送
--(void)publicSettingReplaceTipsVoiceStatus:(JL_ManagerM *)manager Model:(uint8_t )model Reason:(NSError *_Nullable)err;
-
-@end
-
-
-/// 公共 设置/通知/读取 交互类 0x33
-@interface JLPublicSetting : NSObject
-
-/// 代理
-@property(nonatomic,assign)id<JLPublicSettingProtocol> delegate;
-
-/// 读取设备当前屏幕亮度
-/// - Parameters:
-///   - manager: 设备
-///   - block: 回调
--(void)cmdScreenLightGet:(JL_ManagerM *)manager result:(JLPSScreenLightCbk)block;
-
-/// 设置设备的屏幕亮度
-/// - Parameters:
-///   - manager: 设备
-///   - value: 亮度值 0~100
-///   - block: 回调
--(void)cmdScreenLightSet:(JL_ManagerM *)manager  Value:(uint8_t)value result:(JLPSScreenLightCbk)block;
-
-/// 读取手电筒开关
-/// - Parameters:
-///   - manager: 设备
-///   - block: 回调
--(void)cmdFlashLightGet:(JL_ManagerM *)manager result:(JLPSFlashLightCbk)block;
-
-/// 设置手电筒开关
-/// - Parameters:
-///   - manager: 设备
-///   - isOn: 开关
-///   - block: 回调
--(void)cmdFlashLightSet:(JL_ManagerM *)manager  Status:(BOOL)isOn result:(JLPSFlashLightCbk)block;
-
-
-/// 获取绑定设备状态
-/// - Parameters:
-///   - manager: 设备
-///   - block: 回调
--(void)cmdDeviceBindStatusGet:(JL_ManagerM *)manager result:(JLPSBindStatusCbk)block;
-
-
-/// 获取功能使用资源设置(彩屏舱)
-/// - Parameters:
-///   - manager: 设备
-///   - funcType: 功能码
-///   0x01 屏幕保护程序
-///   0x02 开机动画
-///   - block: 回调
--(void)cmdDeviceFuncUsedSourceGet:(JL_ManagerM *)manager Type:(uint8_t)funcType result:(JLPSSourceInfoCbk)block;
-
-/// 设置功能使用资源(彩屏舱)
-/// - Parameters:
-///   - manager: 设备
-///   - info: 设置内容对象
-///   - block: 回调
--(void)cmdDeviceFuncUseSourceSet:(JL_ManagerM *)manager Info:(JLPublicSourceInfoModel *)info result:(JLPSSourceInfoCbk)block;
-
-
-/// 开始发起替换提示音
-/// - Parameters:
-///   - manager: 设备
-///   - info: 提示音包 tone.cfg 信息
-///   - block: 状态回调
--(void)cmdDeviceReplaceTipsVoiceStart:(JL_ManagerM *)manager  Info:(JLPublicTipsVoiceRpInfo *)info result:(JLPSTipsVoiceRpCbk)block;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLPublicSettingBlocks.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLPublicSettingBlocks.h
deleted file mode 100644 (file)
index e355154..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-//
-//  JLPublicSettingBlocks.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/12/1.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JL_TypeEnum.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-#define PUBLIC_SCREEN_LIGHT             0x0001 //屏幕亮度
-#define PUBLIC_FLASH_LIGHT              0x0002 //手电筒
-#define PUBLIC_DEVICE_BIND_STATUS       0x0003 //设备绑定
-#define PUBLIC_FUNC_SOURCE              0x0004 //功能使用资源(彩屏舱)
-#define PUBLIC_FUNC_4G                  0x0005 //4G功能升级功能
-#define PUBLIC_TIPS_VOICE               0x0006 //替换提示音
-
-@class JLPublicBindDeviceModel;
-@class JLPublicSourceInfoModel;
-@class JLPublic4GModel;
-
-/// 屏幕亮度回调
-typedef void(^JLPSScreenLightCbk)(JL_CMDStatus status,uint8_t value);
-
-/// 手电筒开关
-typedef void(^JLPSFlashLightCbk)(JL_CMDStatus status,BOOL isOn);
-
-/// 绑定状态
-typedef void(^JLPSBindStatusCbk)(JL_CMDStatus status,JLPublicBindDeviceModel *_Nullable model);
-/// 彩屏舱资源
-typedef void (^JLPSSourceInfoCbk)(JL_CMDStatus status,JLPublicSourceInfoModel *_Nullable model);
-
-/// 4G模块升级回调
-typedef void (^JLPSSource4GCbk)(JL_CMDStatus status,JLPublic4GModel *_Nullable model);
-
-/// 替换提示音回调
-typedef void(^JLPSTipsVoiceRpCbk)(JL_CMDStatus status,uint8_t op);
-
-//MARK: - 绑定设备状态(彩屏舱)
-/// 绑定设备状态
-@interface JLPublicBindDeviceModel : NSObject
-
-/// 设备类型
-/// 1 耳机
-/// 2 充电仓
-@property(nonatomic,assign)uint8_t type;
-
-/// 经典蓝牙地址
-/// 若不支持经典蓝牙,此值为 0
-@property(nonatomic,copy)NSString *edrAddr;
-
-/// ble 蓝牙地址
-/// 若不支持 ble 蓝牙,此值为 0
-@property(nonatomic,copy)NSString *bleAddr;
-
-/// 连接状态
-/// 0 未连接
-/// 1 已连接
-/// 2 正在回连
-/// 0xff 不可连接
-@property(nonatomic,assign)uint8_t status;
-
-/// 连接方式
-/// 0 BLE
-/// 1 SPP 
-@property(nonatomic,assign)uint8_t way;
-
-+(JLPublicBindDeviceModel *)initData:(NSData *)data;
-@end
-
-//MARK: -公有设置的资源信息(彩屏舱)
-/// 公有设置的资源信息
-@interface JLPublicSourceInfoModel:NSObject
-
-/// 功能码
-/// 0x01 屏幕保护程序
-/// 0x02 开机动画
-@property(nonatomic,assign)uint8_t type;
-
-/// 存储器的句柄
-@property(nonatomic,copy)NSData *fileHandle;
-
-/// 文件簇号
-/// 设置时当前字段设为 0
-@property(nonatomic,assign)uint32_t cluster;
-
-/// 文件内容 CRC
-/// 设置时当前字段为 0
-@property(nonatomic,assign)uint16_t crc;
-
-/// 文件路径数据
-@property(nonatomic,strong)NSString *filePath;
-
--(NSData *)beData;
-
-+(JLPublicSourceInfoModel *)initData:(NSData *)data;
-
-@end
-
-//MARK: - 4G 模块基本信息
-
-/// 4G 模块基本信息
-@interface JLPublic4GModel:NSObject
-
-/// 供应商信息
-/// 0x01:紫光展锐
-/// 0x02:归芯科技
-@property(nonatomic,assign)uint8_t vendor;
-
-/// 强制升级标识位
-/// 0x00:不强制
-/// 0x01:强制升级
-@property(nonatomic,assign)uint8_t updateStatus;
-
-/// 版本
-@property(nonatomic,copy)NSString *version;
-
-/// 开始 OTA 等待时间
-@property(nonatomic,assign)NSTimeInterval startOtaMaxTimeout;
-
-/// 结束 OTA 等待时间
-@property(nonatomic,assign)NSTimeInterval endOtaMaxTimeout;
-
-
-+(JLPublic4GModel *)initData:(NSData *)data;
-
-@end
-
-//MARK: - 替换提示音参数
-@interface JLPublicTipsVoiceRpInfo : NSObject
-
-/// 目标存储器句柄
-/// 这个要从 JLModel_Device 中获得
-/// JLModelCardInfo    *cardInfo;
-@property(nonatomic,copy)NSData *devHandle;
-
-/// 下发的文件名
-@property(nonatomic,strong)NSString *fileName;
-
-/// 下发的文件内容
-@property(nonatomic,copy)NSData *sendData;
-
--(NSData *)createData;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSedentaryRmdModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSedentaryRmdModel.h
deleted file mode 100644 (file)
index 06cf049..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-//
-//  JLSedentaryRmdModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/12.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 久坐提醒
-@interface JLSedentaryRmdModel : JLwSettingModel
-
-///开关
-@property(nonatomic,assign)BOOL status;
-
-/// 提醒模式
-@property(nonatomic,assign)WatchRemindType rType;
-
-/// 午休免打扰:关闭/打开(午休时段为12:00-14:00)
-@property(nonatomic,assign)BOOL doNotDisturb;
-
-/// 开始时间
-@property(nonatomic,strong)WatchTimer *begin;
-
-/// 结束时间
-@property(nonatomic,strong)WatchTimer *end;
-
-- (instancetype)initWithData:(NSData *)data;
-
-/// 创建一个设置久坐提醒的位置
-/// @param type 提醒模式
-/// @param status 开关
-/// @param dnd 午休免打扰
-/// @param start 开始时间
-/// @param ed 结束时间
-- (instancetype)initWithModel:(WatchRemindType)type Status:(BOOL)status DoNotDisturb:(BOOL)dnd Begin:(WatchTimer *)start End:(WatchTimer *)ed;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSensorFuncModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSensorFuncModel.h
deleted file mode 100644 (file)
index 39779cf..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-//
-//  JLSensorFuncModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/12.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-#import "JLWatchEnum.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-
-/// 传感器开关设置
-@interface JLSensorFuncModel : JLwSettingModel
-
-/// 计步器开关
-@property(nonatomic,assign)BOOL pedometerStatus;
-/// 计步器记录开关
-@property(nonatomic,assign)BOOL pedometerRecordStatus;
-/// 心率传感器开关
-@property(nonatomic,assign)BOOL heartRateStatus;
-/// 心率传感器记录开关
-@property(nonatomic,assign)BOOL heartRateRecordStatus;
-/// 血氧传感器开关
-@property(nonatomic,assign)BOOL bloodOxygenStatus;
-/// 血氧传感器记录开关
-@property(nonatomic,assign)BOOL bloodOxygenRecordStatus;
-///海拔气压传感器开关
-@property(nonatomic,assign)BOOL AltitudeAirPressureStatus;
-///海拔气压传感器记录开关
-@property(nonatomic,assign)BOOL AltitudeAirPressureRecordStatus;
-
-
-/// 传感器功能
-/// @param status 功能的开关状态
--(void)setFuncBy:(JL_SENSOR_FUNC_SWITCH)status;
-
-/// @param funcByte 功能的开关状态
--(instancetype)initWhthFuncByte:(JL_SENSOR_FUNC_SWITCH)funcByte;
-
--(instancetype)initWithData:(NSData *)data;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSleepMonitorModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSleepMonitorModel.h
deleted file mode 100644 (file)
index 5e51a67..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-//
-//  JLSleepMonitorModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/12.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 睡眠监测设置
-@interface JLSleepMonitorModel : JLwSettingModel
-///开关类型
-@property(nonatomic,assign)WatchSwitchType status;
-///开始时间
-@property(nonatomic,strong)WatchTimer *start;
-/// 结束时间
-@property(nonatomic,strong)WatchTimer *end;
-
--(instancetype)initWithData:(NSData *)data;
-
-/// 构建一个睡眠监测设置
-/// @param status 状态开关
-/// @param begin 开始时间
-/// @param end 结束时间
--(instancetype)initWithSwitchStatus:(WatchSwitchType)status Begin:(WatchTimer *)begin End:(WatchTimer *)end;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSportDataModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLSportDataModel.h
deleted file mode 100644 (file)
index 4483e04..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-//
-//  JLSportDataModel.h
-//  Test
-//
-//  Created by EzioChan on 2021/4/6.
-//  Copyright © 2021 Zhuhai Jieli Technology Co.,Ltd. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLSportDataModel : NSObject
-
-/// 设备的UUID
-@property(nonatomic,strong)NSString *dev_uuid;
-
-/// 请求内容数据
-@property(nonatomic,strong)NSData *rqData;
-
-/// 功能掩码
-@property(nonatomic,assign)uint32_t funcMask;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWatchEnum.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWatchEnum.h
deleted file mode 100644 (file)
index b939ec1..0000000
+++ /dev/null
@@ -1,228 +0,0 @@
-//
-//  JLWatchEnum.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/8/2.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-extern NSString *_Nonnull const  JL_Watch_HeartRate;
-extern NSString *_Nonnull const  JL_Watch_AirPressure;
-extern NSString *_Nonnull const  JL_Watch_Altitude;
-extern NSString *_Nonnull const  JL_Watch_MoveSteps;
-extern NSString *_Nonnull const  JL_Watch_Stress;
-extern NSString *_Nonnull const  JL_Watch_Oxsaturation;
-extern NSString *_Nonnull const  JL_Watch_MaxOxg;
-extern NSString *_Nonnull const  JL_Watch_RecTime;
-extern NSString *_Nonnull const  JL_Watch_SportMsg;
-extern NSString *_Nonnull const  JL_Watch_WatchLog;
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_WATCH_LOG_MASK) {
-    /// 加速度
-    JL_WATCH_LOG_MASK_Acceleration = 0x80000000 >> 31,
-    /// 心率和血氧
-    JL_WATCH_LOG_MASK_HeartRate_BloodOxy = 0x80000000 >> 30,
-};
-
-typedef NS_ENUM(UInt8, JL_WATCH_LOG_TYPE) {
-    ///设备回的加速度
-    JL_WATCH_LOG_TYPE_Res_Acceleration = 0x00,
-    /// 设备回的心率血氧
-    JL_WATCH_LOG_TYPE_Res_HeartRate_BloodOxy = 0x01,
-};
-
-/// 运动记录标记包类型
-typedef NS_ENUM(UInt8, JL_SRMDataType) {
-    ///开始包
-    JL_SRM_Start = 0x00,
-    ///基础包
-    JL_SRM_Basic = 0x01,
-    ///暂停包
-    JL_SRM_Pause = 0x02,
-    ///每公里配速包
-    JL_SRM_Pace = 0x03,
-    ///结束包
-    JL_SRM_End = 0xff,
-};
-
-// 实时健康数据类型
-typedef NS_ENUM(UInt8, JL_SportDataType) {
-    ///心率
-    JL_SportDataTypeHeartRate           = 0,
-    ///空气压强
-    JL_SportDataTypeAirPressure         = 1,
-    ///海拔高度
-    JL_SportDataTypeAltitude            = 2,
-    ///运动步数
-    JL_SportDataTypeMovementSteps       = 3,
-    ///压力
-    JL_SportDataTypeStress              = 4,
-    ///血氧饱和度
-    JL_SportDataTypeOxygenSaturation    = 5,
-    ///训练负荷
-    JL_SportDataTypeTrainingLoad        = 6,
-    ///最大摄氧量
-    JL_SportDataTypeMaxOxygenUptake     = 7,
-    ///运动恢复时间
-    JL_SportDataTypeRecoveryTime        = 8,
-    ///运动信息
-    JL_SportDataTypeSportMessage        = 9,
-};
-
-// 运动模式
-typedef NS_ENUM(UInt8, JL_SportPattern) {
-    JL_SportPatternRun          = 0,    ///跑步
-    JL_SportPatternClimb        = 1,    ///爬山
-    JL_SportPatternSwim         = 2,    ///游泳
-};
-
-// 运动数据格式
-typedef NS_ENUM(UInt8, JL_SportDataFormat) {
-    JL_SportDataFormatBeUint8                 = 1,
-    JL_SportDataFormatBeBigendUint16          = 2,
-    JL_SportDataFormatBeBigendUint32          = 4,
-};
-
-typedef NS_ENUM(UInt8, JL_WATCH_SETTING_MASK) {
-    JL_WATCH_SETTING_MASK_READ_INFO         = 0x00,///App读取设备信息
-    JL_WATCH_SETTING_MASK_SET_INFO          = 0x01,///向设备写入设置信 息
-    JL_WATCH_SETTING_MASK_RECIVE_INFO       = 0x02,///收到设备推送设置信息
-};
-
-/// 查询读取设备信息
-///使用示例:
-/// 如查询:传感器、连续测量心率、跌到监察
-/// 则对应的uint32_t 为:0x0000008A
-/// 即对应的Bit位指示为:0000 0000 0000 0000 0000 0000 1000 1010
-/// Bit0:保留(考虑是否用于做功能支持位)------ 0
-/// Bit1:传感器功能
-/// Bit2:久坐提醒
-/// Bit3:连续测量心率
-/// Bit4:运动心率提醒
-/// Bit5:压力自动检测
-/// Bit6:睡眠检测
-/// Bit7:跌到监察
-/// Bit8:抬腕监察
-/// Bit9:个人信息
-/// Bit10:蓝牙断开提醒
-/// Bit11:血氧测量提醒
-/// Bit12:紧急联系人
-typedef NS_ENUM(uint32_t, JL_WATCH_SETTING) {
-    JL_WATCH_SETTING_SENSOR_FUNC                        = 0x0002,     // Bit1:传感器功能
-    JL_WATCH_SETTING_SEDENTARY_REMIND                   = 0x0004,     // Bit2:久坐提醒
-    JL_WATCH_SETTING_CONTINUOUS_HEARTRATE_MEASUREMENT   = 0x0008,     // Bit3:连续测量心率
-    JL_WATCH_SETTING_EXERCISE_HEARTRATE_REMINDER        = 0x0010,     // Bit4:运动心率提醒
-    JL_WATCH_SETTING_AUTOMATIC_PRESSURE_DETECTION       = 0x0020,     // Bit5:压力自动检测
-    JL_WATCH_SETTING_SLEEP_DETECTION                    = 0x0040,     // Bit6:睡眠检测
-    JL_WATCH_SETTING_FALL_DETECTION                     = 0x0080,     // Bit7:跌到监察
-    JL_WATCH_SETTING_LIFTWRIST_DETECTION                = 0x0100,     // Bit8:抬腕监察
-    JL_WATCH_SETTING_PERSONAL_INFO                      = 0x0200,     // Bit9:个人信息
-    JL_WATCH_SETTING_BLUETOOTH_DISCONECTED_REMINDER     = 0x0400,     // Bit10:蓝牙断开提醒
-    JL_WATCH_SETTING_OXIMETRY                           = 0x0800,     //Bit11:血氧测量提醒
-    JL_WATCH_SETTING_EMERGENCY_CONTACT                  = 0x1000,      //Bit12:紧急联系人
-};
-
-/// 传感器功能开关
-/// ///使用示例:
-/// 如设置打开:计步器、计步器记录、血氧、血氧记录、海拔
-/// 则对应的uint16_t 为:0x73
-/// 即对应的Bit位指示为: 0111 0011
-/// Bit0:计步器开关
-/// Bit1:计步器记录开关
-/// Bit2:心率传感器开关
-/// Bit3:心率传感器记录开关
-/// Bit4:血氧传感器开关
-/// Bit5:血氧传感器记录开关
-/// Bit6:海拔气压传感器开关
-/// Bit7:海拔气压传感器记录开关
-typedef NS_ENUM(uint16_t, JL_SENSOR_FUNC_SWITCH) {
-    JL_SENSOR_FUNC_SWITCH_PEDOMETER                     = 0x01,     // Bit0:计步器开关
-    JL_SENSOR_FUNC_SWITCH_PEDOMETER_RECORD              = 0x02,     // Bit1:计步器记录开关
-    JL_SENSOR_FUNC_SWITCH_HEARTRATE                     = 0x04,     // Bit2:心率传感器开关
-    JL_SENSOR_FUNC_SWITCH_HEARTRATE_RECORD              = 0x08,     // Bit3:心率传感器记录开关
-    JL_SENSOR_FUNC_SWITCH_BLOODOXYGEN                   = 0x10,     // Bit4:血氧传感器开关
-    JL_SENSOR_FUNC_SWITCH_BLOODOXYGEN_RECORD            = 0x20,     // Bit5:血氧传感器记录开关
-    JL_SENSOR_FUNC_SWITCH_ALTITUDE_AIRPRESSURE          = 0x40,     // Bit6:海拔气压传感器开关
-    JL_SENSOR_FUNC_SWITCH_ALTITUDE_AIRPRESSURE_RECORD   = 0x80,     // Bit7:海拔气压传感器记录开关
-};
-
-///运动状态同步相关命令
-typedef NS_ENUM(UInt8, JL_WearSyncStatus) {
-    /// 读取运动信息
-    JL_WearSyncStatus_ReadInfo              = 0x00,
-    /// 开始运动
-    JL_WearSyncStatus_Start                 = 0x01,
-    /// APP结束运动
-    JL_WearSyncStatus_EndByApp              = 0x02,
-    /// 固件结束运动
-    JL_WearSyncStatus_EndByDevice           = 0x03,
-    /// 暂停运动
-    JL_WearSyncStatus_Pause                 = 0x04,
-    /// 继续运动
-    JL_WearSyncStatus_Continue              = 0x05,
-    /// 请求运动实时数据
-    JL_WearSyncStatus_RealTimeInfoRequire   = 0x06,
-};
-
-
-///运动状态
-typedef NS_ENUM(UInt8, WatchSportStatus) {
-    /// 暂停
-    WatchSportStatus_Pause  = 0x00,
-    /// 运动中
-    WatchSportStatus_Motion = 0x01
-};
-
-///心率模式
-typedef NS_ENUM(UInt8, WatchHeartRateType) {
-    ///最大心率模式
-    WatchHeartRate_Max  = 0x00,
-    ///存储心率模式
-    WatchHeartRate_Save = 0x01
-};
-/// 运动强度类型
-typedef NS_ENUM(UInt8, WatchExerciseIntensityType) {
-    ///非运动模式
-    WatchExercise_Not    = 0x00,
-    ///最大心率模式:热身           储备心率模式:有氧基础
-    WatchExercise_Level1 = 0x01,
-    ///最大心率模式:燃脂           储备心率模式:有氧进阶
-    WatchExercise_Level2 = 0x02,
-    ///最大心率模式:有氧耐力    储备心率模式:乳酸阈值
-    WatchExercise_Level3 = 0x03,
-    ///最大心率模式:无氧耐力    储备心率模式:无氧基础
-    WatchExercise_Level4 = 0x04,
-    ///最大心率模式:极限           储备心率模式:无氧进阶
-    WatchExercise_Level5 = 0x05
-};
-///睡眠类型
-typedef NS_ENUM(UInt8, WatchSleepType) {
-    ///清醒
-    WatchSleep_WideAwake         = 0xFF,
-    /// 浅睡
-    WatchSleep_Light             = 0x01,
-    /// 深睡
-    WatchSleep_Deep              = 0x02,
-    /// 快速眼动
-    WatchSleep_RapidEyeMovement  = 0x03,
-    /// 零星小睡
-    WatchSleep_SporadicNaps      = 0x04
-};
-
-
-@interface JLWatchEnum : NSObject
-
-/**
- *  运动数据类型转换为运动数据格式
- *  @param sportDataType 运动数据类型
- *  @return JL_SportDataFormat 运动数据格式
- */
-+ (JL_SportDataFormat)sportDataFormatFromSportDataType:(JL_SportDataType)sportDataType;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSync.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSync.h
deleted file mode 100644 (file)
index b4cd950..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-//
-//  JLWearSync.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/26.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JL_RCSP.h"
-#import "JLWatchEnum.h"
-#import "JL_EntityM.h"
-#import "JL_SDM_Header.h"
-#import "JL_WatchSyncProtocol.h"
-
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 穿戴设备状态同步指令
-@interface JLWearSync : NSObject
-
-+(instancetype)share;
-
-/// 加入协议响应
-/// @param delegate 对象
--(void)addProtocol:(id<JLWearSyncProtocol>)delegate;
-
-/// 移除协议响应
-/// @param delegate 对象
--(void)removeProtocol:(id<JLWearSyncProtocol>)delegate;
-
-/// 读取运动信息
-/// @param entity 设备entity
-/// @param block JLWearSyncInfoModel 回调
-/// 本条命令的回调通过JLWearSyncProtocol协议
-///-(void)jlWearSyncSportInfo:(JLWearSyncInfoModel *_Nonnull)model;
--(void)w_requireSportInfoWith:(JL_EntityM *)entity Block:(JL_CB_SyncSportInfo _Nullable)block;
-
-///开始运动命令
-/// @param type 运动类型
-///        0x00 :非运动模式
-///        0x01 :室外跑步
-///        0x02 :室内跑步
-/// @param entity 设备entity
-/// @param block 命令成功与否回调
--(void)w_SportStart:(uint8_t)type With:(JL_EntityM *)entity Block:(JL_CB_Status _Nullable)block;
-
-/// 结束运动命令
-/// @param entity 设备entity
-///本条命令的回调通过JLWearSyncProtocol协议
-///-(void)jlWearSyncStopMotion:(JLWearSyncFinishModel *_Nonnull)model With:(JL_EntityM *_Nonnull)entity;
--(void)w_SportFinishWith:(JL_EntityM*)entity;
-
-///暂停运动命令
-/// @param entity 设备entity
-/// @param block 命令成功与否回调
--(void)w_SportPauseWith:(JL_EntityM*)entity Block:(JL_CB_Status _Nullable)block;
-
-///继续运动命令
-/// @param entity 设备entity
-/// @param block 命令成功与否回调
--(void)w_SportContinueWith:(JL_EntityM*)entity Block:(JL_CB_Status _Nullable)block;
-
-/// 读取运动实时数据
-/// @param entity 设备entity
-///本条命令的回调通过JLWearSyncProtocol协议
--(void)w_requireRealTimeSportInfoWith:(JL_EntityM *)entity;
-
-/// 实时数据获取时间间隔设置
-/// @param interval 时间间隔,单位:ms
-/// @param entity 设备entity
--(void)pr_setTimeInterval:(UInt16)interval With:(JL_EntityM *)entity;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncCustom.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncCustom.h
deleted file mode 100644 (file)
index 130e239..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-//
-//  JLWearSyncCustom.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2022/4/13.
-//  Copyright © 2022 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JL_RCSP.h"
-#import "JL_EntityM.h"
-#import "JL_SDM_Header.h"
-
-
-
-NS_ASSUME_NONNULL_BEGIN
-
-@protocol JLWearSyncCustomPtl <NSObject>
-
-/// 运动信息返回
-/// @param model 运动信息对象
-/// @param entity 设备entity
--(void)jlWearSyncSportInfo:(JLWearSyncDataModel *_Nonnull)model With:(JL_EntityM *_Nonnull)entity;
-
-/// 结束运动返回内容
-/// @param model 结束时间相隔信息对象
-/// @param entity 设备entity
--(void)jlWearSyncStopMotion:(JLWearSyncFinishDataModel *_Nonnull)model With:(JL_EntityM *_Nonnull)entity;
-
-/// 开始运动返回消息
-/// @param entity 设备entity
--(void)jlWearSyncStartMotionWith:(JL_EntityM *_Nonnull)entity;
-
-/// 暂停运动
-/// @param entity 设备entity
--(void)jlWearSyncStatusPauseWith:(JL_EntityM *_Nonnull)entity;
-
-/// 继续运动
-/// @param entity 设备entity
--(void)jlWearSyncStatusContiuneWith:(JL_EntityM *_Nonnull)entity;
-
-/// 实时数据回调
-/// @param model 实时数据模型
-/// @param entity 设备entity
--(void)jlWearSyncRealTimeData:(JLWearSyncRealTimeData *_Nonnull)model With:(JL_EntityM *_Nonnull)entity;
-
-@end
-
-
-
-@interface JLWearSyncCustom : NSObject
-
-@property(nonatomic,weak)id<JLWearSyncCustomPtl> delegate;
-
-/// 读取运动信息
-/// @param entity 设备entity
-/// @param block JLWearSyncInfoModel 回调
-/// 本条命令的回调通过JLWearSyncProtocol协议
-///-(void)jlWearSyncSportInfo:(JLWearSyncInfoModel *_Nonnull)model;
--(void)w_requireSportInfoWith:(JL_EntityM *)entity Block:(JL_CB_SyncSportDataInfo _Nullable)block;
-
-///开始运动命令
-/// @param type 运动类型
-/// @param entity 设备entity
-/// @param block 命令成功与否回调
--(void)w_SportStart:(UInt8)type With:(JL_EntityM *)entity Block:(JL_CB_Status _Nullable)block;
-
-/// 结束运动命令
-/// @param entity 设备entity
-///本条命令的回调通过JLWearSyncProtocol协议
-///-(void)jlWearSyncStopMotion:(JLWearSyncFinishModel *_Nonnull)model With:(JL_EntityM *_Nonnull)entity;
--(void)w_SportFinishWith:(JL_EntityM*)entity;
-
-///暂停运动命令
-/// @param entity 设备entity
-/// @param block 命令成功与否回调
--(void)w_SportPauseWith:(JL_EntityM*)entity Block:(JL_CB_Status _Nullable)block;
-
-///继续运动命令
-/// @param entity 设备entity
-/// @param block 命令成功与否回调
--(void)w_SportContinueWith:(JL_EntityM*)entity Block:(JL_CB_Status _Nullable)block;
-
-/// 读取运动实时数据
-/// @param entity 设备entity
-///本条命令的回调通过JLWearSyncProtocol协议
--(void)w_requireRealTimeSportInfoWith:(JL_EntityM *)entity;
-
-/// 实时数据获取时间间隔设置
-/// @param interval 时间间隔,单位:ms
-/// @param entity 设备entity
--(void)pr_setTimeInterval:(UInt16)interval With:(JL_EntityM *)entity;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncFinishModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncFinishModel.h
deleted file mode 100644 (file)
index 8ef17f4..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-//
-//  JLWearSyncFinishModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/27.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JLWatchEnum.h"
-NS_ASSUME_NONNULL_BEGIN
-
-
-@interface JLWearSyncFinishDataModel:NSObject
-
-@property(nonatomic,strong)NSData *basicData;
-
-@end
-
-
-@interface JLWatchExerciseIntens:NSObject
-
-/// 运动强度类型
-@property(nonatomic,assign)WatchExerciseIntensityType type;
-
-/// 持续时间
-@property(nonatomic,assign)UInt32 duration;
-
-@end
-
-@interface JLWearSyncFinishModel : JLWearSyncFinishDataModel
-
-/// 结束时间
-@property(nonatomic,strong)NSDate *endTime;
-
-/// 运动恢复时间
-/// 格式 :hour : min
-@property(nonatomic,strong)NSString *recyleTime;
-
-/// 运动记录文件ID
-@property(nonatomic,assign)UInt16 sportId;
-
-/// 运动记录文件大小
-@property(nonatomic,assign)UInt16 fileSize;
-
-/// 运动强度类型数组
-@property(nonatomic,strong)NSArray <JLWatchExerciseIntens *> *durationArray;
-
-
-+(JLWearSyncFinishModel *)initWithData:(NSData*)data;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncInfoModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncInfoModel.h
deleted file mode 100644 (file)
index 9dc5086..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-//
-//  JLWearSyncInfoModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/27.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JLWatchEnum.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLWearSyncDataModel : NSObject
-
-/// 基础返回对象
-@property(nonatomic,strong)NSData *basicData;
-
-@end
-
-
-@interface JLWearSyncInfoModel : JLWearSyncDataModel
-
-///运动模式类型
-/// 0x00 非运动模式
-/// 0x01 户外跑步
-/// 0x02 室内跑步
-@property(nonatomic,assign)uint8_t sportType;
-
-/// 运动状态
-@property(nonatomic,assign)WatchSportStatus status;
-
-///运动Id
-@property(nonatomic,assign)double sportID;
-
-///设备是否包含GPS
-@property(nonatomic,assign)BOOL  hasGPS;
-
-///心率模式
-@property(nonatomic,assign)WatchHeartRateType heartRateType;
-
-///建议实时数据读取时间间隔,单位:ms
-@property(nonatomic,assign)UInt16   interval;
-
-/// 利用设备返回的数据初始化一个运动信息对象
-/// @param data 设备返回数据
-+(JLWearSyncInfoModel *)initWithData:(NSData *)data;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncRealTimeModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearSyncRealTimeModel.h
deleted file mode 100644 (file)
index ed10d1e..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-//
-//  JLWearSyncRealTimeModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/27.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JLWatchEnum.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-
-@interface JLWearSyncRealTimeData : NSObject
-
-@property(nonatomic,strong)NSData *basicData;
-
-@end
-
-@interface JLWearSyncRealTimeModel : JLWearSyncRealTimeData
-
-/// 类型
-@property(nonatomic,assign)UInt8 type;
-
-/// 运动步数
-@property(nonatomic,assign)UInt32 sportStep;
-
-/// 运动距离,单位:0.01公里
-@property(nonatomic,assign)UInt16 distance;
-
-/// 运动时长:单位:秒
-@property(nonatomic,assign)UInt32 exerciseTime;
-
-/// 速度,单位0:0.01公里/小时,(倒数为配速,单位:秒/公里)
-@property(nonatomic,assign)UInt16 speed;
-
-/// 热量,单位:千卡
-@property(nonatomic,assign)UInt16 calories;
-
-/// 步频,单位:步/分钟
-@property(nonatomic,assign)UInt16 cadence;
-
-///步幅,单位:厘米
-@property(nonatomic,assign)UInt16 stride;
-
-///实时运动强度状态
-@property(nonatomic,assign)WatchExerciseIntensityType statusType;
-
-///运动实时心率
-@property(nonatomic,assign)UInt8 heartRate;
-
-+(JLWearSyncRealTimeModel *)initWithData:(NSData *)data;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearable.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWearable.h
deleted file mode 100644 (file)
index 6096f32..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-//
-//  JLWearable.h
-//  Test
-//
-//  Created by EzioChan on 2021/4/6.
-//  Copyright © 2021 Zhuhai Jieli Technology Co.,Ltd. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JL_RCSP.h"
-#import "JL_EntityM.h"
-#import "JL_SDM_Header.h"
-#import "JL_WatchProtocol.h"
-#import "JLWearSync.h"
-#import "JLWearSyncCustom.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-#define JL_RECIVED_DATA     @"JL_RECIVED_DATA"
-
-
-/// 穿戴设备基础命令控制
-@interface JLWearable : NSObject
-
-@property(nonatomic,assign,readonly)uint8_t version;
-@property(nonatomic,strong)JL_CB_HeartRate      heartRate;
-@property(nonatomic,strong)JL_CB_AirPressure    airPressure;
-@property(nonatomic,strong)JL_CB_Altitude       alititude;
-@property(nonatomic,strong)JL_CB_MoveSteps      moveStep;
-@property(nonatomic,strong)JL_CB_Stress         stress;
-@property(nonatomic,strong)JL_CB_Oxsaturation   oxStaturation;
-@property(nonatomic,strong)JL_CB_TrainLoad      trainLoad;
-@property(nonatomic,strong)JL_CB_MaxOxg         maxOxg;
-@property(nonatomic,strong)JL_CB_RecTime        rectime;
-@property(nonatomic,strong)JL_CB_SportMsg       sportMsg;
-@property(nonatomic,strong)JL_CB_WatchLog       logMsg;
-@property(nonatomic,strong,readonly)JL_EntityM* responseEntity;
-
-+(instancetype)sharedInstance;
-
-/// 把对象加入协议
-/// @param delegate 对象
--(void)w_addDelegate:(id<JL_WatchProtocol>)delegate;
-
-/// 移除对象的协议
-/// @param delegate 对象
--(void)w_removeDelegate:(id<JL_WatchProtocol>)delegate;
-
-/// 移除所有对象的协议
--(void)w_removeAll;
-
-/// 请求穿戴设备的数据
-/// 使用例子:
-/**
- JLWearable *w = [JLWearable sharedInstance];
- NSMutableArray *array = [NSMutableArray new];
- [array addObject:[JL_SDM_HeartRate requireRealTime:YES Resting:YES Max:YES]];
- [array addObject:[JL_SDM_Altitude requireRealTime:YES min:NO Max:NO]];
- [array addObject:[JL_SDM_MoveSteps require]];
- w.heartRate = ^(JL_SDM_HeartRate *heartRate) {
-    //心率信息
- };
- w.alititude = ^(JL_SDM_Altitude *altitude) {
-    //海拔信息
- };
- JL_EntityM *entity = [[JL_EntityM alloc] init];
- [w requestSportData:array withEntity:entity];
-*/
-/// @param reqModels 数据模型,可参考JL_SDM_相关的类型请求,这是个父类,这里是通过多态的方式来实现选择性的请求
-/// @param entity 当前设备的entity
-///
--(void)w_requestSportData:(NSMutableArray<JLSportDataModel *>*)reqModels withEntity:(JL_EntityM *)entity;
-
-/// 私有测试接口
-/// @param data 数据
-/// @param entity 当前设备entity
-/// @param opcode 操作
--(void)pr_requestSportDataMask:(NSData *)data withEntity:(JL_EntityM *)entity opCode:(uint16_t)opcode;
-
-
-/// 收到数据解析
-/// @param pkg 收到的数据包
-/// @param entity 当前的entity
--(void)w_inputPKG:(JL_PKG*)pkg withEntity:(JL_EntityM *)entity;
-
-/// 推送天气到手表
-/// @param weather 天气内容
-/// @param entity 服务对象
-/// @param block 推送回调
--(void)w_syncWeather:(JL_MSG_Weather *)weather withEntity:(JL_EntityM *)entity result:(JL_CB_Status)block;
-
-
-/**
- 请求设备传感器的log
- 使用示例
- [[JLWearable shareInstance] w_transportLog:Log_Acceleration | Log_HeartRate_BloodOxy withEntity:entity];
- */
-/// 请求设备传感器的log
-/// @param model 请求类型(Log_Acceleration | Log_HeartRate_BloodOxy)
-/// @param entity 当前的entity
--(void)w_transportLog:(JL_WATCH_LOG_MASK)model withEntity:(JL_EntityM *)entity;
-
-
-//MARK: - 设备设置命令
-
-/// 查询读取设备信息
-/// @param target JL_WATCH_SETTING枚举,支持|运算同时设置多个设备类型信息
-/// @param entity 当前的entity
-/// /// 本方法的返回结果,需要接收对应的协议:JL_WatchProtocol ,并把遵循协议的对象加入到本单例中
-/// -(void)w_addDelegate:(id<JL_WatchProtocol>)delegate;
--(void)w_InquireDeviceFuncWith:(JL_WATCH_SETTING)target withEntity:(JL_EntityM *)entity;
-
-/// 向设备写入设置信息
-/// @param models 设置对应的功能模型
-/// @param entity 当前的entity
-/// @param block 回复设置的状态
-/// 使用示例:
-/// 如设置:传感器、久坐提醒、蓝牙断开提醒
-///   NSMutableArray <JLwSettingModel *>* models = [NSMutableArray new];
-/// /*计步相关传感器*/
-/// JLSensorFuncModel *model = [[JLSensorFuncModel alloc] initWhthFuncByte:0x0073];//详情设置可参考相关接口
-/// [models addObject:model];
-/// /*久坐设置*/
-/// JLSedentaryRmdModel *model1 = [[JLSedentaryRmdModel alloc] initWithModel:s_Shake Status:true];
-/// [models addObject:model1];
-/// /*蓝牙断开提醒*/
-/// JLDisconnectRemindModel *model2 = [[JLDisconnectRemindModel alloc] initWithModel:s_BrightScreen Status:true];
-/// [models addObject:model2];
-/// [[JLWearable sharedInstance] w_SettingDeviceFuncWith:models withEntity:requestEntity]
-/// 本方法的返回结果,需要接收对应的协议:JL_WatchProtocol ,并把遵循协议的对象加入到本单例中
-/// -(void)w_addDelegate:(id<JL_WatchProtocol>)delegate;
--(void)w_SettingDeviceFuncWith:(NSArray <JLwSettingModel *> *)models withEntity:(JL_EntityM *)entity result:(JL_CB_Status)block;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWristLiftDetectionModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLWristLiftDetectionModel.h
deleted file mode 100644 (file)
index c7a838e..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-//
-//  JLWristLiftDetectionModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/12.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLwSettingModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 抬腕监测设置
-@interface JLWristLiftDetectionModel : JLwSettingModel
-///开关
-@property(nonatomic,assign)WatchSwitchType status;
-/// 提醒模式
-@property(nonatomic,assign)WatchRemindType rType;
-/// 开始时间
-@property(nonatomic,strong)WatchTimer *start;
-
-/// 结束时间
-@property(nonatomic,strong)WatchTimer *end;
-
-
--(instancetype)initWithData:(NSData *)data;
-
-/// 构建一个抬腕提醒设置对象
-/// @param type 提醒类型
-/// @param status 开关类型
-/// @param begin 开始时间
-/// @param ed 结束时间
-- (instancetype)initWithModel:(WatchRemindType)type Status:(WatchSwitchType )status Begin:(WatchTimer *)begin End:(WatchTimer *)ed;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_AlarmClockManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_AlarmClockManager.h
deleted file mode 100644 (file)
index 5b2f837..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-//
-//  JL_AlarmClockManager.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/12/16.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JLModel_AlarmSetting.h>
-#import <JL_BLEKit/RTC_RingInfo.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JLModel_RTC.h>
-#import <JL_BLEKit/JLModel_Ring.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_RtcOperate) {
-    JL_FlashOperateFlagRead             = 0x00, //读取
-    JL_FlashOperateFlagWrite            = 0x01, //设置
-};
-
-typedef void(^JL_RTC_ALARM_BK)(NSArray <JLModel_AlarmSetting *>* __nullable array, uint8_t flag);
-
-typedef void(^JL_RTC_GET_ALARM_BK)(NSArray <JLModel_RTC *>* __nullable alarms,NSError * __nullable error);
-
-#pragma mark ---> 闹钟响与停止
-///闹钟正在响
-extern NSString *kJL_MANAGER_RTC_RINGING;
-
-///闹钟停止响
-extern NSString *kJL_MANAGER_RTC_RINGSTOP;
-
-//闹钟铃声试听
-extern NSString *kJL_MANAGER_RTC_AUDITION;
-
-
-/// RTC闹钟管理者
-@interface JL_AlarmClockManager : JL_FunctionBaseManager
-
-///RTC 版本
-@property (assign,nonatomic) uint8_t             rtcVersion;
-///是否支持闹铃设置
-@property (assign,nonatomic) JL_RTCAlarmType     rtcAlarmType;
-///设备当前时间
-@property (strong,nonatomic) JLModel_RTC         *rtcModel;
-///设备闹钟数组
-@property (strong,nonatomic) NSMutableArray<JLModel_RTC *>      *rtcAlarms;
-///默认铃声
-@property (strong,nonatomic) NSMutableArray<JLModel_Ring *>      *rtcDfRings;
-
-
-/// 查询设备闹钟
-/// - Parameter result: 设备回调
--(void)cmdRtcGetAlarms:(JL_RTC_GET_ALARM_BK)result;
-
-
-/// 设置/增加闹钟
-/// - Parameters:
-///   - array: array 闹钟模型数组
-///   - result: 结果回调
--(void)cmdRtcSetArray:(NSArray<JLModel_RTC *>*)array Result:(JL_CMD_RESPOND __nullable)result;
-
-
-/// 删除闹钟
-/// - Parameters:
-///   - array: 闹钟序号数组
-///   - result: 设备回复
--(void)cmdRtcDeleteIndexArray:(NSArray<NSNumber *>*)array Result:(JL_CMD_RESPOND __nullable)result;
-
-
-/// 停止闹钟响声
-/// - Parameter result: 设备回复
--(void)cmdRtcStopResult:(JL_CMD_RESPOND __nullable)result;
-
-
-/// 闹钟试听响铃
-/// - Parameters:
-///   - rtc: 闹钟模型
-///   - option: 启停标记
-///   - result: 设备回复
--(void)cmdRtcAudition:(JLModel_RTC *)rtc Option:(BOOL)option result:(JL_CMD_RESPOND __nullable)result;
-
-
-/// 闹铃设置
-/// @param operate 0x00:读取 0x01:设置
-/// @param index 掩码 (0x01设置第1个闹钟,0x03设置第一个和第二个闹钟)
-/// @param setting 设置选项,读取时无需传入
-/// @param result 设备回复
--(void)cmdRtcOperate:(JL_RtcOperate)operate
-               Index:(uint8_t)index
-             Setting:(JLModel_AlarmSetting* __nullable)setting
-              Result:(JL_RTC_ALARM_BK __nullable)result;
-
-
-/// 解析闹钟数据内容
-/// @param infoData 数据内容
-/// @param ltvVersion LTV的版本
--(void)parseData:(NSData *)infoData WithLtyType:(uint8_t)ltvVersion;
-
-/// 【闹钟信息】解析
-/// - Parameters:
-///   - data: 需要解析的数据
-///   - rtcType: RTC类型
-+(NSMutableArray<JLModel_RTC*> *)makeOutRtc:(NSData*)data RtcType:(uint8_t)rtcType;
-
-
-/// [默认闹钟铃声]解析
-/// - Parameter data: [默认闹钟铃声]数据
-+(NSMutableArray<JLModel_Ring*> *)makeOutRtcDefaultRing:(NSData *)data;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_Assist.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_Assist.h
deleted file mode 100644 (file)
index 9c87f40..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-//
-//  JL_Assist.h
-//  QCY_Demo
-//
-//  Created by 杰理科技 on 2021/8/12.
-//  Copyright © 2021 杰理科技. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <CoreBluetooth/CoreBluetooth.h>
-
-NS_ASSUME_NONNULL_BEGIN
-typedef void(^JL_Assist_BK)(BOOL isPaired);
-
-@class JL_ManagerM;
-
-@interface JL_Assist : NSObject
-@property(strong,nonatomic)JL_ManagerM        *mCmdManager;   //命令中心
-@property(strong,nonatomic)NSString           *mService;      //服务号
-@property(strong,nonatomic)NSString           *mRcsp_W;       //特征:RCSP写
-@property(strong,nonatomic)NSString           *mRcsp_R;       //特征:RCSP读
-@property(strong,nonatomic)NSData *__nullable mPairKey;       //握手(配对)秘钥
-@property(assign,nonatomic)BOOL               mNeedPaired;    //是否需要配对
-@property(assign,nonatomic)BOOL               mLogData;       //是否打印裸数据
-@property(assign,nonatomic)NSInteger          mLimitMtu;      //(默认40)在最大的MTU基础上减少数据量
-
-/// Execute in a method 「- (void)centralManagerDidUpdateState:」
-/// @param state CBManagerState
--(void)assistUpdateState:(CBManagerState)state;
-
-/// Execute in a method 「- (void)centralManager:didDisconnectPeripheral:error:」
-/// @param peripheral CBPeripheral
--(void)assistDisconnectPeripheral:(CBPeripheral *)peripheral;
-
-
-/// Execute in a method 「- (void)peripheral:didDiscoverServices:」
-/// @param service CBService
-/// @param peripheral CBPeripheral
--(void)assistDiscoverCharacteristicsForService:(CBService*)service
-                                    Peripheral:(CBPeripheral*)peripheral;
-
-/// Execute in a method 「- (void)peripheral:didUpdateNotificationStateForCharacteristic:error:」
-/// @param characteristic CBCharacteristic
-/// @param peripheral CBPeripheral
-/// @param result JL_Assist_BK (YES:配对成功   NO:配对失败)
--(void)assistUpdateCharacteristic:(nonnull CBCharacteristic *)characteristic
-                       Peripheral:(CBPeripheral*)peripheral
-                           Result:(JL_Assist_BK)result;
-
-/// Execute in a method 「- (void)peripheral:didUpdateValueForCharacteristic:error:」
-/// @param characteristic CBCharacteristic
--(void)assistUpdateValueForCharacteristic:(CBCharacteristic *)characteristic;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BLEAction.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BLEAction.h
deleted file mode 100644 (file)
index 8eb5a9f..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-//
-//  JL_BLEAction.h
-//  JL_BLEKit
-//
-//  Created by zhihui liang on 2018/11/10.
-//  Copyright © 2018 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- *  BLE数据通知
- */
-extern NSString *kJL_RCSP_RECEIVE;      //Rcsp数据【接收】
-extern NSString *kJL_RCSP_SEND;         //Rcsp数据【发送】
-
-
-typedef void(^ATC_Block)(BOOL ret);
-@protocol JL_BLEActionDelegate <NSObject>
-@optional
--(void)onPairOutputData:(NSData*)data;
-
-@end
-
-@interface JL_BLEAction : NSObject
-@property(nonatomic,weak)id<JL_BLEActionDelegate>delegate;
-
-+(id)sharedMe;
-
-/**
- 过滤其余蓝牙设备
- @param key 过滤码
- @param advertData 蓝牙广播字典
- @return NSDictionary 广播包含信息字典
- */
-+(NSDictionary*)bluetoothKey_1:(NSData*)key Filter:(NSDictionary*)advertData;
-
-/**
- 蓝牙设备配对
- @param pKey 配对码
- @param bk   配对回调YES:成功 NO:失败
- */
--(void)bluetoothPairingKey:(NSData *__nullable)pKey Result:(ATC_Block)bk;
--(void)inputPairData:(NSData*)rData;
-
-#pragma mark - 蓝牙根据广播包回连
-
-/**
- *  获取广播包kCBAdvDataManufacturerData里面 'JLOTA' 标识的蓝牙地址
- *  @param kCBAdvDataManufacturerData 广播包
- */
-+ (NSString * _Nullable)otaBleMacAddressFromCBAdvDataManufacturerData:(NSData *)kCBAdvDataManufacturerData;
-
-/**
- *  判断当前蓝牙地址是否等于广播包kCBAdvDataManufacturerData里面的蓝牙地址
- *  @param otaBleMacAddress ota升级中设备的蓝牙地址
- *  @param kCBAdvDataManufacturerData 广播包
- */
-+ (Boolean)otaBleMacAddress:(NSString *)otaBleMacAddress isEqualToCBAdvDataManufacturerData:(NSData *)kCBAdvDataManufacturerData;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BLEKit.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BLEKit.h
deleted file mode 100644 (file)
index 0b93edd..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-//
-//  JL_BLEKit.h
-//  JL_BLEKit
-//
-//  Created by zhihui liang on 2018/11/9.
-//  Copyright © 2018 www.zh-jieli.com. All rights reserved.
-//
-
-#import <UIKit/UIKit.h>
-#import <Foundation/Foundation.h>
-//! Project version number for JL_BLEKit.
-FOUNDATION_EXPORT double JL_BLEKitVersionNumber;
-
-//! Project version string for JL_BLEKit.
-FOUNDATION_EXPORT const unsigned char JL_BLEKitVersionString[];
-
-#import <JL_BLEKit/JL_Tools.h>
-#import <JL_BLEKit/JL_RCSP.h>
-#import <JL_BLEKit/JL_OpCode.h>
-#import <JL_BLEKit/JL_Handle.h>
-#import <JL_BLEKit/JL_BLEAction.h>
-#import <JL_BLEKit/JL_vad.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-
-#import <JL_BLEKit/JLModel_Device.h>
-#import <JL_BLEKit/JLModel_RTC.h>
-#import <JL_BLEKit/JLModel_Ring.h>
-#import <JL_BLEKit/JLModel_File.h>
-#import <JL_BLEKit/JLModel_FM.h>
-#import <JL_BLEKit/JLModel_Headset.h>
-#import <JL_BLEKit/JLModel_BT.h>
-#import <JL_BLEKit/JLModel_EQ.h>
-#import <JL_BLEKit/JLModel_SPEEX.h>
-#import <JL_BLEKit/JLModel_Flash.h>
-#import <JL_BLEKit/JLModel_ANC.h>
-#import <JL_BLEKit/JLModel_AlarmSetting.h>
-#import <JL_BLEKit/RTC_RingInfo.h>
-#import <JL_BLEKit/JLModel_SmallFile.h>
-#import <JL_BLEKit/JLCmdBasic.h>
-#import <JL_BLEKit/JLModelVocalBoost.h>
-#import <JL_BLEKit/JLModelNoiseDetection.h>
-#import <JL_BLEKit/JLModelSceneNoiseReduction.h>
-#import <JL_BLEKit/JLModelSmartPickFree.h>
-
-#import <JL_BLEKit/JL_BLEMultiple.h>
-#import <JL_BLEKit/JL_EntityM.h>
-#import <JL_BLEKit/JL_ManagerM.h>
-#import <JL_BLEKit/JL_Assist.h>
-
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_FileManager.h>
-#import <JL_BLEKit/JL_SmallFileManager.h>
-#import <JL_BLEKit/JL_FlashOperateManager.h>
-#import <JL_BLEKit/JL_BinChargeManager.h>
-#import <JL_BLEKit/JL_CallManager.h>
-#import <JL_BLEKit/JL_AlarmClockManager.h>
-#import <JL_BLEKit/JL_LightManager.h>
-#import <JL_BLEKit/JL_TwsManager.h>
-#import <JL_BLEKit/JL_SoundCardManager.h>
-#import <JL_BLEKit/JL_LrcManager.h>
-#import <JL_BLEKit/JL_SpeexManager.h>
-#import <JL_BLEKit/JL_SpeechAIttsHandler.h>
-#import <JL_BLEKit/JL_FindDeviceManager.h>
-#import <JL_BLEKit/JL_MusicControlManager.h>
-#import <JL_BLEKit/JLDevPlayerCtrl.h>
-#import <JL_BLEKit/JL_FmManager.h>
-#import <JL_BLEKit/JL_SystemEQ.h>
-#import <JL_BLEKit/JL_SystemTime.h>
-#import <JL_BLEKit/JL_SystemVolume.h>
-#import <JL_BLEKit/JL_CustomManager.h>
-#import <JL_BLEKit/JL_BatchManger.h>
-#import <JL_BLEKit/JL_DeviceLogs.h>
-#import <JL_BLEKit/JLDhaFitting.h>
-#import <JL_BLEKit/JLAutoConfigAnc.h>
-#import <JL_BLEKit/JLDeviceConfig.h>
-#import <JL_BLEKit/JL_BigDataManager.h>
-#import <JL_BLEKit/JLAiManager.h>
-#import <JL_BLEKit/JLAIDialManager.h>
-
-
-#import <JL_BLEKit/JLWearable.h>
-#import <JL_BLEKit/JLSportDataModel.h>
-#import <JL_BLEKit/JL_SDM_Stress.h>
-#import <JL_BLEKit/JL_SDM_Altitude.h>
-#import <JL_BLEKit/JL_SDM_MaxOxg.h>
-#import <JL_BLEKit/JL_SDM_RecTime.h>
-#import <JL_BLEKit/JL_SDM_HeartRate.h>
-#import <JL_BLEKit/JL_SDM_MoveSteps.h>
-#import <JL_BLEKit/JL_SDM_TrainLoad.h>
-#import <JL_BLEKit/JL_SDM_AirPressure.h>
-#import <JL_BLEKit/JL_SDM_OxSaturation.h>
-#import <JL_BLEKit/JL_SDM_SportMessage.h>
-#import <JL_BLEKit/JL_SDM_Header.h>
-#import <JL_BLEKit/NSData+ToUnit.h>
-#import <JL_BLEKit/JL_MSG_Weather.h>
-#import <JL_BlEKit/JL_MSG_Func.h>
-#import <JL_BLEKit/JL_NFC.h>
-#import <JL_BLEKit/JLWatchEnum.h>
-#import <JL_BLEKit/JL_WatchProtocol.h>
-
-#import <JL_BLEKit/ECThreadHelper.h>
-#import <JL_BLEKit/JLHttpHelper.h>
-#import <JL_BLEKit/ECBDTObjc.h>
-#import <JL_BLEKit/ECBDTManager.h>
-#import <JL_BLEKit/JLModelDevFunc.h>
-#import <JL_BLEKit/JLModelCardInfo.h>
-#import <JL_BLEKit/JLPublicSetting.h>
-#import <JL_BLEKit/JL4GUpgradeManager.h>
-#import <JL_BLEKit/JLDeviceConfigTws.h>
-#import <JL_BLEKit/JLDialInfoExtentedModel.h>
-#import <JL_BLEKit/JLDialInfoExtentManager.h>
-
-
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BLEMultiple.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BLEMultiple.h
deleted file mode 100644 (file)
index aff3d55..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-//
-//  JL_BLEMultiple.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2020/9/1.
-//  Copyright © 2020 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <AVFoundation/AVFoundation.h>
-#import <CoreBluetooth/CoreBluetooth.h>
-#import <UIKit/UIKit.h>
-
-#import <JL_BLEKit/JL_EntityM.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- *  BLE状态通知
- */
-extern NSString *kJL_BLE_M_FOUND;               //发现设备
-extern NSString *kJL_BLE_M_FOUND_SINGLE;        //发现单个设备
-extern NSString *kJL_BLE_M_ENTITY_CONNECTED;    //连接有更新
-extern NSString *kJL_BLE_M_ENTITY_DISCONNECTED; //断开连接
-extern NSString *kJL_BLE_M_ON;                  //BLE开启
-extern NSString *kJL_BLE_M_OFF;                 //BLE关闭
-extern NSString *kJL_BLE_M_EDR_CHANGE;          //经典蓝牙输出通道变化
-extern NSString *kJL_BLE_M_SAVE_BLEADDR;        //存储EDR地址
-extern NSString *kJL_BLE_M_ANCS_UPDATE;         //设备ANCS权限变更
-
-
-@interface JL_BLEMultiple : NSObject
-@property (strong, nonatomic) NSData   *__nullable filterKey;         //过滤码
-@property (strong, nonatomic) NSData   *__nullable pairKey;           //配对码
-@property (assign, nonatomic) BOOL                 BLE_IS_CONNECTING; //是否有设备正在连接
-@property (assign, nonatomic) BOOL                 BLE_FILTER_ENABLE; //是否【开启过滤】
-@property (assign, nonatomic) BOOL                 BLE_PAIR_ENABLE;   //是否【开启配对】
-@property (assign, nonatomic) int                  BLE_TIMEOUT;       //连接超时时间
-
-@property (strong, nonatomic) NSMutableArray<JL_EntityM *> *blePeripheralArr;   //发现的设备
-@property (strong, nonatomic) NSMutableArray<JL_EntityM *> *bleConnectedArr;    //已连接的设备
-@property (assign, nonatomic) CBManagerState                bleManagerState;    //蓝牙状态
-@property (strong, nonatomic) NSArray<NSNumber *> *__nullable bleDeviceTypeArr;   //选择的设备类型<@(JL_DeviceType)>
-@property (strong, nonatomic) NSArray<NSNumber *> *__nullable managerClassArr;    //实例化的业务逻辑<@(JL_CLASS)>
-
-
-@property (strong, nonatomic) NSString             *JL_BLE_SERVICE;   //服务号
-@property (strong, nonatomic) NSString             *JL_BLE_RCSP_W;    //命令【写】通道
-@property (strong, nonatomic) NSString             *JL_BLE_RCSP_R;    //命令【读】通道
-
-+(NSString*)versionOfSDK;
-
-/**
- 开始搜索
- */
--(void)scanStart;
-
-/**
- 继续搜索
- */
--(void)scanContinue;
-
-/**
- 停止搜索
- */
--(void)scanStop;
-
-
-/// 蓝牙中心管理器
--(CBCentralManager *)getCenterManaer;
-
-/**
- 通过UUID生成Entity。
- */
--(JL_EntityM *_Nullable)makeEntityWithUUID:(NSString*)uuid;
-
-/// 通过UUID获得一个已连接过的entity
-/// @param uuid uuid
-/// @param status 获取后是否继续蓝牙搜索
-/// @param result 结果
--(void)getEntityWithSearchUUID:(NSString *)uuid SearchStatus:(BOOL)status Result:(void(^)(JL_EntityM *_Nullable entity))result;
-/**
- 连接设备
- @param entity 蓝牙设备类
- */
--(void)connectEntity:(JL_EntityM*)entity Result:(JL_EntityM_STATUS_BK)result;
-
-/// 根据设备Mac去回连
-/// @param mac Mac地址
-/// @param result 回调
--(void)connectEntityForMac:(NSString *)mac Result:(JL_EntityM_STATUS_BK)result;
-
-/**
- 断开连接
- */
--(void)disconnectEntity:(JL_EntityM*)entity Result:(JL_EntityM_STATUS_BK)result;
-
-/**
- 更新名字信息
-*/
--(void)updateHistoryRename:(NSString*)name withUuid:(NSString*)uuid;
-
-/// 获取当前正在连接的entity
--(JL_EntityM *__nullable)connectingEntity;
-
-/**
- 返回经典蓝牙信息
- @return @{@"ADDRESS":@"7c9a1da7330e",
-           @"TYPE"   :@"BluetoothA2DPOutput",
-           @"NAME"   :@"earphone"}
- */
-+(NSDictionary*)outputEdrInfo;
-
-/**
- 返回经典蓝牙edr列表
- @return 蓝牙edr列表
- */
-+(NSArray<NSString *>*)outputEdrList;
-
-
-#pragma mark - ota升级
-/**
- *  ota升级功能
- *  @param mBleEntityM 当前ota升级的蓝牙设备(JL_EntityM)
- *  @param otaFilePath ota升级文件路径
- *  @param result ota升级过程回调
- */
-- (void)otaFuncWithEntityM:(JL_EntityM *)mBleEntityM
-              withFilePath:(NSString *)otaFilePath
-                    Result:(JL_OTA_RT __nullable)result;
-- (void)setOtaReconnectBleAddr:(NSString* __nullable)addr;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BatchManger.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BatchManger.h
deleted file mode 100644 (file)
index c28d75b..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-//
-//  JL_BatchManger.h
-//  JL_BLEKit
-//
-//  Created by 李放 on 2021/12/21.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_BatchType) {
-    ///开始
-    BatchType_Begin =  0x00,
-    ///结束
-    BatchType_Finish = 0x80,
-    ///取消
-    BatchType_Cancel = 0x81,
-};
-
-typedef NS_ENUM(NSUInteger, JL_BatchOptionType) {
-    /// 格式化操作
-    BatchOption_Format = 0x00,
-    ///  未知操作
-    BatchOption_unKnow = 0xFF,
-};
-
-@interface JL_BatchManger : JL_FunctionBaseManager
-
-#pragma mark ---> 批操作命令
-typedef void(^JL_BATCH_BK)(uint8_t flag);
-/**
- @param type      0x00:开始 0x80:结束 0x81:结束
- @param array    @[@(JL_BatchOptionType)],0x00代表格式化操作。
- @param result  操作回调 0x00:成功 0x01:失败
- */
--(void)cmdBatchType:(JL_BatchType)type
-         Operations:(NSArray<NSNumber *>*)array
-             Result:(JL_BATCH_BK __nullable)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BigDataManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BigDataManager.h
deleted file mode 100644 (file)
index c1b94cf..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-//
-//  JL_BigDataManager.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2022/12/7.
-//  Copyright © 2022 www.zh-jieli.com. All rights reserved.
-//
-
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-
-@class JL_BigData;
-
-typedef NS_ENUM(UInt8, JL_BigDataStatus) {
-    JL_BigDataStatusSendSuccess               = 0,        //成功
-    JL_BigDataStatusSendFailCRC               = 1,        //CRC校验失败
-    JL_BigDataStatusSendFailSEQ               = 2,        //SEQ不对
-    JL_BigDataStatusSendFailFormat            = 3,        //数据类型不支持
-    JL_BigDataStatusSendFailWay               = 4,        //传输方式不支持
-    JL_BigDataStatusSendFailOutOfRange        = 5,        //数据长度超范围
-    JL_BigDataStatusSendFailWrite             = 6,        //写入数据失败
-    JL_BigDataStatusSendFailMissingParameter  = 7,        //缺少配置参数
-    JL_BigDataStatusSendFailCmd               = 8,        //命令错误
-    JL_BigDataStatusSendFailTimeout           = 9,        //超时
-    JL_BigDataStatusGet                       = 10,       //收到数据
-    JL_BigDataStatusSendFailUnknown           = 0xff,     //未知错误
-};
-typedef void(^JL_BIGDATA_RT)(JL_BigData *bigData);
-
-@interface JL_BigDataManager : JL_FunctionBaseManager
-
-//设立大数据监听(接收阿里数据,必须放在单利类中!!!)
--(void)cmdBigDataMonitor:(JL_BIGDATA_RT)result;
-
-//发送大数据
--(void)cmdInputBigData:(JL_BigData*)data;
-
-@end
-
-@interface JL_BigData : NSObject
-@property(nonatomic,assign)JL_BigDataStatus mResult;
-@property(nonatomic,assign)NSInteger        mIndex;
-
-///0:原始数据
-///1:阿里云数据
-///2:RTC数据
-///3: AI云
-///4:TTS语音合成
-///5: 平台接口认证信息
-@property(nonatomic,assign)uint8_t          mType;
-@property(nonatomic,assign)uint8_t          mVersion;
-@property(nonatomic,strong)NSData           *mData;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BinChargeManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_BinChargeManager.h
deleted file mode 100644 (file)
index 2475199..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-//
-//  JL_BinCharge.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/12/16.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_ScanSetting) {
-    JL_ScanTimeout     = 0x00, //超时结束
-    JL_ScanInterrupt   = 0x01, //打断结束
-    JL_ScanFail        = 0x02, //开启扫描失败
-    JL_Scaning         = 0x03, //正在扫描
-};
-
-typedef NS_ENUM(UInt8, JL_ReverberationFunType) {
-    JL_ReverberationAndDynamicType       = 0x00, //支持混响和动态限幅器
-    JL_OnlyReverberationType             = 0x01, //仅支持混响
-    JL_OnlyDynamicLimiterType            = 0x02, //仅支持动态限幅器
-};
-
-typedef void(^JL_CMD_VALUE_BK)(uint32_t value);
-typedef void(^JL_LOW_DELAY_BK)(uint16_t mtu, uint32_t delay);
-
-@interface JL_BinChargeManager : JL_FunctionBaseManager
-
-#pragma mark ---> 通知固件App的信息
-// @param flag  未知
--(void)cmdSetAppInfo:(uint8_t)flag;
-
-#pragma mark ---> 设置通讯MTU
-// @param mtu app请求mtu⼤⼩
-// @param result 实际设置的Mtu⼤⼩
--(void)cmdSetMTU:(uint16_t)mtu Result:(JL_CMD_VALUE_BK __nullable)result;
-
-#pragma mark ---> 开启蓝⽛扫描
-// @param timeout 超时时间
-// @param result  0:成功 1:失败
--(void)cmdBTScanStartTimeout:(uint16_t)timeout Result:(JL_CMD_VALUE_BK __nullable)result;
-
-#pragma mark ---> 推送蓝⽛扫描结果
-// 返回【蓝⽛数据结构】数组
-// @see JLBTModel
-extern NSString *kJL_MANAGER_BT_LIST_RESULT;
-
-#pragma mark ---> 停⽌蓝⽛扫描(APP-->固件)
-// @param reason  0:超时结束  1:打断结束  2:开启扫描失败  3:正在扫描
-// @param result  0:成功  1:失败
--(void)cmdBTScanStopReason:(JL_ScanSetting)reason Result:(JL_CMD_VALUE_BK __nullable)result;
-
-#pragma mark ---> 停⽌蓝⽛扫描(固件-->APP)
-// 0:超时结束  1:打断结束  2:开启扫描失败  3:正在扫描
-extern NSString *kJL_MANAGER_BT_SCAN_STOP_NOTE;
-
-#pragma mark ---> 通知固件连接指定的蓝⽛设备
-// @param addr 蓝⽛设备地址【设置0x00 00 00 00 00 00 则是断开外设的连接】
-// @param result  0:成功  1:失败
--(void)cmdBTConnectAddress:(NSData*)addr Result:(JL_CMD_VALUE_BK __nullable)result;
-
-extern NSString *kJL_MANAGER_ID3_Title;
-extern NSString *kJL_MANAGER_ID3_Artist;
-extern NSString *kJL_MANAGER_ID3_Album;
-extern NSString *kJL_MANAGER_ID3_Time;
-extern NSString *kJL_MANAGER_ID3_Current;
-extern NSString *kJL_MANAGER_ID3_PlayPush;
-
-#pragma mark ---> 主动设置ID3播放状态
--(void)setID3_Status:(uint8_t)st;
-
-#pragma mark ---> ID3 播放/暂停
--(void)cmdID3_PP;
-
-#pragma mark ---> ID3 上一曲
--(void)cmdID3_Before;
-
-#pragma mark ---> ID3 下一曲
--(void)cmdID3_Next;
-
-#pragma mark ---> ID3 开启/暂停 音乐信息推送
--(void)cmdID3_PushEnable:(BOOL)enable;
-
-#pragma mark ---> 设置高低音 [-12,+12]
--(void)cmdSetLowPitch:(int)p_low HighPitch:(int)p_high;
-
-#pragma mark ---> 设置混响值[深度和强度][0,100]、限幅值[-60,0]
-/// 设置混响值
-/// @param depthValue 深度 0-100
-/// @param intensityValue 强度 0-100
-/// @param dynamicLimiterValue 动态限幅值 -60 - 0
-/// @param reverOn 是否开启
-/// @param type 混响类型
--(void)cmdSetReverberation:(int)depthValue
-            IntensityValue:(int)intensityValue
-       DynamicLimiterValue:(int)dynamicLimiterValue
-          SwtichReverState:(int)reverOn
-                   FunType:(JL_ReverberationFunType)type;
-
-#pragma mark ---> 获取低延时参数
--(void)cmdGetLowDelay:(JL_LOW_DELAY_BK __nullable)result;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_CallManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_CallManager.h
deleted file mode 100644 (file)
index 2b704cd..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-//
-//  JL_CallManager.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/12/16.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JL_CallManager : JL_FunctionBaseManager
-
-#pragma mark ---> 拨打电话
-/**
- @param number 电话号码
- @param result 回复
- */
--(void)cmdPhoneCall:(NSString*)number Result:(JL_CMD_RESPOND __nullable)result;
-
-#pragma mark ---> 设备通话状态
-extern NSString *kJL_MANAGER_CALL_STATUS;
-
-#pragma mark - 案子API
-#pragma mark ---> 通知设备播放来电号码的方式
-/**
- 通知设备播放来电号码的方式
- @param way        正常模式:0x00  播放文件模式:0x01
- */
--(void)cmdPhoneNumberOnWay:(uint8_t)way;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_CustomManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_CustomManager.h
deleted file mode 100644 (file)
index 22415aa..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-//
-//  JL_CustomManager.h
-//  JL_BLEKit
-//  Created by 李放 on 2021/12/21.
-//  Modify by EzioChan on 2023/03/16.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JL_FunctionBaseManager.h"
-#import "JL_TypeEnum.h"
-#import "JL_Tools.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-///设备返回的自定义数据
-extern NSString *kJL_MANAGER_CUSTOM_DATA;
-/// 设备返回的自定义数据(回复包)
-extern NSString *kJL_MANAGER_CUSTOM_DATA_RSP;
-
-
-@protocol JLCustomCmdPtl <NSObject>
-
-/// 设备回复自定义数据内容
-/// - Parameters:
-///   - device: 设备句柄
-///   - data: 回复数据内容
--(void)customCmdResponse:(JL_ManagerM *)manager Status:(uint8_t)status WithData:(NSData *)data;
-
-/// 设备主动请求
-/// - Parameters:
-///   - device: 设备
-///   - data: 请求数据内容
--(void)customCmdRequire:(JL_ManagerM *)manager WithData:(NSData *)data;
-
-
-@end
-
-@interface JL_CustomManager : JL_FunctionBaseManager
-
-/// 数据回调委托
-@property(nonatomic,weak)id<JLCustomCmdPtl> delegate;
-
-#pragma mark ---> 用户自定义数据
-/**
- @param data 数据
- @param result 回复
- */
--(void)cmdCustomData:(NSData* __nullable)data
-              Result:(JL_CMD_RESPOND __nullable)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_DeviceLogs.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_DeviceLogs.h
deleted file mode 100644 (file)
index 01d1776..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-//
-//  JL_DeviceLogs.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2022/5/12.
-//  Copyright © 2022 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JL_FunctionBaseManager.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef enum : UInt8 {
-    LogTypeDownloading = 0x00,
-    LogTypeFailed = 0x01,
-    LogTypeSucceed = 0x02,
-    LogTypeNoLog = 0x03
-} DeviceLogType;
-
-typedef void(^JLDeviceLogBK)(DeviceLogType type,float progress,NSString *_Nullable tempSavePath);
-
-@interface JL_DeviceLogs : JL_FunctionBaseManager
-
-
-/// 检查获取设备log日志
-/// @param block 回调结果
--(void)deviceLogDownload:(JLDeviceLogBK)block;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_EntityM.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_EntityM.h
deleted file mode 100644 (file)
index a8e6f02..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-//
-//  JL_EntityM.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2020/9/1.
-//  Copyright © 2020 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <AVFoundation/AVFoundation.h>
-#import <CoreBluetooth/CoreBluetooth.h>
-#import <UIKit/UIKit.h>
-#import <JL_BLEKit/JL_Tools.h>
-#import <JL_BLEKit/JL_ManagerM.h>
-#import <JL_AdvParse/JLAdvParse.h>
-
-NS_ASSUME_NONNULL_BEGIN
-//@class JL_EntityM;
-typedef NS_ENUM(NSInteger, JL_EntityM_Status) {
-    JL_EntityM_StatusBleOFF         = 0,    //BLE蓝牙未开启
-    JL_EntityM_StatusConnectFail    = 1,    //BLE连接失败
-    JL_EntityM_StatusConnecting     = 2,    //BLE正在连接
-    JL_EntityM_StatusConnectRepeat  = 3,    //BLE重复连接
-    JL_EntityM_StatusConnectTimeout = 4,    //BLE连接超时
-    JL_EntityM_StatusConnectRefuse  = 5,    //BLE被拒绝
-    JL_EntityM_StatusPairFail       = 6,    //配对失败
-    JL_EntityM_StatusPairTimeout    = 7,    //配对超时
-    JL_EntityM_StatusPaired         = 8,    //已配对
-    JL_EntityM_StatusMasterChanging = 9,    //正在主从切换
-    JL_EntityM_StatusDisconnectOk   = 10,   //已断开成功
-    JL_EntityM_StatusNull           = 11,   //Entity为空
-};
-typedef void(^JL_EntityM_STATUS_BK)(JL_EntityM_Status status);
-
-@interface JL_EntityM : NSObject<NSCopying>
-
-///命令中心
-@property(nonatomic,strong) JL_ManagerM   *mCmdManager;
-
-/// BLE外设备
-@property(nonatomic,readonly,copy) CBPeripheral  *mPeripheral;
-///服务号AE00
-@property(nonatomic,strong) NSString        *mSERVICE;
-///命令【写】通道AE01
-@property(nonatomic,strong) NSString        *mRCSP_W;
-///命令【读】通道AE02
-@property(nonatomic,strong) NSString        *mRCSP_R;
-///过滤码
-@property(nonatomic,strong) NSData *__nullable mFilterKey;
-///配对码
-@property(nonatomic,strong) NSData *__nullable mPairKey;
-///广播数据
-@property(strong,nonatomic) NSData          *mAdvData;
-
-///连接超时时间
-@property(nonatomic,assign) int             mBLE_TIMEOUT;
-///是否【开启过滤】
-@property(nonatomic,assign) BOOL            mBLE_FILTER_ENABLE;
-///是否【开启配对】
-@property(nonatomic,assign) BOOL            mBLE_PAIR_ENABLE;
-///是否完成配对
-@property(nonatomic,assign) BOOL            mBLE_IS_PAIRED;
-///是否需要OTA
-@property(nonatomic,assign) BOOL            mBLE_NEED_OTA;
-@property(nonatomic,assign) BOOL            isFrom_HISTROY;
-@property(nonatomic,assign) BOOL            isBLE_CHANGE;
-@property(nonatomic,assign) BOOL            isCMD_PREPARED;
-
-@property(strong,nonatomic) NSString        *mUUID;
-@property(strong,nonatomic) NSNumber        *mRSSI;
-@property(readonly,copy,nonatomic)NSString  *mItem;
-/**
- * mType值说明:
- *  -1:传统设备
- *  0:AI音箱
- *  1:TWS
- *  2:数码充电仓
- *  3:普通耳机
- *  4:声卡类型
- *  5:手表类型
- */
-@property(assign,nonatomic) JL_DeviceType   mType;
-@property(assign,nonatomic) BOOL            isExclusive;
-@property(assign,nonatomic) BOOL            isBound;
-@property(assign,nonatomic) BOOL            isEdrLinked;
-@property(assign,nonatomic) BOOL            isCharging;
-@property(assign,nonatomic) BOOL            isCharging_L;
-@property(assign,nonatomic) BOOL            isCharging_R;
-@property(assign,nonatomic) BOOL            isCharging_C;
-@property(assign,nonatomic) uint8_t         mPower;
-@property(assign,nonatomic) uint8_t         mPower_L;
-@property(assign,nonatomic) uint8_t         mPower_R;
-@property(assign,nonatomic) uint8_t         mPower_C;
-@property(strong,nonatomic) NSString        *mVID;
-@property(strong,nonatomic) NSString        *mPID;
-@property(strong,nonatomic) NSString        *mEdr;
-@property(strong,nonatomic) NSString        *mBleAddr;            //OTA设备需要
-@property(assign,nonatomic) uint8_t         mChipType;            //0:690x 1:692x 2:693x
-@property(assign,nonatomic) uint8_t         mProtocolType;        //默认0x00
-/**
- 0x00 - dismiss 不显示弹窗
- 0x01 - unconnected 经典蓝牙未连接
-    iOS : 不显示电量,请手动连接XXX
-    Android:不显示电量,显示连接按钮
- 0x02 - connected 经典蓝牙已连接
-    iOS:判断已连接的经典蓝牙名是否一致,若未连接或蓝牙名不一致,
-         显示“设备已被占用”。若一致,显示电量等信息。
-    Android:判断已连接的经典蓝牙Mac是否一致,若未连接或蓝牙Mac不一致,
-             显示“设备已被占用”。若一致,显示电量等信息。
- 0x03 - connecting 设备正在自动回连
-    Android 和 iOS 显示“设备正在自动回连 ”
- 0x04 - connectionless 设备不可连接(需要按下配对按键)
-    Android 和 iOS 显示配对操作方式
- */
-@property(assign,nonatomic) int8_t          mScene;
-
-///Seq 每次开机会加 1,用于app区分是否同一次开机
-@property(assign,nonatomic) uint8_t         mSeq;
-
-///TWS配对标识,0:未配对 1:已配对
-@property(assign,nonatomic) uint8_t         mTWS_Paired;
-
-///0:关盖 1:开盖
-@property(assign,nonatomic) uint8_t         mTWS_Cap;
-
-///0:充电模式 1:发射模式
-@property(assign,nonatomic) uint8_t         mTWS_Mode;
-///主从标识 (0:从机, 1:主机)
-@property(assign,nonatomic) uint8_t         mHeadsetMaster;
-
-///连接标识 (0:可以连接 1:不可连接)
-@property(assign,nonatomic) uint8_t         mHeadsetLinkEnable;
-/**
- *  mWatchScene值说明:
- *  0x00:经典蓝牙未连接
- *  0x01:经典蓝牙已连接
- *  0x02:设备正在回连
- *  0x03:设备不可连接 (需要手动进入配对模式)
- */
-///连接标识 (0:可以连接 1:不可连接)
-@property(assign,nonatomic) uint8_t         mWatchScene;
-
-///连接方式 0:ble 1:spp
-@property(assign,nonatomic) uint8_t         mWatchWay;
-
-/// 设备特殊类型
-@property(assign,nonatomic) JLDevSpecialType  mSpecialType;
-
--(void)setBlePeripheral:(CBPeripheral *)mPeripheral;
--(void)setBleItem:(NSString *)mItem;
-
-/**
- 更新代理
-*/
--(void)updateDelegate;
-
-/**
- 释放定时器
-*/
--(void)releaseEntityTimer;
-
-/**
- 发送RCSP数据
- @param data 数据
- @return 是否已发送
- */
--(BOOL)writeRcspData:(NSData*)data;
-
-/**
-调整发数参数
-@param isGame 是否为游戏模式
-@param mtu 每包发数字节数
-@param delay 延时时间 (毫秒)
-*/
--(void)setGameMode:(BOOL)isGame MTU:(NSUInteger)mtu Delay:(int)delay;
-
-
--(void)flashFinishedAction;
-
-
-#pragma mark - 连接超时管理
--(void)startTimeout:(int)code;
--(void)stopTimeout;
-
-#pragma mark - EntityM 模型转换
--(void)updateEntity:(NSDictionary*)dic;
-+(JL_EntityM*)changeToEntity:(NSDictionary*)dic;
-+(NSArray*)turnToEntityArray:(NSArray*)array;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FileManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FileManager.h
deleted file mode 100644 (file)
index 582b956..0000000
+++ /dev/null
@@ -1,249 +0,0 @@
-//
-//  JL_FileManager.h
-//  JL_BLEKit
-//
-//  Created by 凌煊峰 on 2021/12/13.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JLModel_File.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-NS_ASSUME_NONNULL_BEGIN
-//MARK: - 枚举
-typedef NS_ENUM(UInt8, JL_FileOperationEnvironmentType) {
-    JL_FileOperationEnvironmentTypeBigFileTransmission      = 0x00, //大文件传输
-    JL_FileOperationEnvironmentTypeDeleteFile               = 0x01, //删除文件
-    JL_FileOperationEnvironmentTypeFormatting               = 0x02, //格式化
-    JL_FileOperationEnvironmentTypeFatfsTransmission        = 0x03, //FAT文件传输
-};
-typedef NS_ENUM(UInt8, JL_DeleteFileLastType) {
-    JL_DeleteFileLastTypeIsNotLast                  = 0x00, //不是最后一个文件
-    JL_DeleteFileLastTypeIsLast                     = 0x01, //是最后一个文件
-};
-typedef NS_ENUM(UInt8, JL_BrowseReason) {
-    JL_BrowseReasonCommandEnd       = 0,    //读取完当前命令请求的文件
-    JL_BrowseReasonFolderEnd        = 1,    //读取完当前目录的文件
-    JL_BrowseReasonPlaySuccess      = 2,    //点播成功
-    JL_BrowseReasonBusy             = 3,    //设备繁忙
-    JL_BrowseReasonDataFail         = 4,    //目录数据发送失败
-    JL_BrowseReasonReading          = 0x0f, //正在读取中
-    JL_BrowseReasonUnknown,                 //未知原因
-};
-typedef NS_ENUM(UInt8, JL_FileContentResult) {
-    JL_FileContentResultStart       = 0x00, //开始传输
-    JL_FileContentResultReading     = 0x01, //正在读取
-    JL_FileContentResultEnd         = 0x02, //读取结束
-    JL_FileContentResultCancel      = 0x03, //取消读取
-    JL_FileContentResultFail        = 0x04, //读取失败
-    JL_FileContentResultNull        = 0x05, //文件不存在
-    JL_FileContentResultDataError   = 0x06, //数据错误
-    JL_FileContentResultCrcFail     = 0x07, //crc校验失败
-};
-typedef NS_ENUM(UInt8, JL_FileDataType) {
-    JL_FileDataTypeDo               = 0,    //开始传输文件数据
-    JL_FileDataTypeDone             = 1,    //结束传输文件数据
-    JL_FileDataTypeDoing            = 2,    //正在传输文件数据
-    JL_FileDataTypeCancel           = 3,    //取消传输文件数据
-    JL_FileDataTypeError            = 4,    //传输文件数据出错
-    JL_FileDataTypeUnknown,
-};
-typedef NS_ENUM(UInt8, JL_BigFileTransferCode) {
-    JL_BigFileTransferCodeSuccess       = 0x00, //成功
-    JL_BigFileTransferCodeFail          = 0x01, //写失败
-    JL_BigFileTransferCodeOutOfRange    = 0x02, //数据超出范围
-    JL_BigFileTransferCodeCrcFail       = 0x03, //crc校验失败
-    JL_BigFileTransferCodeOutOfMemory   = 0x04, //内存不足
-};
-typedef NS_ENUM(UInt8, JL_BigFileResult) {
-    JL_BigFileTransferStart         = 0x00, //开始大文件数据传输
-    JL_BigFileTransferDownload      = 0x01, //传输大文件有效数据
-    JL_BigFileTransferEnd           = 0x02, //结束大文件数据传输
-    JL_BigFileTransferOutOfRange    = 0x03, //大文件传输数据超范围
-    JL_BigFileTransferFail          = 0x04, //大文件传输失败
-    JL_BigFileCrcError              = 0x05, //大文件校验失败
-    JL_BigFileOutOfMemory           = 0x06, //空间不足
-    JL_BigFileTransferCancel        = 0x07, //取消传输
-    JL_BigFileTransferNoResponse    = 0xF1, //设备没有响应
-};
-
-//MARK: - 回调
-
-typedef void(^JL_FILE_BK)(NSArray* __nullable array,JL_BrowseReason reason);
-typedef void(^JL_FILE_CONTENT_BK)(JL_FileContentResult result, uint32_t size, NSData* __nullable data, float progress);
-typedef void(^JL_FILE_DATA_BK)(NSData* __nullable data, NSString* __nullable path, uint16_t size, JL_FileDataType type);
-typedef void(^JL_BIGFILE_BK)(NSArray* __nullable array);
-typedef void(^JL_BIGFILE_RT)(JL_BigFileResult result, float progress);
-
-
-/// 文件浏览与下载、上载、删除等相关的操作类
-@interface JL_FileManager : JL_FunctionBaseManager
-
-/// 超时时间
-@property(nonatomic,assign)NSInteger maxTimeout;
-
-///大文件名是否使用其他编码
-///Default:false
-///短文件名:GBK  CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000)
-///长文件名:Unicode16L (NSUTF16LittleEndianStringEncoding)
-///Other: true
-///需要设置encodeType属性的值,默认为Unicode16L
-@property(nonatomic,assign)BOOL isOtherEncode;
-
-/// 大文件名使用的编码
-/// default :NSUTF16LittleEndianStringEncoding
-@property(nonatomic,assign)NSStringEncoding encodeType;
-
-/// 停止超时计算
-- (void)closeTimer;
-
-
-//MARK: - 浏览目录
-
-/// 发起文件目录浏览
-/// - Parameters:
-///   - model: 文件Model
-///   - number: 读取的数量 单次请求建议 < 20 条
-///   - result: 回调操作结果
--(void)cmdBrowseModel:(JLModel_File*)model
-               Number:(uint8_t)number
-               Result:(JL_CMD_RESPOND __nullable)result;
-
-/// 监听目录数据回调
-/// - Parameter result: 回调内容
--(void)cmdBrowseMonitorResult:(JL_FILE_BK __nullable)result;
-
-
-
-//MARK: -  删除文件
-
-/// 删除文件(必须异步执行)
-/// @param array 文件Model数组
--(BOOL)cmdDeleteFileModels:(NSArray*)array;
-
-/// 删除单个JLModel_File文件
-/// @param model 文件对象 JLModel_File
-/// @param last 是否最后一个文件
-/// @param result 删除成功回调
--(void)cmdDeleteFile:(JLModel_File*)model
-             IsLast:(JL_DeleteFileLastType)last
-             Result:(JL_CMD_RESPOND __nullable)result;
-
-/// 通过名字删除文件
-/// 仅部分设备支持(设备要求支持文件系统支持唯一文件名)
-/// - Parameters:
-///   - name: 文件名
-///   - result: 回调结果
--(void)cmdFileDeleteWithName:(NSString*)name Result:(JL_CMD_RESPOND __nullable)result;
-
-
-
-/// 设备格式化
-/// @param handle 设备句柄
-/// @param result 格式化回调
--(void)cmdDeviceFormat:(NSString*)handle Result:(JL_CMD_RESPOND __nullable)result;
-
-/// 清除设备音乐缓存记录
-/// @param type 卡的类型
--(void)cmdCleanCacheType:(JL_CardType)type;
-
-
-//MARK: - 通讯文件句柄相关
-
-/// 设置文件传输句柄
-/// 大文件传输,设置当前传输句柄
-/// - Parameter currentFileHandleType: 传输句柄
-- (void)setCurrentFileHandleType:(JL_FileHandleType)currentFileHandleType;
-
-/// 获取当前的传输文件句柄
-- (JL_FileHandleType)getCurrentFileHandleType;
-
-/// 文件传输的句柄数据
-- (NSData *)currentDeviceHandleData;
-
-/// 设置当前使用的存储设备
-/// @param devHandle 存储设备句柄
-/// 可参考JLModel_Device 中获取到的设备句柄内容
-/// @param result 命令回调结果
--(void)cmdSetDeviceStorage:(NSData *)devHandle Result:(JL_CMD_RESPOND)result;
-
-
-//MARK: - 文件传输 固件-->APP
-
-/// 监听文件数据 固件-->APP
-/// - Parameter result: 数据内容监听回调
--(void)cmdFileDataMonitorResult:(JL_FILE_DATA_BK __nullable)result __attribute__((deprecated("This method is deprecated. Use newMethod cmdFileReadContentWithName:(NSString*)name Result:(JL_FILE_CONTENT_BK __nullable)result")));
-
-/// app 端回复设备的请求文件传输 固件-->APP
-/// 允许传输文件数据
--(void)cmdAllowFileData __attribute__((deprecated("This method is deprecated. Use newMethod cmdFileReadContentWithName:(NSString*)name Result:(JL_FILE_CONTENT_BK __nullable)result")));
-
-/// app 端回复设备的请求文件传输 固件-->APP
-/// 拒绝传输文件数据
--(void)cmdRejectFileData __attribute__((deprecated("This method is deprecated. Use newMethod cmdFileReadContentWithName:(NSString*)name Result:(JL_FILE_CONTENT_BK __nullable)result")));
-
-/// 传输文件数据 固件-->APP
-/// 停止传输文件数据
--(void)cmdStopFileData __attribute__((deprecated("This method is deprecated. Use newMethod cmdFileReadContentCancel")));
-
-/// 读取外置卡的文件内容 固件-->APP
-/// 此方法针对部分设备(要求设备文件系统支持唯一文件名)
-/// - Parameters:
-///   - name: 文件名
-///   - result: 回调结果
--(void)cmdFileReadContentWithName:(NSString*)name Result:(JL_FILE_CONTENT_BK __nullable)result;
-
-/// 簇号方式读取外置卡的文件内容 固件-->APP
-/// - Parameters:
-///   - fileClus: 文件簇号
-///   - result: 回调
-- (void)cmdFileReadContentWithFileClus:(uint32_t)fileClus Result:(JL_FILE_CONTENT_BK __nullable)result;
-
-/// 取消读取外置卡的文件内容
--(void)cmdFileReadContentCancel;
-
-
-//MARK: - 文件传输 APP-->固件
-
-/// 请求传输文件给设备
-/// - Parameters:
-///   - size: 文件大小
-///   - path: 存放路径
--(void)cmdFileDataSize:(uint8_t)size
-              SavePath:(NSString*)path __attribute__((deprecated("This method is deprecated. Use newMethod cmdBigFileData:(NSString *)path WithFileName:(NSString *)fileName                                                                 Result:(JL_BIGFILE_RT __nullable)result")));
-
-
-/// 推送文件数据给设备
-/// - Parameter data:文件数据
--(void)cmdPushFileData:(NSData*)data __attribute__((deprecated("This method is deprecated. Use newMethod cmdBigFileData:(NSString *)path WithFileName:(NSString *)fileName                                                               Result:(JL_BIGFILE_RT __nullable)result")));
-
-
-/// 大文件传输 App-->固件
-/// - Parameters:
-///   - path: 本地大文件下载文件路径
-///   - fileName: 目标文件路径
-///   如想指定文件夹路径,可以使用 Download/abc/def.txt
-///   否则可以直接添加 def.txt 由系统存放到默认的文件夹下
-///   - result: 回调结果
--(void)cmdBigFileData:(NSString *)path WithFileName:(NSString *)fileName
-               Result:(JL_BIGFILE_RT __nullable)result;
-
-/// 取消文件传输 App-->固件
--(void)cmdStopBigFileData;
-
-/// 通知固件进行环境准备
-/// - Parameters:
-///   - environment: 
-///   0:大文件传输
-///   1:删除文件
-///   2:格式化
-///   - result: 回调结果
--(void)cmdPreEnvironment:(JL_FileOperationEnvironmentType)environment Result:(JL_CMD_RESPOND __nullable)result;
-
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FindDeviceManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FindDeviceManager.h
deleted file mode 100644 (file)
index f4ce71c..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-//
-//  JL_FindDeviceManager.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/12/17.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-
-/// 查找设备参数
-@interface JLFindDeviceOperation : NSObject
-
-/// 播放方式 way:
-///   0. 全部播放
-///   1.左侧播放
-///   2.右侧播放
-///   3.全部暂停
-@property(nonatomic,assign)uint8_t playWay;
-
-/// 超时时间
-/// 0 表示不限制时间
-/// 默认时间 60
-@property(nonatomic,assign)uint16_t timeout;
-
-/// 铃声操作
-/// 0x00: 关闭铃声
-/// 0x01: 播放铃声
-@property(nonatomic,assign)uint8_t sound;
-
-
-@end
-
-
-/// 查找手机参数
-@interface JLFindPhoneModel : NSObject
-
-/// 铃声操作
-/// 0x00: 关闭铃声
-/// 0x01: 播放铃声
-@property(nonatomic,assign)uint8_t sound;
-
-/// 超时时间
-/// 0 表示不限制时间
-/// 默认时间 10
-@property(nonatomic,assign)uint16_t timeout;
-
-@end
-
-
-
-@protocol JL_FindDeviceDelegate <NSObject>
-
-
-/// 设备查找手机回调
-/// - Parameter model:JLFindPhoneModel
--(void)findDeviceStartFindMyPhone:(JLFindPhoneModel *)model;
-
-/// 查询设备当前状态
-/// 当前回调需要先查询设备状态cmdFindDeviceCheckStatus
-/// - Parameter model: JLFindDeviceOperation
--(void)findDeviceCheckStatus:(JLFindDeviceOperation *)model;
-
-@end
-
-/// 查找设备类
-/// 查找设备/设备查找手机
-@interface JL_FindDeviceManager : JL_FunctionBaseManager
-
-#pragma mark ---> 查找设备
-// 设备查找手机的通知
-// 携带了响铃时长🔔
-// dict = @{@"op":@(操作类型),@"timeout":@(超时时间)};
-extern NSString *kJL_MANAGER_FIND_PHONE;
-
-// 手机查找设备
-// 携带是否停止响铃
-// dict = @{@"op":@(操作类型),@"timeout":@(超时时间)};
-extern NSString *kJL_MANAGER_FIND_DEVICE;
-
-/// 查询固件设备查找状态回调
-/// JLFindDeviceOperation 作为回调对象
-extern NSString *kJL_MANAGER_FIND_DEVICE_STATUS;
-
-
-typedef void(^JL_FIND_DEVICE_CHECK_RESPOND)(JL_CMDStatus status, JLFindDeviceOperation * _Nullable model);
-
-/// 代理
-@property(nonatomic,weak)id<JL_FindDeviceDelegate> delegate;
-
-// 查找设备命令
-// @param isVoice 是否发声
-// @param timeout 超时时间
-// @param isIphone 是否设备查找手机(默认是手机找设备)
-// @param opDict 这是一个可选项,若tws未连接,则该值无效,默认是全部播放
-// 字典键值对说明:
-// 播放方式 way: 0  全部播放
-//             1  左侧播放
-//             2  右侧播放
-// 播放源 player: 0 APP端播放
-//               1 设备端播放
-// etc.全部播放&APP播放音效
-// opDict:{@"way":@"0",@"player":@"0"}
--(void)cmdFindDevice:(BOOL)isVoice
-             timeOut:(uint16_t)timeout
-          findIphone:(BOOL)isIphone
-           Operation:( NSDictionary * _Nullable )opDict __attribute__((deprecated ( "This method will be replaced with subcommands cmdFindDeviceWith and proxy etc.")));
-
-
-
-/// 查找设备命令
-/// - Parameter operation: 查找设备对象
--(void)cmdFindDeviceWith:(JLFindDeviceOperation *)operation;
-
-
-
-/// 查询一次固件查找设备的状态
-/// - Parameter result: 状态回调
--(void)cmdFindDeviceCheckStatus:(JL_FIND_DEVICE_CHECK_RESPOND _Nullable)result;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FlashOperateManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FlashOperateManager.h
deleted file mode 100644 (file)
index 9883018..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-//
-//  JL_FlashOperateManager.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/12/13.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-#pragma mark - 外挂FLASH操作命令
-typedef NS_ENUM(UInt8, JL_FlashOperationOPType) {
-    JL_FlashOperationOPTypeWriteData             = 0x00, //写数据
-    JL_FlashOperationOPTypeReadData              = 0x01, //读数据
-    JL_FlashOperationOPTypeInsertFile            = 0x02, //插入文件
-    JL_FlashOperationOPTypeDialOperation         = 0x03, //表盘操作
-    JL_FlashOperationOPTypeEraseData             = 0x04, //擦除数据
-    JL_FlashOperationOPTypeDeleteFile            = 0x05, //删除文件
-    JL_FlashOperationOPTypeWriteFileProtection   = 0x06, //写文件保护
-    JL_FlashOperationOPTypeUpdateDialResource    = 0x07, //更新表盘资源
-    JL_FlashOperationOPTypeCheckWriteDataSuccess = 0x08, //查询写数据是否成功
-    JL_FlashOperationOPTypeUpdateResourceFlag    = 0x09, //升级资源标志操作
-    JL_FlashOperationOPTypeRestoreSystem         = 0x0A, //还原系统
-    JL_FlashOperationOPTypeGetFileInfo           = 0x0B, //获取文件信息
-    JL_FlashOperationOPTypeGetRemainingSpace     = 0x0C, //获取剩余空间
-};
-
-typedef NS_ENUM(UInt8, JL_DialSetting) {
-    JL_DialSettingReadCurrentDial               = 0x00, //读取当前表盘
-    JL_DialSettingSetDial                       = 0x01, //设置表盘
-    JL_DialSettingVersion                       = 0x03, //获取表盘额外信息,如版本
-    JL_DialSettingActivateCustomDial            = 0x04, //激活自定义表盘
-    JL_DialSettingGetDialName                   = 0x05, //获取对应的自定义表盘名字
-};
-typedef NS_ENUM(UInt8, JL_FlashOperateFlag) {
-    JL_FlashOperateFlagFinish           = 0x00, //结束
-    JL_FlashOperateFlagStart            = 0x01, //开始
-};
-
-@interface JL_FlashOperateManager : JL_FunctionBaseManager
-
-typedef void(^JL_FlashInfo_BK)(JLModel_Flash* __nullable model);
-typedef void(^JL_FlashWrite_BK)(uint8_t flag);
-typedef void(^JL_FlashWriteStatus_BK)(uint8_t flag,uint16_t leftSize);
-typedef void(^JL_FlashWriteSize_BK)(uint8_t flag,uint32_t size);
-typedef void(^JL_FlashRead_BK)(uint8_t flag,NSData *__nullable data);
-typedef void(^JL_FlashAddOrDel_BK)(uint8_t flag);
-typedef void(^JL_FlashWatch_BK)(uint8_t flag, uint32_t size,
-                                NSString *__nullable path,
-                                NSString *__nullable describe);
-typedef void(^JL_FlashClean_BK)(uint8_t flag);
-typedef void(^JL_FlashProtect_BK)(uint8_t flag);
-typedef void(^JL_FlashUpdate_BK)(uint8_t flag);
-typedef void(^JL_FlashFileInfo_BK)(uint32_t size,uint16_t crc16);
-typedef void(^JL_FlashLeftSize_BK)(uint32_t leftSize);
-
-/// Flash Info 
-@property(nonatomic,strong)JLModel_Flash *flashInfo;
-
-#pragma mark ---> 获取外置Flash信息
-/**
- 获取外置Flash信息
- @param result 回复
- */
--(void)cmdGetFlashInfoResult:(JL_FlashInfo_BK __nullable)result;
-
-#pragma mark ---> 写数据到Flash
-/**
- 写数据到Flash
- @param data        数据
- @param offset   偏移
- @param mtu         每包大小
- @param result   回复
- */
--(void)cmdWriteToFlashAllData:(NSData*)data
-                       Offset:(uint32_t)offset
-                          Mtu:(uint16_t)mtu
-                       Result:(JL_FlashWriteSize_BK __nullable)result;
-
-#pragma mark ---> 读数据从Flash
-/**
- 读数据从Flash
- @param offset  偏移
- @param size    大小
- @param mtu     每包大小
- @param result  回复
- */
--(void)cmdReadFromFlashAllDataOffset:(uint32_t)offset
-                                Size:(uint16_t)size
-                                 Mtu:(uint16_t)mtu
-                              Result:(JL_FlashRead_BK __nullable)result;
-
-#pragma mark ---> [开始/结束]增加表盘(文件)
-/**
- 开始/结束 插入文件
- @param path        路径
- @param size        大小
- @param flag        开始:0x01  结束:0x00
- @param result    回复
- */
--(void)cmdInsertFlashPath:(NSString* __nullable)path
-                     Size:(uint32_t)size
-                     Flag:(JL_FlashOperateFlag)flag
-                   Result:(JL_FlashAddOrDel_BK __nullable)result;
-
-#pragma mark ---> 设置表盘(文件)
-
-/**
- 表盘操作
- @param path    路径
- @param flag    0x00:读取当前表盘
-                0x01:设置表盘
-                0x03:获取表盘额外信息,如版本
-                0x04:激活自定义表盘
-                0x05:获取对应的自定义表盘名字
- @param result  回复
- */
--(void)cmdWatchFlashPath:(NSString*__nullable)path
-                    Flag:(JL_DialSetting)flag
-                  Result:(JL_FlashWatch_BK __nullable)result;
-
-#pragma mark ---> 设备更新表盘(文件) 【kJL_MANAGER_WATCH_FACE】?// 返回 字符串
-extern NSString *kJL_MANAGER_WATCH_FACE;
-
-#pragma mark ---> [开始/结束]删除表盘(文件)
-/**
- 开始/结束 删除文件
- @param path        路径
- @param flag        开始:0x01  结束:0x00
- @param result    回复
- */
--(void)cmdDeleteFlashPath:(NSString* __nullable)path
-                     Flag:(JL_FlashOperateFlag)flag
-                   Result:(JL_FlashAddOrDel_BK __nullable)result;
-
-#pragma mark ---> 外挂Flash【写保护】操作
-/**
- 开始/结束
- @param flag        开始:0x01  结束:0x00
- */
--(void)cmdWriteProtectFlashFlag:(JL_FlashOperateFlag)flag Result:(JL_FlashProtect_BK __nullable)result;
-
-#pragma mark ---> 外挂Flash【资源更新】操作
-/**
- 开始/结束 更新UI
- @param flag        开始:0x01  结束:0x00
- */
--(void)cmdUpdateResourceFlashFlag:(JL_FlashOperateFlag)flag Result:(JL_FlashUpdate_BK __nullable)result __attribute__((deprecated ( "The current interface is about to be canceled in version 2.0.0, please use cmdUpdateResourceFlashFlagAsync:Result:  instead")));
--(void)cmdUpdateResourceFlashFlag:(JL_FlashOperateFlag)flag;
-/// 外挂Flash(资源更新)操作
-/// 异步回调
-/// - Parameters:
-///   - flag: flag
-///   - result: 操作结果
--(void)cmdUpdateResourceFlashFlagAsync:(JL_FlashOperateFlag)flag Result:(JL_FlashUpdate_BK __nullable)result;
-
-#pragma mark ---> 断开连接,对FATFS处理。
--(void)cmdFlashActionDisconnect;
-
-#pragma mark ---> 外挂Flash 手表资源更新标志位
--(void)cmdWatchUpdateResource __attribute__((deprecated ( "The current interface is about to be canceled in version 2.0.0, please use cmdWatchUpdateResourceWith:(JL_CMD_RESPOND __nullable)result instead")));
-
-/// 打开设备升级资源标记操作
-/// - Parameter result: 设备回复结果
-/// 当设备回复的cmd代号为非 0 时,属于异常结束,不可继续升级
--(void)cmdWatchUpdateResourceWith:(JL_CMD_RESPOND __nullable)result;
-
-#pragma mark ---> 外挂Flash 还原系统
--(void)cmdFlashRecovery;
-
-#pragma mark ---> 外挂Flash 获取文件信息
--(void)cmdFlashInformationOfFile:(NSString*)file Result:(JL_FlashFileInfo_BK)result;
-
-#pragma mark ---> 外挂Flash 剩余空间
--(void)cmdFlashLeftSizeResult:(JL_FlashLeftSize_BK)result;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FmManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FmManager.h
deleted file mode 100644 (file)
index d912b6a..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-//
-//  JL_FmManager.h
-//  JL_BLEKit
-//
-//  Created by 李放 on 2021/12/20.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-
-typedef NS_ENUM(UInt8, JL_FCmdFM) {
-    JL_FCmdFMPP                     = 0x01, //FM 暂停/播放
-    JL_FCmdFMPonitBefore            = 0x02, //上一个频点
-    JL_FCmdFMPonitNext              = 0x03, //下一个频点
-    JL_FCmdFMChannelBefore          = 0x04, //上一个频道
-    JL_FCmdFMChannelNext            = 0x05, //下一个频道
-    JL_FCmdFMSearch                 = 0x06, //扫描
-    JL_FCmdFMChannelSelect          = 0x07, //选择频道
-    JL_FCmdFMChannelDelete          = 0x08, //删除频道
-    JL_FCmdFMFrequencySelect        = 0x09, //选择频点
-    JL_FCmdFMFrequencyDelete        = 0x0a, //删除频点
-};
-
-typedef NS_ENUM(UInt8, JL_FMSearch) {
-    JL_FMSearchALL                  = 0x00, //FM 暂停/播放
-    JL_FMSearchForward              = 0x01, //向前搜索
-    JL_FMSearchBackward             = 0x02, //向后搜索
-    JL_FMSearchStop                 = 0x03, //停止搜索
-};
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JL_FmManager : JL_FunctionBaseManager
-
-///Fm状态
-@property (assign,nonatomic) JL_FMStatus        fmStatus;
-
-///Fm 频段范围
-///76.5-108.0Mhz
-///87.5-108.0Mhz
-@property (assign,nonatomic) JL_FMMode          fmMode;
-
-///当前fm
-@property (strong,nonatomic) JLModel_FM          *currentFm;
-
-///Fm列表
-@property (strong,nonatomic) NSArray            *fmArray;
-
-#pragma mark ---> FM相关操作
-/**
- @param cmd FM功能
- @param search FM搜索
- @param channel FM频道
- @param frequency FM频点
- @param result 返回结果
- */
--(void)cmdFm:(JL_FCmdFM)cmd
-      Saerch:(JL_FMSearch)search
-     Channel:(uint8_t)channel
-   Frequency:(uint16_t)frequency
-      Result:(JL_CMD_RESPOND __nullable)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
-
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FunctionBaseManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_FunctionBaseManager.h
deleted file mode 100644 (file)
index 7a3a0b5..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-//
-//  JL_FunctionBaseManager.h
-//  JL_BLEKit
-//
-//  Created by 凌煊峰 on 2021/12/13.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JLModel_Device.h>
-#import <JL_BLEKit/JL_RCSP.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class JL_ManagerM;
-@interface JL_FunctionBaseManager : NSObject
-
-@property (assign, nonatomic) uint8_t           mCmdSN;
-@property (strong, nonatomic) NSString          *mBLE_UUID;
-@property (strong, nonatomic) NSString          *mBLE_NAME;
-@property (weak  , nonatomic) JLModel_Device    *deviceModel;
-@property (weak  , nonatomic) JL_ManagerM       *centerManagerM;
-
-- (void)inputPKG:(JL_PKG *)pkg;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_Handle.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_Handle.h
deleted file mode 100644 (file)
index add95b4..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-//
-//  JL_Handle.h
-//  JL_BLEKit
-//
-//  Created by zhihui liang on 2018/11/10.
-//  Copyright © 2018 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FlashOperateManager.h>
-#import <JL_BLEKit/JL_BLEAction.h>
-#import <JL_BLEKit/JL_RCSP.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-/**
- *  收到设备返回的XM_PKG的回调。
- */
-extern NSString *kJL_CMD_RECEIVE;       //XM_RCSP【接收】
-
-@protocol JL_HandleDelegate <NSObject>
-@optional
--(void)onHandleOutputPKG:(JL_PKG*)pkg;
-@end
-
-@interface JL_Handle : NSObject
-@property(nonatomic,weak)id<JL_HandleDelegate>delegate;
-
-/**
-输入BLE数据
-@param data  设备过来的数据
-*/
--(void)inputHandleData:(NSData*)data;
-
-/**[实例]
-向设备发送JL_PKG数据包。
-@param pkg JL_PKG数据模型
-@param name 设备名字
-*/
--(NSData*)sendPackage:(JL_PKG*)pkg WithName:(NSString*)name;
-
-+(void)logPackage:(JL_PKG*)pkg WithName:(NSString *__nullable)name IsSend:(BOOL)isSend;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_LRCManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_LRCManager.h
deleted file mode 100644 (file)
index 1a49426..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-//
-//  JL_LRCManager.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/12/17.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_LRCType) {
-    JL_LRCTypeDone                  = 1,    //LRC已传输完
-    JL_LRCTypeBusy                  = 2,    //设备忙碌
-    JL_LRCTypeDoneFail              = 0x0e, //传输失败
-};
-typedef void(^JL_LRC_BK)(NSString* __nullable lrc, JL_LRCType type);
-typedef void(^JL_LRC_BK_1)(NSData* __nullable lrc, JL_LRCType type);
-
-@interface JL_LRCManager : JL_FunctionBaseManager
-
-#pragma mark ---> 获取LRC歌词
-/**
- @param result 返回LRC数据
- */
--(void)cmdLrcMonitorResult:(JL_LRC_BK __nullable)result;
--(void)cmdLrcMonitorResult_1:(JL_LRC_BK_1 __nullable)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_LightManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_LightManager.h
deleted file mode 100644 (file)
index 22b7c87..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-//
-//  JL_LightManager.h
-//  JL_BLEKit
-//
-//  Created by 李放 on 2021/12/16.
-//  Modify by EzioChan on 2023/03/16
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class JL_LightManager;
-
-@protocol JLLightStatusPtl <NSObject>
-
--(void)jlLightStatus:(JL_LightManager *)lightManager;
-
-@end
-
-
-@interface JL_LightManager : JL_FunctionBaseManager
-
-/// 当前设备是否支持灯光设置
-@property(nonatomic,assign)BOOL isSupportLight;
-
-/// 0:关闭 1:打开 2:设置模式(彩色/闪烁/情景)
-@property (assign,nonatomic) JL_LightState      lightState;
-
-// 0:彩色 1:闪烁 2: 情景
-@property (assign,nonatomic) JL_LightMode       lightMode;
-
-/// 灯光红色
-@property (assign,nonatomic) uint8_t            lightRed;
-
-/// 灯光绿色
-@property (assign,nonatomic) uint8_t            lightGreen;
-
-/// 灯光蓝色
-@property (assign,nonatomic) uint8_t            lightBlue;
-
-/// 闪烁模式Index
-@property (assign,nonatomic) JL_LightFlashModeIndex lightFlashIndex;
-
-/// 闪烁频率Index
-@property (assign,nonatomic) JL_LightFlashModeFrequency lightFrequencyIndex;
-
-/// 情景模式Index
-@property (assign,nonatomic) JL_LightSceneMode  lightSceneIndex;
-
-// 色调,范围0-360
-@property (assign,nonatomic) uint16_t           lightHue;
-
-// 饱和度,0-100
-@property (assign,nonatomic) uint8_t            lightSat;
-
-// 亮度,0-100
-@property (assign,nonatomic) uint8_t            lightLightness;
-
-/// 状态更新代理委托
-@property (weak,nonatomic)id<JLLightStatusPtl> delegate;
-
-
-/// 获取灯光设置,通过代理返回
--(void)cmdGetLightStatus;
-/**
- *  设置灯光
- *  @param lightState 灯光状态
- *  @param lightMode 灯光模式
- *  @param red 红色色值
- *  @param green 绿色色值
- *  @param blue 蓝色色值
- *  @param flashIndex 闪烁模式index
- *  @param flashFreqIndex 闪烁频率
- *  @param sceneIndex 情景模式
- *  @param hue 色调,范围0-360
- *  @param saturation 饱和度,0-100
- *  @param lightness 亮度,0-100
- */
--(void)cmdSetState:(JL_LightState)lightState
-              Mode:(JL_LightMode)lightMode
-               Red:(uint8_t)red
-             Green:(uint8_t)green
-              Blue:(uint8_t)blue
-         FlashInex:(JL_LightFlashModeIndex)flashIndex
-         FlashFreq:(JL_LightFlashModeFrequency)flashFreqIndex
-        SceneIndex:(JL_LightSceneMode)sceneIndex
-               Hue:(uint16_t)hue
-        Saturation:(uint8_t)saturation
-         Lightness:(uint8_t)lightness;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_MSG_Func.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_MSG_Func.h
deleted file mode 100644 (file)
index 91d914f..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-//
-//  JL_MSG_Func.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/5/13.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-typedef enum : uint8_t {
-    Func_Location,
-    Func_Weather,
-    Func_Notify,
-} FuncMsgType;
-
-@interface JL_MSG_Func : NSObject
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_MSG_Weather.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_MSG_Weather.h
deleted file mode 100644 (file)
index 6ff75d8..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-//
-//  JL_MSG_Weather.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/5/13.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
- 
-typedef NS_ENUM(UInt8, JLWeatherType) {
-    ///晴
-    JLWeatherTypeSunny = 0x00,
-    ///少云
-    JLWeatherTypeCloudLess,
-    ///晴间多云
-    JLWeatherTypePartlyCloudy,
-    ///多云
-    JLWeatherTypeCloudiness,
-    ///阴
-    JLWeatherTypeOvercastSky,
-    ///有风/和风/清风/微风
-    JLWeatherTypeBreeze,
-    ///平静
-    JLWeatherTypeCalmWind,
-    ///大风/强风/劲风/疾风
-    JLWeatherTypeHighWind,
-    ///飓风/狂爆风
-    JLWeatherTypeHurricane,
-    ///热带风暴/风暴
-    JLWeatherTypeTropicalStorm,
-    ///霾/中度霾/重度霾/严重霾
-    JLWeatherTypeHaze,
-    ///阵雨
-    JLWeatherTypeShower,
-    ///雷阵雨
-    JLWeatherTypeThunderShower,
-    ///雷阵雨并伴有冰雹
-    JLWeatherTypeHallThunderShower,
-    ///雨/小雨/毛毛雨/细雨/小雨-中雨
-    JLWeatherTypeLightRain,
-    ///中雨/中雨-大雨
-    JLWeatherTypeModerateRain,
-    ///大雨/大雨-暴雨
-    JLWeatherTypeHeavyRain,
-    ///暴雨/暴雨-大暴雨
-    JLWeatherTypeDownpour,
-    ///大暴雨/大暴雨-特大暴雨
-    JLWeatherTypeExtraordinaryRainstorm,
-    ///特大暴雨
-    JLWeatherTypeHeavyDownpour,
-    ///强阵雨
-    JLWeatherTypeStrongRainShower,
-    ///强雷阵雨
-    JLWeatherTypeStrongThunderShower,
-    ///极端降雨
-    JLWeatherTypeExtremeRainfall,
-    ///雨夹雪/阵雨夹雪/冻雨/雨雪天气
-    JLWeatherTypeRainySnowy,
-    ///雪
-    JLWeatherTypeSnowy,
-    ///阵雪
-    JLWeatherTypeSnowShower,
-    ///小雪/小雪-中雪
-    JLWeatherTypeLightSnow,
-    ///中雪/中雪-大雪
-    JLWeatherTypeModerateSnow,
-    ///大雪/大雪-暴雪
-    JLWeatherTypeHeavySnow,
-    ///暴雪
-    JLWeatherTypeSnowstorm,
-    ///浮尘
-    JLWeatherTypeDust,
-    ///扬沙
-    JLWeatherTypeblowingSand,
-    ///沙尘暴
-    JLWeatherTypedustStorm,
-    ///强沙尘暴
-    JLWeatherTypeSevereSandstorm,
-    ///龙卷风
-    JLWeatherTypeTornado,
-    ///雾/轻雾/浓雾/强浓雾/特强浓雾
-    JLWeatherTypeFog,
-    ///未知
-    JLWeatherTypeUnknow,
-    ///冷
-    JLWeatherTypeCold,
-    ///未知2
-    JLWeatherTypeUnknown1,
-    
-};
-
-typedef NS_ENUM(UInt8, JLWindDirectionType) {
-    ///无风向
-    JLWindDirectionTypeNone = 0x00,
-    ///东
-    JLWindDirectionTypeEast,
-    ///南
-    JLWindDirectionTypeSouth,
-    ///西
-    JLWindDirectionTypeWest,
-    ///北
-    JLWindDirectionTypeNorth,
-    ///东南
-    JLWindDirectionTypeEastSouth,
-    ///东北
-    JLWindDirectionTypeEastNorth,
-    ///西北
-    JLWindDirectionTypeWestNorth,
-    ///西南
-    JLWindDirectionTypeWestSouth,
-    ///旋转不定
-    JLWindDirectionTypeUnknow
-};
-
-@interface JL_MSG_Weather : NSObject
-
-/// 省份
-@property(nonatomic,strong)NSString *province;
-///城市
-@property(nonatomic,strong)NSString *city;
-///天气编码
-@property(nonatomic,assign)JLWeatherType code;
-///温度
-@property(nonatomic,assign)NSInteger temperature;
-///湿度
-@property(nonatomic,assign)NSInteger humidity;
-///风向编码
-@property(nonatomic,assign)JLWindDirectionType direction;
-///风力
-@property(nonatomic,assign)NSInteger wind;
-/// 时间
-@property(nonatomic,strong)NSDate *date;
-
-
--(NSData *)beData;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_ManagerM.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_ManagerM.h
deleted file mode 100644 (file)
index c8720eb..0000000
+++ /dev/null
@@ -1,232 +0,0 @@
-//
-//  JL_ManagerM.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2020/9/4.
-//  Modify By EzioChan on 2023/03/27.
-//  Copyright © 2020 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_RCSP.h>
-
-#import <JL_BLEKit/JLModel_Device.h>
-#import <JL_BLEKit/JLModel_RTC.h>
-#import <JL_BLEKit/JLModel_Ring.h>
-#import <JL_BLEKit/JLModel_File.h>
-#import <JL_BLEKit/JLModel_FM.h>
-#import <JL_BLEKit/JLModel_Headset.h>
-#import <JL_BLEKit/JLModel_BT.h>
-#import <JL_BLEKit/JLModel_EQ.h>
-#import <JL_BLEKit/JLModel_SPEEX.h>
-#import <JL_BLEKit/JLModel_Flash.h>
-#import <JL_BLEKit/JLModel_ANC.h>
-#import <JL_BLEKit/JLModel_AlarmSetting.h>
-#import <JL_BLEKit/RTC_RingInfo.h>
-
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_SmallFileManager.h>
-#import <JL_BLEKit/JL_FileManager.h>
-#import <JL_BLEKit/JL_FlashOperateManager.h>
-#import <JL_BLEKit/JL_BinChargeManager.h>
-#import <JL_BLEKit/JL_AlarmClockManager.h>
-#import <JL_BLEKit/JL_CallManager.h>
-#import <JL_BLEKit/JL_LightManager.h>
-#import <JL_BLEKit/JL_TwsManager.h>
-#import <JL_BLEKit/JL_SoundCardManager.h>
-#import <JL_BLEKit/JL_LrcManager.h>
-#import <JL_BLEKit/JL_SpeexManager.h>
-#import <JL_BLEKit/JL_FindDeviceManager.h>
-#import <JL_BLEKit/JL_MusicControlManager.h>
-#import <JL_BLEKit/JL_FmManager.h>
-#import <JL_BLEKit/JL_SystemEQ.h>
-#import <JL_BLEKit/JL_SystemTime.h>
-#import <JL_BLEKit/JL_SystemVolume.h>
-#import <JL_BLEKit/JL_CustomManager.h>
-#import <JL_BLEKit/JL_BigDataManager.h>
-#import <JL_BLEKit/JL_DeviceLogs.h>
-#import <JL_BLEKit/JL_BatchManger.h>
-#import <JL_OTALib/JL_OTALib.h>
-
-
-NS_ASSUME_NONNULL_BEGIN
-
-/*
- *  从JL_ManagerM发出去的通知都是字典,如下所示:
- *
- *  @{ kJL_MANAGER_KEY_UUID  :当前设备的UUID,
- *     kJL_MANAGER_KEY_OBJECT:外抛的对象 }
- */
-extern NSString *kJL_MANAGER_KEY_UUID;      //KEY --> UUID
-extern NSString *kJL_MANAGER_KEY_OBJECT;    //KEY --> 对象
-
-
-@protocol JL_ManagerMDelegate <NSObject>
-@optional
--(void)onManagerSendPackage:(JL_PKG*)pkg;
-@end
-
-@class JL_EntityM;
-@interface JL_ManagerM : NSObject
-@property(nonatomic,weak)id<JL_ManagerMDelegate>delegate;
-@property(nonatomic,readonly,copy)NSString  *mBLE_UUID;
-@property(nonatomic,readonly,copy)NSString  *mBLE_NAME;
-@property(nonatomic,readonly,assign)uint8_t mCmdSN;
-@property(nonatomic,weak)JL_EntityM         *mEntity;
-
-@property(nonatomic,strong)JL_SmallFileManager      *mSmallFileManager;
-@property(nonatomic,strong)JL_FileManager           *mFileManager;
-@property(nonatomic,strong)JL_OTAManager            *mOTAManager;
-@property(nonatomic,strong)JL_FlashOperateManager   *mFlashManager;
-@property(nonatomic,strong)JL_BinChargeManager      *mChargingBinManager;
-@property(nonatomic,strong)JL_CallManager           *mCallManager;
-@property(nonatomic,strong)JL_AlarmClockManager     *mAlarmClockManager;
-@property(nonatomic,strong)JL_LightManager          *mLightManager;
-@property(nonatomic,strong)JL_TwsManager            *mTwsManager;
-@property(nonatomic,strong)JL_SpeexManager          *mSpeexManager;
-@property(nonatomic,strong)JL_LRCManager            *mLrcManager;
-@property(nonatomic,strong)JL_FindDeviceManager     *mFindDeviceManager;
-@property(nonatomic,strong)JL_MusicControlManager   *mMusicControlManager;
-@property(nonatomic,strong)JL_FmManager             *mFmManager;
-@property(nonatomic,strong)JL_SystemEQ              *mSystemEQ;
-@property(nonatomic,strong)JL_SystemTime            *mSystemTime;
-@property(nonatomic,strong)JL_SystemVolume          *mSystemVolume;
-@property(nonatomic,strong)JL_CustomManager         *mCustomManager;
-@property(nonatomic,strong)JL_BatchManger           *mBatchManger;
-
-@property(nonatomic,strong)JL_SoundCardManager      *mSoundCardManager;
-@property(nonatomic,strong)JL_DeviceLogs            *mDeviceLogs;
-
-@property(nonatomic,strong)JL_BigDataManager        *mBigDataManager;
-
-
--(void)setPropertyUpdate:(BOOL)isUpdate;
--(void)setBleUuid:(NSString*)uuid;
--(void)setBleName:(NSString*)name;
--(void)inputPKG:(JL_PKG*)pkg;
-
--(void)noteEntityConnected;
--(void)noteEntityDisconnected;
--(void)noteEntityBleOff;
-
-/**
- 发送【命令包】
- @param cmdCode 具体要发送的命令
- @param needResponse 是否需要回复
- @param sendData 具体要发送的数据
- @discussion 只有isCommand是YES时needResponse才有意义,即只有命令才需要回复
- */
--(void)xmCommandCode:(uint8_t)cmdCode
-             needRep:(BOOL)needResponse
-                data:(NSData *)sendData;
-
-/**
- 发送【回复包】
- @param code  命令号
- @param sn      序号
- @param st      状态码
- @param data 回复的命令的内容
- */
--(void)cmdResponseCode:(uint8_t)code
-                  OpSN:(UInt8)sn
-                Status:(JL_CMDStatus)st
-                  Data:(NSData* __nullable)data;
-
-/**
- 发送【通知命令】
- @param name    通知名字
- @param obj       携带对象
- */
--(void)managerPost:(NSString*)name Object:(id __nullable)obj;
-
-/**
-  获取当前命令序号
- */
--(uint8_t)xmCommandSN;
-
-#pragma mark ---> 取出设备信息
-
-/// copy出来的原值
--(JLModel_Device *)outputDeviceModel;
-
-/// 取出原本的值
--(JLModel_Device *)getDeviceModel;
-
-#pragma mark ---> 获取设备信息
-extern NSString *kJL_MANAGER_TARGET_INFO;
--(void)cmdTargetFeatureResult:(JL_CMD_RESPOND __nullable)result;
--(void)cmdTargetFeature:(uint32_t)feature Result:(JL_CMD_RESPOND __nullable)result;
-
-#pragma mark ---> 断开经典蓝牙
--(void)cmdDisconnectEdrResult:(JL_CMD_RESPOND __nullable)result;
-
-#pragma mark ---> 重置配对流程标志(使适配连接ANCS设备)
--(void)cmdResetPairingResult:(JL_CMD_RESPOND __nullable)result;
-
-#pragma mark ---> 获取系统信息(全获取)
-/**
- @param function JL_FunctionCode
- @param result 回复
- */
--(void)cmdGetSystemInfo:(JL_FunctionCode)function
-                 Result:(JL_CMD_RESPOND __nullable)result;
--(void)cmdGetSystemInfoResult;
-
-#pragma mark ---> 获取系统信息(选择性获取)
-/**
- @param function JL_FunctionCode
- @param result 回复
- */
--(void)cmdGetSystemInfo:(JL_FunctionCode)function
-           SelectionBit:(uint32_t)bits
-                 Result:(JL_CMD_RESPOND __nullable)result;
--(void)cmdGetSystemInfoResult_1;
-
-#pragma mark ---> 设备主动返回的系统信息
-extern NSString *kJL_MANAGER_SYSTEM_INFO;
-
-#pragma mark ---> 通用、BT、Music、RTC、Aux
-/**
- @param function 功能类型
- @param cmd 操作命令
- @param ext 扩展数据
- @param result 回复
- */
--(void)cmdFunction:(JL_FunctionCode)function
-           Command:(UInt8)cmd
-            Extend:(UInt8)ext
-            Result:(JL_CMD_RESPOND __nullable)result;
-
-typedef void(^JL_IMAGE_RT)(NSMutableDictionary* __nullable dict);
-#pragma mark ---> 获取设备的图片
-/**
- @param vid 设备vid
- @param pid 设备pid
- @param result 图片数据
- */
--(void)cmdRequestDeviceImageVid:(NSString*)vid
-                            Pid:(NSString*)pid
-                         Result:(JL_IMAGE_RT __nullable)result;
-
--(void)cmdRequestDeviceImageVid:(NSString*)vid
-                            Pid:(NSString*)pid
-                      ItemArray:(NSArray *__nullable)itemArray
-                         Result:(JL_IMAGE_RT __nullable)result;
-
--(NSDictionary*)localDeviceImage:(NSString*)jsonFile;
-
-#pragma mark ---> 通知固件开始播放TTS内容
-
-/// 通知固件SDK播放tts
-/// @param status 0:开始播放,1:播放结束
--(void)cmdStartTTSNote:(uint8_t)status;
-
-
-/// 获取MD5信息
-/// @param result 回调
--(void)cmdGetMD5_Result:(JL_CMD_RESPOND)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_MusicControlManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_MusicControlManager.h
deleted file mode 100644 (file)
index bfa2d95..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-//
-//  JL_MusicControlManager.h
-//  JL_BLEKit
-//
-//  Created by 李放 on 2021/12/20.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-
-NS_ASSUME_NONNULL_BEGIN
-
-__attribute__((deprecated("已废弃,请使用JLDevPlayerCtrl类")))
-
-@interface JL_MusicControlManager  : JL_FunctionBaseManager
-
-
-#pragma mark ---> 设置播放模式
-/**
- @param mode 模式
- 0x01:全部循环; 0x02:设备循环; 0x03:单曲循环; 0x04:随机播放; 0x05:文件夹循环
- */
--(void)cmdSetSystemPlayMode:(JL_MusicMode)mode __attribute__((deprecated("cmdSetPlayMode:已废弃")));
-
-#pragma mark ---> 快进快退
-/**
- @param cmd 快进或者快退枚举
- @param sec 时间
- @param result 返回结果
- */
--(void)cmdFastPlay:(JL_FCmdMusic)cmd
-            Second:(uint16_t)sec
-            Result:(JL_CMD_RESPOND __nullable)result __attribute__((deprecated("cmdFastPlay:已废弃,需要使用JLDevPlayerCtrl类里的方法设置")));
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_NFC.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_NFC.h
deleted file mode 100644 (file)
index a3be1d7..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-//
-//  JL_NFC.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/8/2.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JL_TypeEnum.h"
-#import "JL_ManagerM.h"
-
-@class JL_RCSP;
-@class JL_EntityM;
-@class NfcFileModel;
-@class NfcModel;
-NS_ASSUME_NONNULL_BEGIN
-
-typedef void(^NfcSyncResult)(UInt8 result,NSArray<NfcModel *> * _Nullable models);
-
-typedef void(^NfcIDResult)(UInt16 result);
-
-typedef void(^NfcDefaultResult)(BOOL result);
-
-typedef void(^NfcBeginAddResult)(JL_EntityM *entity);
-
-
-@interface JL_NFC : NSObject
-
--(instancetype)initWith:(JL_EntityM *)entity FileHandler:(JL_FileHandleType)handler;
-
-
-/// 同步NFC信息开始
--(void)w_syncNfcStart:(NfcSyncResult)result;
-
-
-/// 修改NFC的信息
-/// @param dict 修改的内容
-/**
- dict 的内容
- {
- @"timestamp" : NSDate()
- @"nickname" : @"我的家"
- }
- 如果key值找不到对应的value,那就说明该项值不参与被修改
- */
--(void)w_modifyNfc:(NSDictionary *)dict WithID:(UInt16)nfcID;
-
-
-/// 删除NFC信息
-/// @param model nfc头部model
--(void)w_deleteNfc:(NfcModel *)model;
-
-
-/// 获取当前正在使用着的默认NFC卡ID
-/// @param result NFC卡id
--(void)w_getNfcDefaultCard:(NfcIDResult)result;
-
-
-/// 设置默认的NFC信息
-/// @param model NFC头部model
--(void)w_setNfcDefalutCard:(NfcModel *)model result:(NfcDefaultResult)result;
-
-
-/// 通知默认NFC改变
-/// @param model NFC信息头部
--(void)w_NfcDefaultNotify:(NfcModel *)model;
-
-/// 添加NFC文件
-/// @param model NFC文件模型
-/// @param result 开始传输操作
-/** examp.
- NfcFileModel *fm = [[NfcFileModel alloc] init];
-//    fm.idCard = ...
-//    fm.nfcFileName = ...
- JL_NFC *mgr = [[JL_NFC alloc] init];
- [mgr w_NfcAddCard:fm BeginAdd:^(JL_EntityM * _Nonnull entity) {
-    //大文件传输开始
-     [entity.mCmdManager cmdBigFileData:#path WithFileName:#fileName Result:^(JL_BigFileResult result, float progress) {
-         if (result == JL_BigFileTransferEnd) {
-             //结束NFC文件添加
-             [mgr w_NfcEndAdd:fm];
-         }
-         
-     }];
- }];
- */
--(void)w_NfcAddCard:(NfcFileModel *)model BeginAdd:(NfcBeginAddResult)result;
-
-/// 添加NFC文件结束
-/// @param model NFC文件模型
--(void)w_NfcEndAdd:(NfcFileModel *)model;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_OpCode.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_OpCode.h
deleted file mode 100644 (file)
index 62fefce..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-//
-//  JL_OpCode.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2022/12/28.
-//  Copyright © 2022 www.zh-jieli.com. All rights reserved.
-//
-
-#ifndef JL_OpCode_h
-#define JL_OpCode_h
-
-#define kJL_DATA_CMD                0x0001
-#define kJL_GET_TARGET_FEATURE_MAP  0x0002  //保留
-#define kJL_GET_TARGET_FEATURE      0x0003
-#define kJL_VOICE_START             0x0004
-#define kJL_VOICE_STOP              0x0005
-#define kJL_VOICE_DISCONNECT_EDR    0x0006
-#define kJL_SYS_INFO_GET            0x0007
-#define kJL_SYS_INFO_SET            0x0008
-#define kJL_SYS_INFO_AUTO_UPDATE    0x0009
-#define kJL_PHONE_CALL_REQUEST      0x000a
-#define kJL_FILE_BROWSE_START       0x000c
-#define kJL_FILE_BROWSE_STOP        0x000d
-#define kJL_FILE_STRUCT_CHANGE      0x00f2  //通知文件结构变化
-#define kJL_FUNCTION_CMD            0x000e
-#define kJL_LRC_GET_START           0x000f
-#define kJL_LRC_GET_STOP            0x0010
-#define kJL_A2F_TTS_START           0x0011
-#define kJL_BT_SCAN_START           0x0012
-#define kJL_BT_SCAN_RESULT          0x0013
-#define kJL_BT_SCAN_STOP            0x0014
-//#define kJL_BT_CONNECT              0x0015
-#define kJL_FILE_START              0x0016
-#define kJL_FILE_STOP               0x0017
-#define kJL_FIND_DEVICE             0x0019
-#define kJL_CUSTOMER_USER           0x00ff
-
-#define kJL_OTA_INFO_OFFSET         0x00e1
-#define kJL_OTA_CAN_UPDATE          0x00e2
-#define kJL_OTA_ENTER_UPDATE        0x00e3
-#define kJL_OTA_EXIT_UPDATE         0x00e4
-#define kJL_OTA_GET_DATA            0x00e5
-#define kJL_OTA_STATUS_UPDATE       0x00e6
-#define kJL_OTA_REBOOT              0x00e7
-#define kJL_OTA_BLE_SPP             0x000b
-#define kJL_OTA_LENGTH              0x00e8
-
-#define kJL_SET_ADV                 0x00C0
-#define kJL_GET_ADV                 0x00C1
-#define kJL_ADV_NOTIFY_DEVICE       0x00C2
-#define kJL_ADV_NOTIFY_ENABLE       0x00C3
-#define kJL_ADV_NOTIFY_TIPS         0x00C4  //主要用于ADV设置同步后需要主机操作的行为。
-
-#define kJL_SET_APP_INFO            0x00D0
-#define kJL_SET_MTU                 0x00D1
-#define kJL_GET_MD5                 0x00D4
-#define kJL_GET_LOW_DELAY           0x00D5
-#define kJL_GET_FLASH_INFO          0x00D6
-#define kJL_SET_DEV_STORAGE         0x00D8  //设置当前使用的存储设备
-#define kJL_GET_DEV_CONFIG          0x00D9  //获取设备配置信息
-#define kJL_GET_FLASH_W_R           0x001A
-
-#define kJL_BIGFILE_START           0x001B
-#define kJL_BIGFILE_END             0x001C
-#define kJL_BIGFILE_GET_FILE        0x001D
-#define kJL_BIGFILE_STOP            0x001E
-#define kJL_FILE_DELETE             0x001F
-#define kJL_GET_FILENAME            0x0020
-#define kJL_PRE_ENVIRONMENT         0x0021
-#define kJL_FILE_FORMAT             0x0022
-#define kJL_FILE_NAME_DEL           0x0023
-#define kJL_FILE_READ_CONTENT       0x0024
-
-#define kJL_RTC_PLUS                0x0025
-#define kJL_BATCH_OPERATE           0x0026
-#define kJL_FILE_GET_CRC            0x0027
-#define kJL_SMALL_FILE              0x0028
-
-#define kJL_DEVICE_LOG              0x0029
-#define kJL_BIG_DATA                0x0030
-#define kJL_TWS_NAME_LIST           0x0031   //一拖二/获取设备已连接手机名
-#define kJL_AI_CONTROL              0x0032   //AI控制命令
-#define kJL_PUBLIC_SET              0x0033   //公共设置命令
-
-
-#define kJL_WEAR_REQ_OPCODE         0x00A0   //获取运动信息
-#define kJL_WEAR_SET_OPCODE         0x00A1   //设置运动信息
-#define kJL_WEAR_RES_OPCODE         0x00A2   //设备主动推的运动信息
-#define kJL_WEAR_CMD_LOG            0x00A3   //传感器log传输命令
-#define kJL_WEAR_CMD_SETTING        0x00A5   //健康设备设置命令
-#define kJL_WEAR_SYNC_SPORT         0x00A6   //运动模式相关命令(同步数据)
-
-#define kJL_PHONE_NUMBER_WAY        0x00F1
-
-#endif /* JL_OpCode_h */
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_RCSP.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_RCSP.h
deleted file mode 100644 (file)
index 8816e63..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-//
-//  JL_RCSP.h
-//  JL_BLEKit
-//
-//  Created by zhihui liang on 2018/11/9.
-//  Copyright © 2018 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_OpCode.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-
-
-@class JL_PKG;
-@interface JL_RCSP : NSObject
-
-/**
- 解析JL数据包
- 
- @param data 把数据转成JL_PKG模型。
- @return JL_PKG数据模型
- */
-+(JL_PKG*)rcspAnalysisData:(NSData*)data;
-
-/**
- 生成XM数据包
- 
- @param pkg 把JL_PKG模型转成data。
- @return 数据
- */
-+(NSData*)rcspMakePackage:(JL_PKG*)pkg;
-
-/**
- 分析JL_PKG参数
- 
- @param pkg 把JL_PKG的xmData参数部分解析成一列数组。
- @return 参数数组
- */
-+(NSArray*)rcspAnalysisParams:(JL_PKG*)pkg;
-
-/**
- 分解dJL_PKG信息
-
- @param data JL_PKG中的信息数据
- @return 参数c数组
- */
-+(NSArray*)rcspInfoArrFromData:(NSData*)data;
-
-/// 拆分LTV数据
-/// 当前方法针对的是 L 长度为 2Byte
-/// @param data LTV数据
-+(NSArray*)rcspInfoFromData2ByteSize:(NSData*)data;
-
-/**
- 生成JL_PKG参数
- 
- @param array 把参数数组变成data(注意:数组元素必须是NSData类型)。
- @return 数据
- */
-+(NSData*)rcspMakeParams:(NSArray*)array;
-@end
-
-@interface JL_PKG : NSObject
-@property(assign,nonatomic) uint16_t pkgIsCommand;       //1Bit
-@property(assign,nonatomic) uint16_t pkgNeedResponse;    //1Bit
-@property(assign,nonatomic) uint16_t pkgUnused;          //6Bits
-@property(assign,nonatomic) uint16_t pkgOpCode;          //8Bits
-@property(assign,nonatomic) uint16_t pkgLength;          //参数长度(本身不计)
-@property(strong,nonatomic) NSData   *pkgData;           //参数数据
-@end
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_AirPressure.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_AirPressure.h
deleted file mode 100644 (file)
index 766e37c..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-//
-//  JL_SDM_AirPressure.h
-//  Test
-//
-//  Created by EzioChan on 2021/4/6.
-//  Copyright © 2021 Zhuhai Jieli Technology Co.,Ltd. All rights reserved.
-//
-
-#import "JLSportDataModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 压力实时
-@interface JL_SDM_AirPressure : JLSportDataModel
-/// 实时
-@property(nonatomic,assign)int realTime;
-/// 最高
-@property(nonatomic,assign)int max;
-/// 最低
-@property(nonatomic,assign)int min;
-
-/// 处理回复数据内容
-/// @param value 数据内容
-/// @param submask 功能标记位
-+(JL_SDM_AirPressure*)responseData:(NSData *)value subMask:(NSData *)submask;
-
-/// 请求内容设置
-/// @param rt 是否需要实时气压
-/// @param min 是否需要最小气压
-/// @param max 是否需要最大气压
-+(JL_SDM_AirPressure*)requireRealTime:(BOOL)rt min:(BOOL)min Max:(BOOL)max;
-
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_Altitude.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_Altitude.h
deleted file mode 100644 (file)
index e4e73c3..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-//
-//  JL_SDM_Altitude.h
-//  Test
-//
-//  Created by EzioChan on 2021/4/6.
-//  Copyright © 2021 Zhuhai Jieli Technology Co.,Ltd. All rights reserved.
-//
-
-#import "JLSportDataModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-///海拔高度相关
-@interface JL_SDM_Altitude : JLSportDataModel
-
-/// 最大值
-@property(nonatomic,assign)float max;
-/// 最小值
-@property(nonatomic,assign)float min;
-/// 实时的
-@property(nonatomic,assign)float realTime;
-
-/// 处理回复数据内容
-/// @param value 数据内容
-/// @param submask 功能标记位
-+(JL_SDM_Altitude*)responseData:(NSData *)value subMask:(NSData *)submask;
-
-/// 请求海拔内容设置
-/// @param rt 是否需要实时海拔
-/// @param min 是否需要最小海拔
-/// @param max 是否需要最大海拔
-+(JL_SDM_Altitude*)requireRealTime:(BOOL)rt min:(BOOL)min Max:(BOOL)max;
-
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_Header.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_Header.h
deleted file mode 100644 (file)
index d106663..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-//
-//  JL_SDM_Header.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/4/8.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#ifndef JL_SDM_Header_h
-#define JL_SDM_Header_h
-
-#import <Foundation/Foundation.h>
-#import "JL_SDM_Stress.h"
-#import "JL_SDM_Altitude.h"
-#import "JL_SDM_MaxOxg.h"
-#import "JL_SDM_RecTime.h"
-#import "JL_SDM_HeartRate.h"
-#import "JL_SDM_MoveSteps.h"
-#import "JL_SDM_TrainLoad.h"
-#import "JL_SDM_AirPressure.h"
-#import "JL_SDM_OxSaturation.h"
-#import "JL_SDM_SportMessage.h"
-#import "JL_MSG_Weather.h"
-#import "JL_MSG_Func.h"
-#import "JLWatchEnum.h"
-#import "NfcModel.h"
-#import "JLwSettingModel.h"
-#import "JLSensorFuncModel.h"
-#import "JLSedentaryRmdModel.h"
-#import "JLConsequentHeartRateModel.h"
-#import "JLExerciseHeartRateRemindModel.h"
-#import "JLAutoPressureModel.h"
-#import "JLSleepMonitorModel.h"
-#import "JLFallDetectionModel.h"
-#import "JLEmergencyContactModel.h"
-#import "JLOxygenSturationRemindModel.h"
-#import "JLWristLiftDetectionModel.h"
-#import "JLPersonInfoModel.h"
-#import "JLDisconnectRemindModel.h"
-#import "JLWearSyncInfoModel.h"
-#import "JLWearSyncFinishModel.h"
-#import "JLWearSyncRealTimeModel.h"
-#import "JLeSimManager.h"
-
-
-#include <syslog.h>
-#ifndef JL_IOS
-#define JL_IOS
-#endif
-
-#pragma - Please select your log mode and log level
-
-// Note: Only debug mode will print log. You could also set mode for log level.
-#define kJLDebugMode
-// JLLogLevelFatal , JLLogLevelError , JLLogLevelWarn , JLLogLevelInfo , JLLogLevelDebug
-#define JLLogLevelError
-//Note: print method name
-#define kModuleName __func__
-
-#pragma ----------------------------------
-
-#ifdef kJLDebugMode
-
-static const int JL_IOS_FLAG_FATAL = 0x10;
-static const int JL_IOS_FLAG_ERROR = 0x08;
-static const int JL_IOS_FLAG_WARN  = 0x04;
-static const int JL_IOS_FLAG_INFO  = 0x02;
-static const int JL_IOS_FLAG_DEBUG = 0x01;
-
-#ifdef JLLogLevelFatal
-static const int JL_IOS_LOG_LEVEL = JL_IOS_FLAG_FATAL;
-#elif defined(JLLogLevelError)
-static const int JL_IOS_LOG_LEVEL = (JL_IOS_FLAG_FATAL | JL_IOS_FLAG_ERROR);
-#elif defined(JLLogLevelWarn)
-static const int JL_IOS_LOG_LEVEL = (JL_IOS_FLAG_FATAL | JL_IOS_FLAG_ERROR | JL_IOS_FLAG_WARN);
-#elif defined(JLLogLevelInfo)
-static const int JL_IOS_LOG_LEVEL = (JL_IOS_FLAG_FATAL | JL_IOS_FLAG_ERROR | JL_IOS_FLAG_WARN | JL_IOS_FLAG_INFO);
-#elif defined(JLLogLevelDebug)
-static const int JL_IOS_LOG_LEVEL = (JL_IOS_FLAG_FATAL | JL_IOS_FLAG_ERROR | JL_IOS_FLAG_WARN | JL_IOS_FLAG_INFO | JL_IOS_FLAG_DEBUG);
-#endif
-
-
-
-#define log4cplus_fatal(category, logFmt, ...) \
-if(JL_IOS_LOG_LEVEL & JL_IOS_FLAG_FATAL) \
-syslog(LOG_CRIT, "%s:" logFmt, category,##__VA_ARGS__); \
-
-#define log4cplus_error(category, logFmt, ...) \
-if(JL_IOS_LOG_LEVEL & JL_IOS_FLAG_ERROR) \
-syslog(LOG_ERR, "%s:" logFmt, category,##__VA_ARGS__); \
-
-#define log4cplus_warn(category, logFmt, ...) \
-if(JL_IOS_LOG_LEVEL & JL_IOS_FLAG_WARN) \
-syslog(LOG_WARNING, "%s:" logFmt, category,##__VA_ARGS__); \
-
-#define log4cplus_info(category, logFmt, ...) \
-if(JL_IOS_LOG_LEVEL & JL_IOS_FLAG_INFO) \
-syslog(LOG_WARNING, "%s:" logFmt, category,##__VA_ARGS__); \
-
-#define log4cplus_debug(category, logFmt, ...) \
-if(JL_IOS_LOG_LEVEL & JL_IOS_FLAG_DEBUG) \
-syslog(LOG_WARNING, "%s:" logFmt, category,##__VA_ARGS__); \
-
-
-#else
-
-#define log4cplus_fatal(category, logFmt, ...); \
-
-#define log4cplus_error(category, logFmt, ...); \
-
-#define log4cplus_warn(category, logFmt, ...); \
-
-#define log4cplus_info(category, logFmt, ...); \
-
-#define log4cplus_debug(category, logFmt, ...); \
-
-#endif
-
-///心率
-typedef void(^JL_CB_HeartRate)(JL_SDM_HeartRate *heartRate);
-///气压
-typedef void(^JL_CB_AirPressure)(JL_SDM_AirPressure *ap);
-///海拔
-typedef void(^JL_CB_Altitude)(JL_SDM_Altitude *altitude);
-///运动步数
-typedef void(^JL_CB_MoveSteps)(JL_SDM_MoveSteps *ms);
-///压力检测
-typedef void(^JL_CB_Stress)(JL_SDM_Stress *stress);
-///血氧饱和度
-typedef void(^JL_CB_Oxsaturation)(JL_SDM_OxSaturation *oxs);
-///训练负荷
-typedef void(^JL_CB_TrainLoad)(JL_SDM_TrainLoad *tl);
-///最大摄氧量
-typedef void(^JL_CB_MaxOxg)(JL_SDM_MaxOxg *mo);
-///运动恢复时间
-typedef void(^JL_CB_RecTime)(JL_SDM_RecTime *rt);
-///运动信息
-typedef void(^JL_CB_SportMsg)(JL_SDM_SportMessage *sm);
-///传感器log
-typedef void(^JL_CB_WatchLog)(JL_WATCH_LOG_TYPE type,NSData *data);
-
-//MARK:设置相关
-///设置状态回复
-typedef void(^JL_CB_Status)(BOOL succeed);
-
-//MARK: - 同步相关
-///读取同步运动状态
-typedef void(^JL_CB_SyncSportInfo)(JLWearSyncInfoModel *infoModel);
-/// 读取同步状态
-typedef void(^JL_CB_SyncSportDataInfo)(JLWearSyncDataModel *infoModel);
-
-
-#endif /* JL_SDM_Header_h */
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_HeartRate.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_HeartRate.h
deleted file mode 100644 (file)
index 0a9925d..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-//
-//  JL_SDM_HeartBeat.h
-//  Test
-//
-//  Created by EzioChan on 2021/4/6.
-//  Copyright © 2021 Zhuhai Jieli Technology Co.,Ltd. All rights reserved.
-//
-/*
- * 这是一个Sport Data Model的对象
- */
-///心率model
-#import "JLSportDataModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 心率相关内容
-@interface JL_SDM_HeartRate : JLSportDataModel
-/// 实时心率
-@property(nonatomic,assign)uint8_t realTime;
-/// 静息心率
-@property(nonatomic,assign)uint8_t resting;
-/// 最大心率
-@property(nonatomic,assign)uint8_t max;
-
-/// 单次测量的心率
-@property(nonatomic,assign)uint8_t singleRate;
-
-/// 是否为单次测量的数据
-@property(nonatomic,assign)BOOL isSingle;
-
-/// 处理回复数据内容
-/// @param value 数据内容
-/// @param submask 功能标记位
-+(JL_SDM_HeartRate*)responseData:(NSData *)value subMask:(NSData *)submask;
-
-/// 请求心率内容设置
-/// @param rt 是否需要实时心率
-/// @param rting 是否需要静息心率
-/// @param max 是否需要最大心率
-+(JL_SDM_HeartRate*)requireRealTime:(BOOL)rt Resting:(BOOL)rting Max:(BOOL)max;
-
-/// 单次测量
-+(JL_SDM_HeartRate*)requireSingle;
-
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_MaxOxg.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_MaxOxg.h
deleted file mode 100644 (file)
index a0bf6d5..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-//
-//  JL_SDM_MaxOxg.h
-//  Test
-//
-//  Created by EzioChan on 2021/4/7.
-//  Copyright © 2021 Zhuhai Jieli Technology Co.,Ltd. All rights reserved.
-//
-
-#import "JLSportDataModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JL_SDM_MaxOxg : JLSportDataModel
-
-@property(nonatomic,assign)int max;
-
-///最大摄氧量
-/// 处理回复数据内容
-/// @param value 数据内容
-/// @param submask 功能标记位
-+(JL_SDM_MaxOxg*)responseData:(NSData *)value subMask:(NSData *)submask;
-
-/// 请求内容
-+(JL_SDM_MaxOxg*)require;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_MoveSteps.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_MoveSteps.h
deleted file mode 100644 (file)
index 46fa107..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-//
-//  JL_SDM_MoveSteps.h
-//  Test
-//
-//  Created by EzioChan on 2021/4/6.
-//  Copyright © 2021 Zhuhai Jieli Technology Co.,Ltd. All rights reserved.
-//
-
-#import "JLSportDataModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-///实时步数
-@interface JL_SDM_MoveSteps : JLSportDataModel
-/// 实时步数
-@property(nonatomic,assign)NSInteger rtStep;
-
-/// 热量,单位:千卡
-@property(nonatomic,assign)NSInteger calories;
-
-/// 距离,单位:0.01公里
-@property(nonatomic,assign)NSInteger distance;
-/// 处理回复数据内容
-/// @param value 数据内容
-/// @param submask 功能标记位
-+(JL_SDM_MoveSteps*)responseData:(NSData *)value subMask:(NSData *)submask;
-
-/// 选择性请求内容
-+(JL_SDM_MoveSteps*)require:(BOOL)rst distance:(BOOL)dts calories:(BOOL)ca;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_OxSaturation.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_OxSaturation.h
deleted file mode 100644 (file)
index f594e25..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-//
-//  JL_SDM_OxSaturation.h
-//  Test
-//
-//  Created by EzioChan on 2021/4/7.
-//  Copyright © 2021 Zhuhai Jieli Technology Co.,Ltd. All rights reserved.
-//
-
-#import "JLSportDataModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JLOxSaturationType) {
-    //当前血氧饱和度
-    JLOxSaturation_nowSta = 0x01,
-    //最大血氧
-    JLOxSaturation_max = 0x01 << 1,
-    //最小血氧
-    JLOxSaturation_min = 0x01 << 2,
-    //单次测量
-    JLOxSaturation_single = 0x01 << 3
-};
-
-/// 血氧饱和度
-@interface JL_SDM_OxSaturation : JLSportDataModel
-
-/// 饱和度
-@property(nonatomic,assign)int staturation;
-/// 最大饱和度
-@property(nonatomic,assign)uint8_t max;
-/// 最小饱和度
-@property(nonatomic,assign)uint8_t min;
-
-/// 单次测量的饱和度
-@property(nonatomic,assign)uint8_t singleStaturation;
-
-/// 是否为单次测量的数据
-@property(nonatomic,assign)BOOL isSingle;
-
-
-/// 血氧饱和度
-/// 处理回复数据内容
-/// @param value 数据内容
-/// @param submask 功能标记位
-+(JL_SDM_OxSaturation*)responseData:(NSData *)value subMask:(NSData *)submask;
-
-/// 请求内容
-+(JL_SDM_OxSaturation*)require;
-
-
-/// 请求血氧浓度
-/// @param type 类型
-/// 该类型可以同时请求多个,诸如:JLOxSaturation_nowSta | JLOxSaturation_max | JLOxSaturation_min
-+(JL_SDM_OxSaturation*)requireByBit:(JLOxSaturationType)type;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_RecTime.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_RecTime.h
deleted file mode 100644 (file)
index 3e0f3c5..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-//
-//  JL_SDM_RecTime.h
-//  Test
-//
-//  Created by EzioChan on 2021/4/7.
-//  Copyright © 2021 Zhuhai Jieli Technology Co.,Ltd. All rights reserved.
-//
-
-#import "JLSportDataModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JL_SDM_RecTime : JLSportDataModel
-
-@property(nonatomic,assign)int hour;
-@property(nonatomic,assign)int min;
-
-/// 处理回复数据内容
-/// @param value 数据内容
-/// @param submask 功能标记位
-+(JL_SDM_RecTime*)responseData:(NSData *)value subMask:(NSData *)submask;
-
-/// 请求内容
-+(JL_SDM_RecTime*)require;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_SportMessage.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_SportMessage.h
deleted file mode 100644 (file)
index 38e84d9..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-//
-//  JL_SDM_SportMessage.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/4/8.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import "JLSportDataModel.h"
-#import "JLWatchEnum.h"
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JL_SDM_SportMessage : JLSportDataModel
-
-/// 运动模式
-@property(nonatomic,assign)JL_SportPattern sportPattern;
-/// 距离,单位:0.01km
-@property(nonatomic,assign)int               distance;
-/// 开始时间
-@property(nonatomic,strong)NSDate            *startTime;
-/// 结束时间
-@property(nonatomic,strong)NSDate            *endTime;
-/// 热量,单位:千卡 Kcal
-@property(nonatomic,assign)int               xkcal;
-/// 速度。单位:0.01 km/h
-@property(nonatomic,assign)int               speed;
-
-
-/// 分析返回的数据
-/// @param value subData
-/// @param submask submask
-+(JL_SDM_SportMessage *)responseData:(NSData *)value subMask:(NSData *)submask;
-
-/// 请求要获取的内容
-/// @param m 是否请求模式
-/// @param d 是否请求距离
-/// @param st 是否请求开始时间
-/// @param et 是否请求结束时间
-/// @param kcal 是否请求卡路里
-/// @param sp 是否请求速度
-+(JL_SDM_SportMessage *)requireModel:(BOOL)m distance:(BOOL)d start:(BOOL)st end:(BOOL)et kcal:(BOOL)kcal speed:(BOOL)sp;
-
-/// 请求全部数据
-+(JL_SDM_SportMessage *)requireAll;
-
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_Stress.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_Stress.h
deleted file mode 100644 (file)
index 75d9260..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-//
-//  JL_SDM_Stress.h
-//  Test
-//
-//  Created by EzioChan on 2021/4/7.
-//  Copyright © 2021 Zhuhai Jieli Technology Co.,Ltd. All rights reserved.
-//
-
-#import "JLSportDataModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 实时压力
-@interface JL_SDM_Stress : JLSportDataModel
-
-@property(nonatomic,assign)int stress;
-
-/// 处理回复数据内容
-/// @param value 数据内容
-/// @param submask 功能标记位
-+(JL_SDM_Stress*)responseData:(NSData *)value subMask:(NSData *)submask;
-
-/// 请求内容
-+(JL_SDM_Stress*)require;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_TrainLoad.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SDM_TrainLoad.h
deleted file mode 100644 (file)
index c93ff24..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-//
-//  JL_SDM_TrainLoad.h
-//  Test
-//
-//  Created by EzioChan on 2021/4/7.
-//  Copyright © 2021 Zhuhai Jieli Technology Co.,Ltd. All rights reserved.
-//
-
-#import "JLSportDataModel.h"
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JL_SDM_TrainLoad : JLSportDataModel
-
-@property(nonatomic,assign)int load;
-
-///训练负荷
-/// 处理回复数据内容
-/// @param value 数据内容
-/// @param submask 功能标记位
-+(JL_SDM_TrainLoad*)responseData:(NSData *)value subMask:(NSData *)submask;
-
-/// 请求内容
-+(JL_SDM_TrainLoad*)require;
-
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SmallFileManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SmallFileManager.h
deleted file mode 100644 (file)
index fae3600..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-//
-//  JL_SmallFileManager.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/12/13.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JLModel_SmallFile.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_SmallFileOperate) {
-    JL_SmallFileOperateFail        = 0x00, //失败
-    JL_SmallFileOperateDoing       = 0x01, //操作中
-    JL_SmallFileOperateSuceess     = 0x02, //成功
-    JL_SmallFileOperateUnknown     = 0x03, //未知
-    JL_SmallFileOperateExcess      = 0x04, //超量
-    JL_SmallFileOperateCrcError    = 0x05, //CRC错误
-    JL_SmallFileOperateTimeout     = 0x06, //超时
-};
-typedef void(^JL_SMALLFILE_DEL)(JL_SmallFileOperate status);
-typedef void(^JL_SMALLFILE_READ)(JL_SmallFileOperate status,
-                                 float progress, NSData* __nullable data);
-typedef void(^JL_SMALLFILE_NEW)(JL_SmallFileOperate status,
-                                 float progress, uint16_t fileID);
-typedef void(^JL_SMALLFILE_UPDATE)(JL_SmallFileOperate status,
-                                 float progress);
-typedef void(^JL_SMALLFILE_LIST)(NSArray <JLModel_SmallFile*>* __nullable array);
-typedef void(^JL_SMALLFILE_RT)(uint8_t flag, uint16_t fileID,NSData* __nullable data);
-
-@interface JL_SmallFileManager : JL_FunctionBaseManager
-
-#pragma mark - 查询文件
-
-/// 查询文件
-/// @param type 文件类型
-/// 文件类型除了已有的文件外,还可以扩展类型是Uint8的值
-/// @param result 列表回调
--(void)cmdSmallFileQueryType:(JL_SmallFileType)type
-                      Result:(JL_SMALLFILE_LIST __nullable)result;
-
-#pragma mark - 删除文件
-
-/// 删除文件
-/// @param file 文件模型:JLModel_SmallFile
-/// @param result 操作回调结果
--(void)cmdSmallFileDelete:(JLModel_SmallFile*)file Result:(JL_SMALLFILE_DEL)result;
-
-#pragma mark - 读取文件
-
-/// 读取文件
-/// @param file 文件模型:JLModel_SmallFile
-/// @param result 回调文件数据以及进度,通过分包式回调。
--(void)cmdSmallFileRead:(JLModel_SmallFile*)file
-                 Result:(JL_SMALLFILE_READ)result;
-
--(void)cmdSmallFileReadSync:(JLModel_SmallFile*)file
-                     Result:(JL_SMALLFILE_READ)result;//同步
-
-#pragma mark - 新增文件
-
-/// 新增文件
-/// @param data 文件数据
-/// @param type 文件类型
-/// @param result 回调的结果,包含分包进度
--(void)cmdSmallFileNew:(NSData*)data
-                  Type:(JL_SmallFileType)type
-                Result:(JL_SMALLFILE_NEW)result;
-
--(void)cmdSmallFileNewSync:(NSData*)data
-                      Type:(JL_SmallFileType)type
-                    Result:(JL_SMALLFILE_NEW)result;
-
-#pragma mark - 更新文件
-
-/// 更新文件
-/// @param file 文件模型:JLModel_SmallFile
-/// @param data 文件数据
-/// @param result 回调进度
--(void)cmdSmallFileUpdate:(JLModel_SmallFile*)file
-                     Data:(NSData*)data
-                   Result:(JL_SMALLFILE_UPDATE)result;
-
--(void)cmdSmallFileUpdateSync:(JLModel_SmallFile*)file
-                         Data:(NSData*)data
-                       Result:(JL_SMALLFILE_UPDATE)result;
-
-#pragma mark - 底层API
-
-/// 读取文件,更低等级的API
-/// @param type 文件类型
-/// @param fileId 文件ID
-/// @param offset 偏移值
-/// @param fileSize 数据大小
-/// @param flag 是否为第一包查询
-/// @param result 回调文件结果
--(void)cmdSmallFileReadType:(uint8_t)type
-                     FileID:(uint16_t)fileId
-                     Offset:(uint16_t)offset
-                   FileSize:(uint16_t)fileSize
-                       Flag:(uint8_t)flag
-                     Result:(JL_SMALLFILE_RT __nullable)result;
-
-
-/// 插入新文件,更低等级的API
-/// @param type 文件类型
-/// @param offset 偏移值
-/// @param fileSize 数据量大小
-/// @param crc16 crc校验码
-/// @param data 要插入的数据
-/// @param result 回调结果
--(void)cmdSmallFileNewType:(uint8_t)type
-                    Offset:(uint16_t)offset
-                  FileSize:(uint16_t)fileSize
-                     Crc16:(uint16_t)crc16
-                  FileData:(NSData*)data
-                    Result:(JL_SMALLFILE_RT __nullable)result;
-
-/// 更新文件,更低等级的API
-/// @param type 文件类型
-/// @param fileId 文件ID
-/// @param offset 偏移值
-/// @param fileSize 数据包的大小
-/// @param crc16 数据包的crc校验
-/// @param data 数据包
-/// @param result 回调结果
--(void)cmdSmallFileUpdateType:(uint8_t)type
-                       FileID:(uint16_t)fileId
-                       Offset:(uint16_t)offset
-                     FileSize:(uint16_t)fileSize
-                        Crc16:(uint16_t)crc16
-                     FileData:(NSData*)data
-                       Result:(JL_SMALLFILE_RT __nullable)result;
-
-/// 小文件删除,更低等级的API
-/// @param type 文件类型
-/// @param fileId 文件id
-/// @param result 回调结果
--(void)cmdSmallFileDeleteType:(uint8_t)type
-                       FileID:(uint16_t)fileId
-                       Result:(JL_SMALLFILE_RT __nullable)result;
-
--(void)closeTimer;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SoundCardManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SoundCardManager.h
deleted file mode 100644 (file)
index 6e23c4c..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-//
-//  JL_SoundCardManager.h
-//  JL_BLEKit
-//
-//  Created by 李放 on 2021/12/20.
-//  Modify by EzioChan on 2023/09/25.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-
-typedef NS_ENUM(uint8_t, JL_KalaoIndex) {
-    ///卡拉OK 混响
-    JL_KalaoIndexReverberation  = 0,
-    ///卡拉OK 延时
-    JL_KalaoIndexDelayed        = 1,
-    ///卡拉OK 音量
-    JL_KalaoIndexVolume         = 2,
-};
-
-@class JL_ManagerM;
-
-/// 声卡功能
-@interface JLSoundCardIndexValue : NSObject
-
-@property (assign,nonatomic)uint8_t index;
-
-@property (assign,nonatomic)uint16_t value;
-
-@end
-
-@protocol JLSoundCardMgrDelegate <NSObject>
-
-/// 声卡控制回调
-/// - Parameters:
-///   - mask: 掩码
-///   - items: 掩码对应的值
--(void)jlsoundCardMask:(uint64_t)mask values:(NSArray <JLSoundCardIndexValue *> *)items;
-
-/// 声卡控制回调
-/// - Parameter frequencyArray: 频率数组
--(void)jlsoundCardMicFrequency:(NSArray*)frequencyArray;
-
-/// 声卡控制回调
-/// - Parameter eqArray: EQ数组
--(void)jlsoundCardMicEQ:(NSArray*)eqArray;
-
-@end
-
-
-/// 卡拉OK(声卡控制相关)
-@interface JL_SoundCardManager : NSObject
-
-/// 卡拉OK 组件索引
-@property (assign,nonatomic)long index;
-
-/// 卡拉OK 组件的值
-@property (assign,nonatomic)long value;
-
-/// 卡拉OK 固件返回的掩码
-@property (assign,nonatomic)uint64_t mask;
-
-/// 声卡功能参数列表
-@property (strong,nonatomic)NSArray <JLSoundCardIndexValue *>* iVitems;
-
-/// 卡拉OK 频率数组
-@property (strong,nonatomic)NSArray *micFrequencyArray;
-
-/// 卡拉OK EQ数组
-@property (strong,nonatomic)NSArray *micEQArray;
-
-/// 代理
-@property (weak,nonatomic)id<JLSoundCardMgrDelegate> delegate;
-
-/// 设置卡拉OK【index、value】
-/// - Parameters:
-///  - manager: 设备对象
-///  - index: index 参数类型 JL_KalaoIndex 目前支持混响、延时、音量的设置。(具体可以看固件的json文件)
-///  - value:  0-100
-///  - result: 设置结果
--(void)cmdSetKalaok:(JL_ManagerM *)manager Index:(JL_KalaoIndex)index Value:(uint16_t)value result:(JL_CMD_RESPOND)result;
-
-/// 设置卡拉OK【MIC EQ增益】
-/// - Parameters:
-///  - manager: 设备对象
-///  - array:  @[@(0),@(0),@(0),@(0),@(0)]  单个取值范围 [-8.0 , +8.0]。
-///  - result: 设置结果
--(void)cmdSetKaraoke:(JL_ManagerM *)manager micEQ:(NSArray*)array result:(JL_CMD_RESPOND)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SpeechAIttsHandler.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SpeechAIttsHandler.h
deleted file mode 100644 (file)
index 7ee05bd..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-//
-//  JL_SpeechAIttsHandler.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/7/22.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JLModel_SPEEX.h>
-#import <JL_BLEKit/JL_BigDataManager.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class JL_ManagerM;
-@protocol JL_SpeechAIttsHandlerDelegate <NSObject>
-
-/// 设备回调ai云数据
-/// - Parameters:
-///   - manager: 设备
-///   - aicloud: AI云数据对象
--(void)receiveDataFrom:(JL_ManagerM *)manager WithAiCloud:(JLSpeechAiCloud *)aicloud;
-
-/// 设备返回tts合成数据
-/// - Parameters:
-///   - manager: 设备
-///   - tts: tts数据对象
--(void)receiveDataFrom:(JL_ManagerM *)manager WithTTS:(JLSpeechTTSSynthesis *)tts;
-
-@end
-
-@interface JL_SpeechAIttsHandler : NSObject
-
-@property(nonatomic,weak)id<JL_SpeechAIttsHandlerDelegate> delegate;
-
-
-/// 初始化一个语音大数据传输实例
-/// - Parameter mgr: JL_ManagerM
-- (instancetype)initWithMgr:(JL_ManagerM *)mgr;
-
-/// 发送tts语音合成信息
-/// - Parameters:
-///   - tts: tts语音对象内容
-///   - manager: 设备
-///   - result: 回调结果
--(void)speechSendTTs:(JLSpeechTTSSynthesis *)tts manager:(JL_ManagerM *)manager result:(JL_BIGDATA_RT)result;
-
-/// 发送ai云数据到设备
-/// - Parameters:
-///   - cloud: ai云数据
-///   - manager: 设备
-///   - result: 回调结果
--(void)speechSendAiCloud:(JLSpeechAiCloud *)cloud manager:(JL_ManagerM *)manager result:(JL_BIGDATA_RT)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SpeexManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SpeexManager.h
deleted file mode 100644 (file)
index 568b33f..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-//
-//  JL_SpeexManager.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/12/17.
-//  Modify By EzioChan on 2023/03/27.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-#import <JL_BLEKit/JLModel_SPEEX.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class JL_ManagerM;
-@class JL_SpeexManager;
-
-/// 录音状态代理处理
-@protocol JL_SpeexManagerDelegate <NSObject>
-/// 录音状态回调
-/// - Parameters:
-///   - manager: 操作设备
-///   - status: 录音状态
-///   - originator: 状态变更发起端
-///   当发起者是Device时,才会具备params的参数,其中结束录音时,params的属性仅有mVadWay为可使用内容
-///   - params: 录音参数
--(void)speexManager:(JL_SpeexManager *)manager Status:(JL_SpeakType)status By:(JLCMDOriginator)originator With:(JLRecordParams *_Nullable) params;
-
-/// 录音数据回调
-/// - Parameters:
-///   - manager: 操作设备
-///   - data: 数据
--(void)speexManager:(JL_SpeexManager *)manager Audio:(NSData *)data;
-
-@end
-
-/// 设备录音管理对象
-@interface JL_SpeexManager : NSObject
-
-//MARK: - Sync Android Interface
-
-@property(nonatomic,weak)id<JL_SpeexManagerDelegate> delegate;
-
-/// 获取录音状态
--(JL_SpeakType)cmdCheckRecordStatus;
-
-
-
-/// 开始录音
-/// - Parameters:
-///   - manager: 操作设备
-///   - params: 录音参数
-///   - result: 命令操作结果回调
--(void)cmdStartRecord:(JL_ManagerM *)manager Params:(JLRecordParams *)params Result:(JL_CMD_RESPOND __nullable)result;
-
-
-/// 停止录音
-/// - Parameters:
-///   - manager: 操作设备
-///   - reason: VAD类型
-///   - result: 命令操作结果回调
--(void)cmdStopRecord:(JL_ManagerM *)manager Reason:(JLSpeakDownReason) reason Result:(JL_CMD_RESPOND __nullable)result;
-
-/// 停止录音2
-/// - Parameters:
-///   - manager: 操作设备
-///   - reason: vad类型
-///   - schr: 语音设置助手
-///   - result: 回调结果
--(void)cmdStopRecord:(JL_ManagerM *)manager Reason:(JLSpeakDownReason)reason SpeechHelper:(JLSpeechRecognition *)schr Result:(JL_CMD_RESPOND __nullable)result;
-
-
-/// 发送命令给音箱,允许音箱端开始接收语音,音箱收到这个消息后会发一个提示音
-/// 当前命令用于收到设备主动发起的录音时,同意开始录音。
-/// 即在 speexManagerStatus:(JL_SpeakType)status By:(JLCMDOriginator)originator With:(JLRecordParams *_Nullable) params 的代理回调收到之后的回复处理
--(void)cmdAllowSpeak;
-
-
-/// 拒绝录音
-/// 发送命令给音箱,不允许接收语音
-/// 当前命令用于收到设备主动发起的录音时,拒绝开始录音。
-/// 即在 speexManagerStatus:(JL_SpeakType)status By:(JLCMDOriginator)originator With:(JLRecordParams *_Nullable) params 的代理回调收到之后的回复处理
--(void)cmdRejectSpeak;
-
-/** 停止语音
- 发发送命令给音箱,停止接收数据,即检测到断句
- */
--(void)cmdSpeakingDone __attribute__((deprecated ( "当前命令已失效,请使用cmdStopRecord:(JL_ManagerM *)manager Reason:(JLSpeakDownReason) reason")));
-
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SystemEQ.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SystemEQ.h
deleted file mode 100644 (file)
index 3286776..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-//
-//  JL_SystemEQ.h
-//  JL_BLEKit
-//
-//  Created by 李放 on 2021/12/20.
-//  Modify by EzioChan on 2023/09/22
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-
-NS_ASSUME_NONNULL_BEGIN
-@class JL_SystemEQ;
-typedef void(^JLSystemEQResult)(JL_CMDStatus status,JL_SystemEQ * _Nullable model);
-
-@interface JL_SystemEQ : JL_FunctionBaseManager
-
-///  当前EQ模式
-@property (assign,nonatomic) JL_EQMode eqMode;
-
-/// EQ段数类型
-@property (assign,nonatomic) JL_EQType eqType;
-
-/// EQ参数值
-/// (只适用于EQ Mode == CUSTOM情况)
-@property (strong,  nonatomic) NSArray *eqArray;
-
-/// 自定义 EQ数组
-@property (strong,  nonatomic) NSArray *eqCustomArray;
-
-/// EQ频率
-@property (strong,  nonatomic) NSArray *eqFrequencyArray;
-
-/// EQ的预设值数组
-@property (strong,nonatomic) NSArray <JLModel_EQ*> *eqDefaultArray;
-
-
-/// 设置系统EQ
-/// - Parameters:
-///   - eqMode: EQ模式
-///   - params: EQ参数
--(void)cmdSetSystemEQ:(JL_EQMode)eqMode Params:(NSArray* __nullable)params;
-
-/// 查询系统EQ内容
--(void)cmdGetSystemEQ:(JLSystemEQResult)result;
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SystemTime.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SystemTime.h
deleted file mode 100644 (file)
index 9e862aa..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-//  JL_SystemTime.h
-//  JL_BLEKit
-//
-//  Created by 李放 on 2021/12/20.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JL_SystemTime : JL_FunctionBaseManager
-
-
-/// 设备当前时间
-@property(nonatomic,strong)JLModel_RTC *rtc;
-
-#pragma mark ---> 设置系统时间
-/**
- @param date 时间类
- */
--(void)cmdSetSystemTime:(NSDate*)date __attribute__((deprecated ( "Please use the (cmdSetSystemYear: Month: Day: Hour: Minute: Second) method instead. The current method will be invalid")));
-
-
-/// 设置系统年月日时分秒
-/// @param year 年
-/// @param month 月
-/// @param day 日
-/// @param hour 时
-/// @param min 分
-/// @param sec 秒
--(void)cmdSetSystemYear:(uint16_t)year
-                  Month:(uint8_t)month
-                    Day:(uint8_t)day
-                   Hour:(uint8_t)hour
-                 Minute:(uint8_t)min
-                 Second:(uint8_t)sec;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SystemVolume.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_SystemVolume.h
deleted file mode 100644 (file)
index 490d8ce..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-//
-//  JL_SystemVolume.h
-//  JL_BLEKit
-//
-//  Created by 李放 on 2021/12/20.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_TypeEnum.h>
-#import <JL_BLEKit/JL_Tools.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JL_SystemVolume : JL_FunctionBaseManager
-
-#pragma mark ---> 设置系统音量
-/**
- @param volume 音量值
- */
--(void)cmdSetSystemVolume:(UInt8)volume;
--(void)cmdSetSystemVolume:(UInt8)volume Result:(JL_CMD_RESPOND __nullable)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_Tools.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_Tools.h
deleted file mode 100644 (file)
index 64d4c42..0000000
+++ /dev/null
@@ -1,412 +0,0 @@
-//
-//  JL_Tools.h
-//  JL_BLEKit
-//
-//  Created by zhihui liang on 2018/11/9.
-//  Copyright © 2018 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/NSObject+JLTools.h>
-#import <JLLogHelper/JLLogHelper.h>
-
-NS_ASSUME_NONNULL_BEGIN
-typedef void(^JL_Action)(void);
-typedef void(^JL_Timer_BK)(void);
-
-@class JL_Timer;
-@interface JL_Tools : NSObject
-
-
-/**
- Data自定义截取。
- 
- @param data 数据
- @param index 偏移
- @param length 长度
- @return 截取后的数据
- */
-+(NSData*)data:(NSData*)data R:(NSInteger)index L:(NSInteger)length;
-+(NSDictionary*)dictionaryData:(NSData*)data R:(NSInteger)index L:(NSInteger)length;
-
-/**
- NSData 转成 10进制
- 
- @param data 数据类型
- @return NSInteger类型
- */
-+(NSInteger)dataToInt:(NSData*)data;
-
-/**
- NSData 转成 NSString
- 
- @param data 数据
- @return 字符串
- */
-+(NSString*)dataChangeToString:(NSData*)data;
-
-/**
- uint8_t 转成 NSData
- 
- @param value uint8_t类型
- @return NSData
- */
-+(NSData*)uInt8_data:(uint8_t)value;
-
-/**
- uint16_t 转成 NSData
- 
- @param value uint16_t类型
- @param endian YES:小端  NO:大端
- @return NSData
- */
-+(NSData*)uInt16_data:(uint16_t)value Endian:(BOOL)endian;
-
-/**
- uint32_t 转成 NSData
- 
- @param value uint32_t类型
- @param endian YES:小端  NO:大端
- @return NSData
- */
-+(NSData*)uInt32_data:(uint32_t)value Endian:(BOOL)endian;
-
-/**
- uint64_t 转成 NSData
- 
- @param value uint64_t类型
- @param endian YES:小端  NO:大端
- @return NSData
- */
-+(NSData*)uInt64_data:(uint64_t)value Endian:(BOOL)endian;
-
-/**
- int64_t 转成 NSData
- 
- @param value int64_t类型
- @param endian YES:小端  NO:大端
- @return NSData
- */
-+(NSData*)int64_data:(int64_t)value Endian:(BOOL)endian;
-
-/**
- 大小端转换
-
- @param data 数据
- @return 转换后的数据
- */
-+(NSData*)changeBigOrSmall:(NSData*)data;
-
-/**
- @"ffff0000" 转成 <ffff 0000>,16进制的字符串变成NSData。
- 
- @param hex 类似@"ffff0000"
- @return NSData类型 => <ffff 0000>
- */
-+(NSMutableData*)HexToData:(NSString*)hex;
-/**
- *  去除结束符
- */
-+(NSData*)cleanEOF:(NSData*)data;
-/**
- 求自然数:aByte ==> -2 -1 0 1 2 3...
- @param aByte 数据
- @return 自然数
- */
-+(int)getNaturalNumber:(NSData*)aByte;
-+(int)getNaturalNumber_u16:(NSData*)u16Bytes;
-+(int)getNaturalNumber_u32:(NSData*)u32Bytes;
-
-/**
- 发出通知事件
- 
- @param name 通知名字
- @param object 传递的对象
- */
-+(void)post:(NSString*)name Object:(id __nullable)object;
-
-/**
- 发出通知事件
- 
- @param name 通知名字
- @param object 传递的对象
- @param info     传递的信息
- */
-+(void)post:(NSString*)name Object:(id __nullable)object UserInfo:(NSDictionary* __nullable)info;
-/**
- 监听通知事件
- 
- @param name 通知名字
- @param action 实现方法
- @param own 监听者
- */
-+(void)add:(NSString*__nullable)name Action:(SEL)action Own:(id)own;
-
-/**
- 取消通知监听
- 
- @param name 通知名字
- @param own 监听者
- */
-+(void)remove:(NSString*__nullable)name Own:(id)own;
-
-/**
- 往NSUserDefault存入对象(注意:可变类型对象不适用)。
- 
- @param objc 对象
- @param key 键值
- */
-+(void)setUser:(id)objc forKey:(NSString*)key;
-
-/**
- 从NSUserDefault取出对象(注意:可变类型对象不适用)。
- 
- @param key 键值
- @return 返回对象
- */
-+(id _Nullable)getUserByKey:(NSString*)key;
-
-/**
- 移除NSUserDefault相对应的对象
- 
- @param key 键值
- */
-+(void)removeUserByKey:(NSString*)key;
-
-
-/**
- 延时执行block。
- 
- @param sec 延时时间(秒)
- @param block 代码块
- */
-+(void)delay:(double)sec Task:(JL_Action)block;
-
-/**
- 异步执行block。
- 
- @param block 代码块
- */
-+(void)subTask:(JL_Action)block;
-
-/**
- 主线程执行block。
- 
- @param block 代码块
- */
-+(void)mainTask:(JL_Action)block;
-
-
-/**
- 新建定时器
- 
- @param sel 执行方法
- @param objc 执行对象
- @param sec 间隔时间(秒)
- @return NSTimer
- */
-+(NSTimer*)timingStart:(SEL)sel target:(id)objc Time:(NSTimeInterval)sec;
-
-
-/**
- 暂停定时间器
- 
- @param timer 定时器指针
- */
-+(void)timingPause:(__weak NSTimer*)timer;
-
-/**
- 继续定时器
- 
- @param timer 定时器指针
- */
-+(void)timingContinue:(__weak NSTimer*)timer;
-
-
-/**
- 摧毁定时器
- 
- @param timer 定时器指针
- */
-+(void)timingStop:(__weak NSTimer*)timer;
-
-
-/**
- 在存在的文件路径上,建立新的文件。
- 
- @param sPath 沙盒
- @param mPath 中间路径
- @param file 文件名
- @return 完成路径
- */
-+(NSString*)createOn:(NSSearchPathDirectory)sPath
-          MiddlePath:(NSString*)mPath
-                File:(NSString*)file;
-
-/**
- 列出文件路径
- 
- @param sPath 沙盒
- @param mPath 中间路径
- @param file 文件名
- @return 完整路径
- */
-+(NSString*)listPath:(NSSearchPathDirectory)sPath
-          MiddlePath:(NSString*)mPath
-                File:(NSString*)file;
-
-/**
- *  用途:【查找】一个文件,在你想要的路径下。
- *  @param   sPath     系统路径
- *  @param   mPath     中途路径    -->> @"test1/test2/test3" <<--
- *  @param   file      文件名
- */
-+(NSString*)findPath:(NSSearchPathDirectory)sPath
-          MiddlePath:(NSString*)mPath
-                File:(NSString*)file;
-
-/**
- *  用途:从Project资源里寻找文件。
- * (先把资源文件添加至工程内的Copy Bundle Resources内。)
- *  @param   file      文件名
- *  @return 该文件的路径。
- */
-+(NSString*)find:(NSString *)file;
-
-/**
- *  是否存在某个路径。
- *  @param   path   文件路径
- *  @return  YES or NO。
- */
-+(BOOL)isExistsPath:(NSString*)path;
-/**
- 删除文件
- @param path 完整路径
- @return 成功与否
- */
-+(BOOL)removePath:(NSString*)path;
-
-/**
- *  用途:文件夹内文件元素。
- *  @param   path      文件夹路径
- */
-+(NSArray*)subPaths:(NSString*)path;
-
-/**
- *  用途:解析JSON文件。
- *  @param   path      文件路径
- */
-+(id)JsonPath:(NSString*)path;
-
-/**
- *  NSArray ==> NSString.
- */
-+(NSString*)arrayToJson:(NSArray *)array;
-
-/**
- 数据覆盖写进文件
- 
- @param data 数据
- @param path 文件路径
- @return 成功与否
- */
-+(BOOL)writeData:(NSData*)data fillFile:(NSString*)path;
-
-/**
- 数据写进文件的末端
- 
- @param data 数据
- @param path 文件路径
- */
-+(void)writeData:(NSData*)data endFile:(NSString*)path;
-
-/**
- 数据写进文件的偏移位置
- 
- @param data 数据
- @param seek 偏移
- @param path 文件路径
- */
-+(void)writeData:(NSData*)data Seek:(unsigned long long)seek File:(NSString*)path;
-
-/**
- *  UNICODE 编码字符串(小端)
- */
-+(NSString*)stringUnicode:(NSData*)data;
-
-/**
- *  UNICODE 编码字符串(大端)
- */
-+(NSString*)stringUnicodeBig:(NSData*)data;
-
-/**
- *  ANSI 编码字符串
- */
-+(NSString*)stringANSI:(NSData*)data;
-
-/**
- *  GBK 编码字符串
- */
-+(NSString*)stringGBK:(NSData*)data;
-
-/**
- *  大文件传输,长短文件名(移除不必要字符)
- */
-+(NSData*)stringBigFileWithNeedRemoveUnnecessaryPunctuationCharactersWithString:(NSString*)name withFileNameIndex:(int)fileNameIndex;
-
-
-/// 大文件传输文件名设置
-/// Unicode编码
-/// - Parameters:
-///   - name: 文件名
-///   - fileNameIndex: index
-///   - encodeType: 编码格式
-+(NSData *)stringBigFileUnicode:(NSString *)name withFileNameIndex:(int)fileNameIndex WithEncode:(NSStringEncoding) encodeType;
-/**
- * 移除不必要字符  \ / : " < > . 
- */
-+(NSString *)removeUnnecessaryPunctuationCharactersWithString:(NSString *)textString;
-
-/**
- * 名字移除目标字符
- * @param pattern 目标需要移除的字符
- * NSString *pattern = @"[/:*?\"<>|]";
- * @param textString 源字符串
- */
-+(NSString *)removeCharacters:(NSString*)pattern WithString:(NSString *)textString;
-
-/**
- *  大文件传输,长短文件名
- */
-+(NSData*)stringBigFile:(NSString*)name withFileNameIndex:(int)fileNameIndex;
-
-/**
- *  去除特殊字符串
- */
-+(NSString*)removeSpecialStrings:(NSString*)name;
-/**
- *  返回时间戳(单位:秒)
- */
-+(long)dateCurrent;
-
-
-/// 把data变成LTV格式
-/// @param type 类型
-/// @param data 数据
-+(NSData *)beLtv:(uint8_t)type Data:(NSData*)data;
-
-
-
-@end
-
-@interface JL_Timer : NSObject
-@property(nonatomic,assign)NSInteger            subTimeout; //超时时间(默认5s)
-@property(nonatomic,assign)NSTimeInterval       subScale;   //默认1.0s
--(void)waitForTimeoutResult:(JL_Timer_BK)result;
--(void)continueTimeout;
--(void)cancelTimeout;
--(void)threadWait;
--(void)threadContinue;
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_TwsManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_TwsManager.h
deleted file mode 100644 (file)
index 4ee7eeb..0000000
+++ /dev/null
@@ -1,400 +0,0 @@
-//
-//  JL_TwsManager.h
-//  JL_BLEKit
-//
-//  Created by 凌煊峰 on 2021/12/17.
-//  Modify by EzioChan on 2023/08/18
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_FunctionBaseManager.h>
-#import <JL_BLEKit/JL_Tools.h>
-#import <JL_BLEKit/JLModel_ANC.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-//MARK: - 耳机电量
-/// 耳机电量
-/// TWS earphones Electricity
-@interface TwsElectricity:NSObject
-/// 左耳充电中
-@property(nonatomic,assign) BOOL isChargingLeft;
-
-/// 右耳充电中
-@property(nonatomic,assign) BOOL isChargingRight;
-
-/// 充电仓正在充电中
-@property(nonatomic,assign) BOOL isChargingCenter;
-
-/// 左耳电量
-@property(nonatomic,assign) int powerLeft;
-
-/// 右耳电量
-@property(nonatomic,assign) int powerRight;
-
-/// 充电舱电量
-@property(nonatomic,assign) int powerCenter;
-
-@end
-
-//MARK: - TWS耳机扩展功能支持类型
-/// TWS耳机扩展功能支持类型
-@interface TwsSupportFuncs : NSObject
-
-/// 是否支持ANC功能
-@property(nonatomic,assign)BOOL isSupportAnc;
-
-/// 是否支持游戏模式
-@property(nonatomic,assign)BOOL isSupportGameMode;
-
-/// 是否支持自适应ANC
-@property(nonatomic,assign)BOOL isSupportAutoAnc;
-
-/// 是否支持智能免摘
-@property(nonatomic,assign)BOOL isSupportSmartPickFree;
-
-/// 是否支持场景降噪
-/// scene noise reduction
-@property(nonatomic,assign)BOOL isSupportSceneNoiseReduction;
-
-/// 是否支持风噪检测
-/// Noise detection
-@property(nonatomic,assign)BOOL isSupportNoiseDetection;
-
-/// 是否支持人声增强模式
-/// Vocal Boost Mode
-@property(nonatomic,assign)BOOL isSupportVocalBoostMode;
-
-/// 固件是否支持“一拖二”开 关功能
-/// Does the firmware support the "one drag two" switch function
-@property(nonatomic,assign)BOOL isSupportDragWithMore;
-
-
-@end
-
-
-
-//MARK: - TWS 控制类
-/// TWS 管理者
-@interface JL_TwsManager : JL_FunctionBaseManager
-
-/// 扩展功能支持
-@property(nonatomic,strong)TwsSupportFuncs *supports;
-
-///耳机电量
-///TWS earphones Electricity
-@property (nonatomic,strong)TwsElectricity *electricity;
-
-/// 设备名称
-@property (nonatomic,strong)NSString *edrName;
-
-/// 按键功能设置
-@property (nonatomic,strong)NSArray *keySettings;
-
-/// 灯光场景类型
-@property (nonatomic,assign)int ledScen;
-
-/// 灯光效果类型
-@property (nonatomic,assign)int ledEffect;
-
-/// 设备麦克风channel
-/// 若为空或者0则视为此功能不支持
-/// 1:自动切换
-/// 2:始终左耳
-/// 3:始终右耳
-@property (nonatomic,assign)int micMode;
-
-/// 工作模式
-/// 若为空或者0则视为此功能不支持
-/// 1:普通模式
-/// 2:游戏模式
-@property (nonatomic,assign)int workMode;
-
-/// 供应商ID
-@property (nonatomic,assign)uint16_t vid;
-
-/// 厂商ID
-@property (nonatomic,assign)uint16_t uid;
-
-/// 产品ID
-@property (nonatomic,assign)uint16_t pid;
-
-/// 连接时长
-@property (nonatomic,assign)uint32_t linkTime;
-
-/// 入耳检测
-/// 0 -- 不支持此功能
-/// 1 -- 关闭
-/// 2 -- 打开
-@property (nonatomic,assign)uint8_t earEntryDection;
-
-/// 设备语言类型
-/// zh -- 中文
-/// en -- 英文
-@property (nonatomic,strong)NSString *deviceLanguage;
-
-///ANC的模式数组
-@property (nonatomic,strong)NSArray *ancModels;
-
-/// HeadSetInfoDict
-/// 耳机信息字典
-/// 当app端收到设备返回的信息时会更新此值
-/// 此值变化较大不适合作为唯一判断依据,容易发生部分值获取失败的问题
-@property (nonatomic,strong)NSDictionary *_Nullable headSetInfoDict;
-
-
-/// 一拖二开关状态
-@property(nonatomic,readonly,assign)BOOL dragWithMore;
-
-
-/**
- @param name 设置对耳设备的EDR名字
- */
--(void)cmdHeadsetEdrName:(NSData*)name;
-
-#pragma mark ---> 按键设置(对耳)
-typedef NS_ENUM(UInt8, JL_HeadsetButtonSettingKey) {
-    JL_HeadsetButtonSettingKeyOnlyLeftEar      = 0x01,     //左耳
-    JL_HeadsetButtonSettingKeyOnlyRightEar     = 0x02,     //\10右耳
-};
-typedef NS_ENUM(UInt8, JL_HeadsetButtonSettingAction) {
-    JL_HeadsetButtonSettingActionClick            = 0x01,     //单击
-    JL_HeadsetButtonSettingActionDoubleClick      = 0x02,     //双击
-};
-typedef NS_ENUM(UInt8, JL_HeadsetButtonSettingFunction) {
-    JL_HeadsetButtonSettingFunctionNone            = 0x00,     //无作用
-    JL_HeadsetButtonSettingFunctionBoot            = 0x01,     //开机
-    JL_HeadsetButtonSettingFunctionTurnOff         = 0x02,     //关机
-    JL_HeadsetButtonSettingFunctionPlayPrevious    = 0x03,     //上一曲
-    JL_HeadsetButtonSettingFunctionPlayNext        = 0x04,     //下一曲
-    JL_HeadsetButtonSettingFunctionPlayOrPause     = 0x05,     //播放/暂停
-    JL_HeadsetButtonSettingFunctionAnswerOrHangup  = 0x06,     //接听/挂断
-    JL_HeadsetButtonSettingFunctionReject          = 0x07,     //拒听
-    JL_HeadsetButtonSettingFunctionTakePhoto       = 0x08,     //拍照
-};
-/**
- @param key 左耳0x01 右耳0x02
- @param act 单击0x01 双击0x02
- @param fuc 0x00    无作用
-            0x01    开机
-            0x02    关机
-            0x03    上一曲
-            0x04    下一曲
-            0x05    播放/暂停
-            0x06    接听/挂断
-            0x07    拒听
-            0x08    拍照
- */
--(void)cmdHeadsetKeySettingKey:(JL_HeadsetButtonSettingKey)key
-                        Action:(JL_HeadsetButtonSettingAction)act
-                      Function:(JL_HeadsetButtonSettingFunction)fuc;
-
-#pragma mark ---> LED设置(对耳)
-
-typedef NS_ENUM(UInt8, JL_HeadsetScene) {
-    JL_HeadsetSceneNotPaired                  = 0x01,     //未配对
-    JL_HeadsetSceneDisConnected               = 0x02,     //未连接
-    JL_HeadsetSceneConnected                  = 0x03,     //已连接
-    JL_HeadsetScenePlayDeviceMusic            = 0x04,     //播放设备音乐
-    JL_HeadsetScenePauseDeviceMusic           = 0x05,     //暂停设备音乐
-    JL_HeadsetScenePlayExternalAudioSource    = 0x06,     //外部音源播放
-    JL_HeadsetScenePauseExternalAudioSource   = 0x07,     //外部音源暂停
-};
-typedef NS_ENUM(UInt8, JL_HeadsetLedEffect) {
-    JL_HeadsetLedEffectAllClose                  = 0x00,     //全灭
-    JL_HeadsetLedEffectRedLightOn                = 0x01,     //红灯常亮
-    JL_HeadsetLedEffectBlueLightOn               = 0x02,     //蓝灯常亮
-    JL_HeadsetLedEffectRedLightBreathing         = 0x03,     //红灯呼吸
-    JL_HeadsetLedEffectBlueLightBreathing        = 0x04,     //蓝灯呼吸
-    JL_HeadsetLedEffectRedBlueLightQuickFlash    = 0x05,     //红蓝交替快闪
-    JL_HeadsetLedEffectRedBlueLightSlowFlash     = 0x06,     //红蓝交替慢闪
-};
-/**
- @param scene  0x01   未配对
-              0x02    未连接
-              0x03    连接
-              0x04:   播放设备音乐
-              0x05:暂停设备音乐
-              0x06:外部音源播放
-              0x07:外部音源暂停
- @param effect  0x00    全灭
-               0x01    红灯常亮
-               0x02    蓝灯常亮
-               0x03    红灯呼吸
-               0x04    蓝灯呼吸
-               0x05    红蓝交替快闪
-               0x06    红蓝交替慢闪
- */
--(void)cmdHeadsetLedSettingScene:(JL_HeadsetScene)scene
-                          Effect:(JL_HeadsetLedEffect)effect;
-
-#pragma mark ---> MIC设置(耳机)
-typedef NS_ENUM(UInt8, JL_HeadsetMicSettingMode) {
-    JL_HeadsetMicSettingModeOnlyLeftEar      = 0x00,     //仅左耳
-    JL_HeadsetMicSettingModeOnlyRightEar     = 0x01,     //仅\10右耳
-    JL_HeadsetMicSettingModeAutomatic        = 0x02,     //自动选择
-};
-/**
- @param mode JL_HeadsetMicSettingMode
- */
--(void)cmdHeadsetMicSettingMode:(JL_HeadsetMicSettingMode)mode
-                         Result:(JL_CMD_RESPOND __nullable)result;
-
-#pragma mark ---> 工作模式(耳机)
-typedef NS_ENUM(UInt8, JL_HeadsetWorkingMode) {
-    JL_HeadsetWorkingModeNormal      = 0x01,     //普通模式
-    JL_HeadsetWorkingModeGame        = 0x02,     //游戏模式
-};
-/**
- @param mode 1: 普通模式
-        2: 游戏模式
- */
--(void)cmdHeadsetWorkSettingMode:(JL_HeadsetWorkingMode)mode;
-
-#pragma mark ---> 同步时间戳(耳机)
-/**
- @param date  当前系统时间
-*/
--(void)cmdHeadsetTimeSetting:(NSDate*)date;
-
-#pragma mark ---> 获取设备信息(耳机)
-typedef void(^JL_HEADSET_BK)(NSDictionary* __nullable dict);
-typedef NS_ENUM(uint32_t, JL_HeadsetAdviceFlag) {
-    JL_HeadsetAdviceFlagGetElectricity              = 1,            //小机电量获取
-    JL_HeadsetAdviceFlagEdrName                     = 1 << 1,       //Edr名称
-    JL_HeadsetAdviceFlagButtonFunction              = 1 << 2,       //按键功能
-    JL_HeadsetAdviceFlagLedStatus                   = 1 << 3,       //LED显示状态
-    JL_HeadsetAdviceFlagMicMode                     = 1 << 4,       //MIC模式
-    JL_HeadsetAdviceFlagWorkMode                    = 1 << 5,       //工作模式
-    JL_HeadsetAdviceFlagProductInfo                 = 1 << 6,       //产品信息
-    JL_HeadsetAdviceFlagConnectingTime              = 1 << 7,       //连接时间
-    JL_HeadsetAdviceFlagEarDetection                = 1 << 8,       //入耳检测
-    JL_HeadsetAdviceFlagLanguage                    = 1 << 9,       //语言类型
-};
-/**
- @param flag  BIT0    小机电量获取 格式为3个字节 参考广播包格式
-             BIT1    Edr 名称
-             BIT2    按键功能
-             BIT3    LED 显示状态
-             BIT4    MIC 模式
-             BIT5    工作模式
-             BIT6    产品信息
-             BIT7    连接时间
-             BIT8    入耳检测
-             BIT9    语言类型
- @param result 返回字典:
-                @"ISCHARGING_L"
-                @"ISCHARGING_R"
-                @"ISCHARGING_C"
-                @"POWER_L"
-                @"POWER_R"
-                @"POWER_C"
-                @"EDR_NAME"
-                @"KEY_LR"
-                @"KEY_ACTION"
-                @"KEY_FUNCTION"
-                @"LED_SCENE"
-                @"LED_EFFECT"
-                @"MIC_MODE"
-                @"WORK_MODE"
-                @"VID"
-                @"UID"
-                @"PID"
-                @"LINK_TIME"
-                @""IN_EAR_TEST"
-                @"DEVICE_LANGUAGE"
-                @"KEY_ANC_MODE"    ANC的模式数组
- */
--(void)cmdHeadsetGetAdvFlag:(JL_HeadsetAdviceFlag)flag
-                     Result:(JL_HEADSET_BK __nullable)result;
-
-#pragma mark ---> 设备广播通知(耳机)
-/**
-    @{@"JLID": 杰理ID,
-    @"VID": ,
-    @"PID":  ,
-    @"EDR": ,
-    @"SCENE": ,
-    @"ISCHARGING_L": ,
-    @"ISCHARGING_R": ,
-    @"ISCHARGING_C": ,
-    @"POWER_L": ,
-    @"POWER_R": ,
-    @"POWER_C": ,
-    @"CHIP_TYPE": ,
-    @"PROTOCOL_TYPE": ,
-    @"SEQ":};
- */
-extern NSString *kJL_MANAGER_HEADSET_ADV;
-
-#pragma mark ---> 设置命令成功/错误回复(耳机)
-/**
-    0x00:成功
-    0x01:游戏模式导致设置失效
-    0x02:蓝牙名字长度超出限制
-    0x03:非蓝牙模式设置闪灯失败
- */
-extern NSString *kJL_MANAGER_HEADSET_SET_ERR;
-
-#pragma mark ---> 关闭或开启设备广播(耳机)
-/**
- @param enable 使能位
- */
--(void)cmdHeadsetAdvEnable:(BOOL)enable;
-
-#pragma mark ---> 用于ADV设置同步后需要主机操作的行为。
-/**
-  1:更新配置信息,需要重启生效。
-  2:同步时间戳
-  3:请求手机回连BLE
-  4:同步设备信息
- */
-extern NSString *kJL_MANAGER_HEADSET_TIPS;
-
-#pragma mark ---> 发射频点
-/**
-@param fmtx  频点
-*/
--(void)cmdSetFMTX:(uint16_t)fmtx;
-
-#pragma mark ---> 设置耳机ANC模式列表
-/**
- *  设置耳机ANC模式列表
- *  @param array  频点 JL_AncMode的NSNumber对象数组 @[@(JL_AncMode_Normal), @(JL_AncMode_NoiseReduction)]
- */
--(void)cmdHeadsetAncArray:(NSArray*)array;
-
-#pragma mark ---> 耳机主动降噪ANC设置
--(void)cmdSetANC:(JLModel_ANC*)model;
-
-
-
-//MARK: - 一拖二相关命令
-
-typedef void(^JL_MulitLinksInfo_BK)(JL_CMDStatus status,NSArray <JLTWSAddrNameInfo *>* __nullable phoneInfos);
-
-/// 设备上传一拖二设备信息列表
-extern NSString* kJL_MULIT_NAME_LIST;
-
-/// 获取设备已连接手机名
-/// 通知设备上传一拖二设备信息列表
-/// @param result 设备所连接的手机名字列表
--(void)cmdGetDeviceInfoListResult:(JL_MulitLinksInfo_BK)result;
-
-/// 通知设备一连上手机地址和绑定信息
-/// - Parameters:
-///   - addr: 手机EDR地址
-///   - name: 手机蓝牙名称
-///   - result: 结果
--(void)cmdBindDeviceInfo:(NSData *)addr phone:(NSString *)name result:(JL_MulitLinksInfo_BK)result;
-
-/// 一拖二开关
-/// @param dragWithMore 开关状态
-/// @param addr 手机的经典蓝牙地址(通过cmdGetDeviceInfoList 获取)
-/// @param result   结果回调
--(void)setDragWithMore:(BOOL)dragWithMore phoneBleAddr:(NSData *) addr result:(JL_CMD_RESPOND)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_TypeEnum.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_TypeEnum.h
deleted file mode 100644 (file)
index c231c91..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-//
-//  JL_TypeEnum.h
-//  JL_BLEKit
-//
-//  Created by DFung on 2018/11/29.
-//  Copyright © 2018 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JLModel_SmallFile.h>
-
-typedef NS_ENUM(NSInteger, JL_BLEStatus) {
-    JL_BLEStatusFound,                      //发现设备,对应 kUI_JL_BLE_FOUND
-    JL_BLEStatusPaired,                     //已配对,  对应 kUI_JL_BLE_PAIRED
-    JL_BLEStatusDisconnected,               //断开连接,对应 kUI_JL_BLE_DISCONNECTED
-    JL_BLEStatusOn,                         //蓝牙开启,对应 kUI_JL_BLE_ON
-    JL_BLEStatusOff,                        //蓝牙关闭,对应 kUI_JL_BLE_OFF
-    JL_BLEStatusUnknown,                    //状态未知
-};
-typedef NS_ENUM(NSInteger, JL_DeviceBTStatus) {
-    JL_DeviceBTStatusDisconnected   = 0,    //设备经典蓝牙已断开
-    JL_DeviceBTStatusConnected      = 1,    //设备经典蓝牙已连接
-    JL_DeviceBTStatusUnknown,
-};
-typedef NS_ENUM(UInt8, JL_CMDStatus) {
-    JL_CMDStatusSuccess             = 0x00, //成功
-    JL_CMDStatusFail                = 0x01, //失败
-    JL_CMDStatusUnknownCmd          = 0x02, //未定义命令
-    JL_CMDStatusBusy                = 0x03, //忙碌
-    JL_CMDStatusNoResponse          = 0x04, //没有收到回复
-    JL_CMDStatusCrcErr              = 0x05, //CRC错误
-    JL_CMDStatusDataCrcErr          = 0x06, //数据CRC错误
-    JL_CMDStatusParamErr            = 0x07, //参数错误
-    JL_CMDStatusOverLimit           = 0x08, //数据溢出
-    JL_CMDStatusLrcError            = 0x09, //LRC获取出错
-    JL_CMDStatusUnknown,
-};
-typedef void(^JL_CMD_RESPOND)(JL_CMDStatus status, uint8_t sn, NSData* __nullable data);
-
-//---------------------------------------------------------//
-
-typedef NS_ENUM(UInt8,JLDevSpecialType) {
-    ///普通正常设备
-    JLDevSpecialType_Normal = 0x00,
-    ///回连设备
-    JLDevSpecialType_Reconnect = 0x01,
-};
-
-typedef NS_ENUM(int64_t,JL_CLASS) {
-    JL_CLASS_SmallFile      = 0,
-    JL_CLASS_File           = 1,
-    JL_CLASS_OTA            = 2,
-    JL_CLASS_Flash          = 3,
-    JL_CLASS_ChargingBin    = 4,
-    JL_CLASS_AlarmClock     = 5,
-    JL_CLASS_Light          = 6,
-    JL_CLASS_Tws            = 7,
-    JL_CLASS_SoundCard      = 8,
-    JL_CLASS_Call           = 9,
-    JL_CLASS_Speex          = 10,
-    JL_CLASS_Lrc            = 11,
-    JL_CLASS_FindDevice     = 12,
-    JL_CLASS_MusicControl   = 13,
-    JL_CLASS_Fm             = 14,
-    JL_CLASS_SystemEQ       = 15,
-    JL_CLASS_SystemTime     = 16,
-    JL_CLASS_SystemVolume   = 17,
-    JL_CLASS_Custom         = 18,
-    JL_CLASS_Batch          = 19,
-    JL_CLASS_DeviceLogs     = 20,
-    JL_CLASS_BigData        = 21,
-};
-
-//---------------------------------------------------------//
-
-
-///命令发起者
-typedef NS_ENUM(UInt8, JLCMDOriginator) {
-    ///SDK端发起
-    JLCMDOriginatorApp = 0x00,
-    ///设备端发起
-    JLCMDOriginatorDevice = 0x01
-};
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_WatchProtocol.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_WatchProtocol.h
deleted file mode 100644 (file)
index 7dec3d7..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-//
-//  JL_WatchProtocolDelegate.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/8/11.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import "JL_SDM_Header.h"
-
-
-NS_ASSUME_NONNULL_BEGIN
-
-@protocol JL_WatchProtocol <NSObject>
-
-@optional
-/// 设备回调心率相关内容
-/// @param heartRate 心率对象
--(void)jlWatchHeartRate:(JL_SDM_HeartRate *)heartRate;
-
-/// 设备回调大气压强相关内容
-/// @param airPressure 气压对象
--(void)jlWatchAirPressure:(JL_SDM_AirPressure *)airPressure;
-
-/// 设备回调海拔高度相关内容
-/// @param alititude 海拔对象
--(void)jlWatchAltitude:(JL_SDM_Altitude *)alititude;
-
-/// 设备回调步数相关内容
-/// @param moveStep 步数对象
--(void)jlWatchMoveSteps:(JL_SDM_MoveSteps *)moveStep;
-
-/// 设备回调压力相关内容
-/// @param stress 压力对象
--(void)jlWatchStress:(JL_SDM_Stress *)stress;
-
-/// 设备回调血氧饱和度相关内容
-/// @param oxStaturation 血氧饱和度对象
--(void)jlWatchOxsaturation:(JL_SDM_OxSaturation*)oxStaturation;
-
-/// 设备回调训练负荷相关内容
-/// @param trainLoad 训练负荷对象
--(void)jlWatchTrainLoad:(JL_SDM_TrainLoad *)trainLoad;
-
-/// 设备回调最大摄氧量相关内容
-/// @param maxOxg 最大摄氧量对象
--(void)jlWatchMaxOxg:(JL_SDM_MaxOxg *)maxOxg;
-
-/// 设备回调运动恢复时间相关内容
-/// @param rectime 运动恢复时间对象
--(void)jlWatchRecTime:(JL_SDM_RecTime *)rectime;
-
-/// 设备回调运动数据的相关内容
-/// @param sportMsg 运动数据对象
--(void)jlWatchSportMessage:(JL_SDM_SportMessage *)sportMsg;
-
-
-/// 设备回调无法区分的数据内容
-/// @param value 数据区域,根据类型解析数据
-/// @param submask 对应查询的参数,描述功能类型,作用域
-/// @param type 数据类型
--(void)jlWatchUnDefineData:(NSData *)value subMask:(NSData *)submask Type:(UInt8)type;
-
-/// 设备回调传感器相关数据
-/// @param type 数据类型
-/// @param data 数据内容
--(void)jlWatchWatchLog:(JL_WATCH_LOG_TYPE) type with:(NSData *)data;
-
-//MARK: - 健康设置回调
-
-/// 接收整个设置返回的数组
-/// @param models JLwSettingModels
--(void)jlWatchSetAllFunc:(NSArray<JLwSettingModel *> *)models;
-
-/// 回调传感器相关设置
-/// @param model 传感器功能
--(void)jlWatchSetSensorFunc:(JLSensorFuncModel *)model;
-
-/// 久坐提醒
-/// @param model 久坐提醒功能
--(void)jlWatchSetSedentaryRmd:(JLSedentaryRmdModel *)model;
-
-/// 心率测量功能
-/// @param model 心率模块
--(void)jlWatchSetConsequentHeartRate:(JLConsequentHeartRateModel *)model;
-
-/// 运动心率测试功能
-/// @param model 运动心率
--(void)jlWatchSetExerciseHeartRateRemind:(JLExerciseHeartRateRemindModel *)model;
-
-/// 自动压力测试
-/// @param model 压力测试
--(void)jlWatchSetAutoPressure:(JLAutoPressureModel *)model;
-
-/// 睡眠监测
-/// @param model 睡眠
--(void)jlWatchSetSleepMonitor:(JLSleepMonitorModel *)model;
-
-/// 跌到监测
-/// @param model 跌倒监测
--(void)jlWatchSetFallDetectionModel:(JLFallDetectionModel *)model;
-
-/// 抬腕监测
-/// @param model 抬腕监测
--(void)jlWatchSetWristLiftDetectionModel:(JLWristLiftDetectionModel *)model;
-
-/// 个人信息
-/// @param model 个人信息
--(void)jlWatchSetPersonInfoModel:(JLPersonInfoModel *)model;
-
-/// 蓝牙断开设置
-/// @param model 断开设置
--(void)jlWatchSetDisconnectRemindModel:(JLDisconnectRemindModel *)model;
-
-/// 紧急联系人
-/// @param model 紧急联系人设置
--(void)jlWatchSetEmergencyContactModel:(JLEmergencyContactModel *)model;
-
-/// 血氧测量
-/// @param model 血氧测量模式
--(void)jlWatchSetOxygenSturationRemindModel:(JLOxygenSturationRemindModel *)model;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_WatchSyncProtocol.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_WatchSyncProtocol.h
deleted file mode 100644 (file)
index 132a291..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-//
-//  JL_WatchSyncProtocol.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/27.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-#import <Foundation/Foundation.h>
-#import "JL_SDM_Header.h"
-#import "JL_EntityM.h"
-
-#ifndef JL_WatchSyncProtocol_h
-#define JL_WatchSyncProtocol_h
-
-@protocol JLWearSyncProtocol <NSObject>
-
-@optional
-/// 运动信息返回
-/// @param model 运动信息对象
-/// @param entity 设备entity
--(void)jlWearSyncSportInfo:(JLWearSyncInfoModel *_Nonnull)model With:(JL_EntityM *_Nonnull)entity;
-
-/// 结束运动返回内容
-/// @param model 结束时间相隔信息对象
-/// @param entity 设备entity
--(void)jlWearSyncStopMotion:(JLWearSyncFinishModel *_Nonnull)model With:(JL_EntityM *_Nonnull)entity;
-
-/// 开始运动返回消息
-/// @param entity 设备entity
--(void)jlWearSyncStartMotionWith:(JL_EntityM *_Nonnull)entity;
-
-/// 暂停运动
-/// @param entity 设备entity
--(void)jlWearSyncStatusPauseWith:(JL_EntityM *_Nonnull)entity;
-
-/// 继续运动
-/// @param entity 设备entity
--(void)jlWearSyncStatusContiuneWith:(JL_EntityM *_Nonnull)entity;
-
-/// 实时数据回调
-/// @param model 实时数据模型
-/// @param entity 设备entity
--(void)jlWearSyncRealTimeData:(JLWearSyncRealTimeModel *_Nonnull)model With:(JL_EntityM *_Nonnull)entity;
-
-@end
-
-#endif /* JL_WatchSyncProtocol_h */
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_vad.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JL_vad.h
deleted file mode 100644 (file)
index 9b87192..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-//
-//  JL_vad.h
-//  Test
-//
-//  Created by DFung on 2018/2/28.
-//  Copyright © 2018年 DFung. All rights reserved.
-//
-
-#ifndef JL_vad_h
-#define JL_vad_h
-
-
-
-#define CONT_AD_ADFRMSIZE         16
-#define DEFAULT_RADIX 12
-#define SMOOTH_WINDOW 4
-#define MIN_FIXLOG -2829416
-#define KWSNUM 1                //¥˝ ∂±¥ ∏ˆ ˝
-
-
-//typedef  long long __int64;
-typedef int        int32;
-typedef short        int16;
-typedef signed char    int8;
-typedef unsigned int    uint32;
-typedef unsigned short    uint16;
-typedef unsigned char    uint8;
-typedef long long int64;
-typedef int32 fixed32;
-typedef float        float32;
-
-
-
-
-struct noise_stats_s {
-    /* Smoothed power */
-    int power[40];
-    int max_power[40];
-    /* Noise estimate */
-    int noise[40];
-    int max_noise[40];
-    /* Signal floor estimate */
-    int floor[40];
-    int max_floor[40];
-    /* Peak for temporal masking */
-    int peak[40];
-    int max_peak[40];
-    
-    int signal[40];
-    int gain[40];
-    char remove_noi;
-    /* Initialize it next time */
-    uint8 undefined;
-    /* Number of items to process */
-    uint32 num_filters;
-    
-    /* Sum of slow peaks for VAD */
-    int64 slow_peak_sum;
-    int64 max_slow_peak_sum;
-    
-    /* Precomputed constants */
-    int lambda_power;
-    int comp_lambda_power;
-    int lambda_a;
-    int comp_lambda_a;
-    int lambda_b;
-    int comp_lambda_b;
-    int lambda_t;
-    int mu_t;
-    int max_gain;
-    int inv_max_gain;
-    
-    int smooth_scaling[2 * 4 + 3];
-};
-typedef struct noise_stats_s noise_stats_t;
-struct htk_fe_s
-{
-    unsigned short pow_hist[98];
-    noise_stats_t *noise_stats;
-    
-    
-    int fe_prior;
-    uint32 int_frame;
-    char int_flag;
-    
-    
-    unsigned char sum_cnt;
-    
-    uint8 voice_state;
-    uint8 in_speech;
-    int16 pre_speech_frames;
-    int16 post_speech_frames;
-    
-    int16 inout_spch[410];
-    int fe_tmp_spch[250];
-    int fe_fft_buf[512];
-    int fe_mfspec[40];
-    int cmn_sum[13];
-    int mfcc_fifo[9][13];
-    int *cmn_mfcc_fifo[9];
-    //int fe_prior;
-    char speech_fifo[16];
-    char init_speech_n;
-    char vad_cnt;
-    int  buf_cep[21][13];
-    int buf_pow[21];
-    uint8 speech_indexw;
-    uint8 speech_indexr;
-    uint8 speech_cnt;
-    
-    
-    int16 sp_threshold;
-    int16 nsp_threshold;
-};
-
-typedef struct htk_fe_s htk_fe_t;
-/*
- *  How to use? See follow...
- *
- *  1、开启录音前:
- *      /--- 开启Vad ---/
- *      int need_buf_size = vad_get_need_buf_size();
- *      vad_hdl = malloc(need_buf_size);
- *      vad_init(vad_hdl, 10, 51);
- *
- *  2、结束录音后:
- *      /--- 关闭Vad ---/
- *      free(vad_hdl);
- *
- *  3、录音数据回调:
- *      buf:录音数据 ,需要320Bytes!
- *      ret:0->静音状态  1->正在说话   2->结束说话
- *      int ret = vad_main(vad_hdl, (int*)buf);
- */
-int vad_get_need_buf_size(void);
-int vad_init(void *p, short sp_threshold, short nsp_threshold);
-int vad_main(void  *p,int *inout_spch);
-
-fixed32 fe_log_add(fixed32 x, fixed32 y);
-fixed32 fe_log_sub(fixed32 x, fixed32 y);
-int32 fixlog2(uint32 x);
-int fixlog(uint32 x);
-
-#endif /* JL_vad_h */
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLeSimManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLeSimManager.h
deleted file mode 100644 (file)
index 0d1f4e1..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-//
-//  JLeSimManager.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/12/4.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@class JL_ManagerM;
-
-@protocol JLEsimFinishDelegate <NSObject>
-
-/// 设备推送esim 信息内容
-/// - Parameters:
-///   - version: 版本
-///   - data: 内容
--(void)jlEsimDidGetData:(uint8_t)version ESimData:(NSData *)data;
-
-@end
-
-typedef void(^JLESimFinishBlock)(NSError * _Nullable err);
-
-/// esim 信息交互类
-@interface JLeSimManager : NSObject
-
-@property(nonatomic,assign)id<JLEsimFinishDelegate> delegate;
-
-/// 下发 esim 信息到设备
-/// - Parameters:
-///   - mgr: 设备
-///   - data: esim 信息
-///   - block: 完成回调
--(void)sendToDev:(JL_ManagerM *)mgr Data:(NSData *)data Result:(JLESimFinishBlock)block;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLwSettingModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/JLwSettingModel.h
deleted file mode 100644 (file)
index 17be0dc..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-//
-//  LtvSettingModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/10/12.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-
-typedef NS_ENUM(UInt8, WatchSettingFunc) {
-    ///传感器功能
-    WatchSettingFunc_SensorFunction = 0x01 ,
-    ///久坐提醒
-    WatchSettingFunc_SedentaryReminder = 0x02,
-    ///连续测量心率
-    WatchSettingFunc_ContinuousHeartRateMeasurement = 0x03,
-    ///运动心率提醒
-    WatchSettingFunc_ExerciseHeartRateReminder = 0x04,
-    ///压力自动检测
-    WatchSettingFunc_AutomaticPressureDetection = 0x05,
-    ///睡眠检测
-    WatchSettingFunc_SleepMonitoring = 0x06,
-    ///跌倒检测
-    WatchSettingFunc_FallDetection = 0x07,
-    ///抬腕检测
-    WatchSettingFunc_WristLiftDetection = 0x08,
-    ///个人信息
-    WatchSettingFunc_PersonInfo  = 0x09,
-    /// 蓝牙断开提醒
-    WatchSettingFunc_DisconnectReminder = 0xA,
-    /// 血氧测量提醒
-    WatchSettingFunc_OxygenSturation = 0x0B,
-    /// 紧急联系人
-    WatchSettingFunc_EmergencyContact = 0x0C
-};
-
-///提醒模式
-typedef NS_ENUM(UInt8, WatchRemindType) {
-    /// 亮屏
-    WatchRemind_BrightScreen = 0x00,
-    ///震动
-    WatchRemind_Shake        = 0x01,
-    /// 打电话(抬腕不支持该提示)
-    WatchRemind_Call         = 0x02
-};
-
-///连续测量心率模式
-typedef NS_ENUM(UInt8, WatchConsequentType) {
-    //智能
-    WatchConsequent_Intelligent = 0x00,
-    //实时
-    WatchConsequent_realTime = 0x01
-};
-
-/// 连续血氧测量模式
-typedef NS_ENUM(UInt8,WatchOxygenMsmType){
-    //智能
-    WatchOxygenMsm_Intelligent = 0x00,
-    //定时
-    WatchOxygenMsm_runTime = 0x01
-};
-
-///监察开关类型
-typedef NS_ENUM(UInt8, WatchSwitchType) {
-    ///关闭
-    WatchSwitchType_Close    = 0x00,
-    ///全天开启
-    WatchSwitchType_AllDay   = 0x01,
-    ///自定义时间
-    WatchSwitchType_Customer = 0x02,
-};
-
-@interface WatchTimer : NSObject
-/// 时
-@property(nonatomic,assign,readonly)UInt8 hour;
-/// 分
-@property(nonatomic,assign,readonly)UInt8 min;
-
--(instancetype _Nonnull)initWithData:(NSData *_Nonnull)data;
-
--(instancetype _Nonnull)initWith:(uint8_t)h Min:(uint8_t)m;
-
-@end
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface JLwSettingModel : NSObject
-@property(nonatomic,assign)uint8_t length;
-@property(nonatomic,assign)WatchSettingFunc type;
-@property(nonatomic,strong)NSData *value;
-
-/// 设备UUID
-@property(nonatomic,strong)NSString *deviceID;
-
-
--(NSData *)beData;
-
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/NSData+ToUnit.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/NSData+ToUnit.h
deleted file mode 100644 (file)
index 8ece571..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-//
-//  NSData+ToUnit.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/4/7.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface NSData (ToUnit)
-
-
--(BOOL)beBool;
-
--(uint8_t)beUint8;
-
--(UInt16)beLittleUint16;
-
--(UInt16)beBigendUint16;
-
--(UInt32)beLittleUint32;
-
--(UInt32)beBigendUint32;
-
--(UInt64)beLittleUint64;
-
--(UInt64)beBigendUint64;
-
--(NSString *)dataToAltitude;
-
--(NSString *)beHexStr;
-
--(NSDate *)toDate;
-
-/// 裁剪Data
-/// @param from 开始
-/// @param to 长度
--(NSData *)subf:(NSInteger)from t:(NSInteger)to;
-
-
-
-@end
-
-
-@interface NSMutableData(WithUnit)
-
--(void)appendUint8:(uint8_t)k;
-
--(void)appendUint16:(uint16_t)k;
-
--(void)appendUint32:(uint32_t)k;
-@end
-
-
-@interface NSString(WithUnit)
-
--(NSString *)formatLog;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/NSObject+JLTools.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/NSObject+JLTools.h
deleted file mode 100644 (file)
index 68deb4e..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-//
-//  NSObject+JLTools.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/8/17.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@interface NSObject (JLTools)
-
-
-- (NSString *) logProperties;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/NfcModel.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/NfcModel.h
deleted file mode 100644 (file)
index eee6a69..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-//
-//  NfcModel.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2021/8/3.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-
-@interface NfcModel : NSObject
-
-/// NFC标签
-@property(nonatomic,assign)UInt16 idCard;
-
-/// 保留位
-@property(nonatomic,strong)NSData *reserver;
-
-/// 设备索引
-@property(nonatomic,strong)NSData *devHandler;
-
-/// 更新时间戳,用于排序
-@property(nonatomic,strong)NSDate *updateTime;
-
-/// nfc数据文件名,格式如下:XX.nfc,XX是0~9
-@property(nonatomic,strong)NSString *nfcFileName;
-
-/// 别名,最大字符长度为26, 不足部分补‘\0’ 编码格式:UTF-8(以后可以保留位决定) 例如:公司门禁卡,家里门禁等等
-@property(nonatomic,strong)NSString *nickName;
-
-/// 可变字段长度,包含crc + nfc_id
-@property(nonatomic,assign)UInt16 variableLength;
-
-/// NFC 数据的CRC
-@property(nonatomic,strong)NSData   *crc;
-
-/// nfc数据的唯一值
-@property(nonatomic,strong)NSData   *nfc_id;
-
-
-+(NfcModel *)initMsgModel:(NSData *)data;
-
-/// 解析NFC头部数据
-/// @param basicData 裸数据
-+(NSArray<NfcModel *> *)initMSGModels:(NSData *)basicData;
-
-@end
-
-NS_ASSUME_NONNULL_END
-
-
-
-
-
-@interface NfcFileModel : NfcModel
-
-/// NFC 数据
-@property(nonatomic,strong)NSData * _Nonnull nfcData;
-@property(nonatomic,assign,readonly)UInt32  length;
-+(NfcFileModel *_Nonnull)initFileModel:(NSData *_Nonnull)data;
-
-@end
-
-
-
-
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/RTC_RingInfo.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Headers/RTC_RingInfo.h
deleted file mode 100644 (file)
index f995c1a..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-//  RTC_RingInfo.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/10/15.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-/// 闹铃信息
-@interface RTC_RingInfo : NSObject
-
-/// 铃声类型
-/// 0x00 设备默认
-/// 0x01 多媒体选取
-@property (assign,nonatomic) uint8_t        type;
-
-/// 设备索引
-/// 当type = 0时,dev保留
-/// 当type = 1时,dev为选取的设备
-@property (assign,nonatomic) uint8_t        dev;
-
-/// 闹铃文件簇号
-/// 当type = 0时,clust 为对应 JLModel_Ring 的 index
-/// 当type = 1时,clust为选取的闹铃文件簇号
-@property (assign,nonatomic) uint32_t       clust;
-
-/// 铃声名称长度
-@property (assign,nonatomic) uint8_t        len;
-
-/// 铃声名称
-@property (strong,nonatomic) NSData         *data;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Info.plist b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Info.plist
deleted file mode 100644 (file)
index ad2ba95..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Info.plist and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/JL_BLEKit b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/JL_BLEKit
deleted file mode 100644 (file)
index 6688cdd..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/JL_BLEKit and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Modules/module.modulemap b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_BLEKit.framework/Modules/module.modulemap
deleted file mode 100644 (file)
index ee22d27..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-framework module JL_BLEKit {
-  umbrella header "JL_BLEKit.h"
-  export *
-
-  module * { export * }
-}
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Frameworks/JLLogHelper.framework/Info.plist b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Frameworks/JLLogHelper.framework/Info.plist
deleted file mode 100644 (file)
index 22f0b62..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Frameworks/JLLogHelper.framework/Info.plist and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Frameworks/JLLogHelper.framework/JLLogHelper b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Frameworks/JLLogHelper.framework/JLLogHelper
deleted file mode 100755 (executable)
index 5412bbd..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Frameworks/JLLogHelper.framework/JLLogHelper and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/BtHash.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/BtHash.h
deleted file mode 100644 (file)
index 7e896ab..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-//
-//  BtHash.h
-//  BtHash
-//
-//  Created by huanghaibo on 2019/7/28.
-//  Copyright © 2019 jieli. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-@interface BtHash : NSObject
-/*
- @param [in]  pt[*1]      The plaintext
- @param ptlen       The length of the plaintext(octets)    range: 1~32
- @param [in]  key[*1]     The key for encrypt
- @param keylen[*1]  The length of the key(octets)          range: 1~32
- @param [out] mac[*1]     output : The Message Authentication Code    16 bytes.
- @return error if < 0, 0 is normal.
- */
-+(int)decryptWithPlaintext:(unsigned char *)pt
-           andPlaintextLen:(int)ptlen
-                    andKey: (unsigned char *)key
-                 andKeyLen: (int)keylen
-                    andMac:(unsigned char *)mac;
-@end
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/JLHashHandler.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/JLHashHandler.h
deleted file mode 100644 (file)
index 9ef4e04..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-//
-//  JLHashHandler.h
-//  JL_BLEKit
-//
-//  Created by EzioChan on 2023/1/30.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JLLogHelper/JLLogHelper.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef void(^JLHashBlock)(BOOL ret);
-
-@protocol JLHashHandlerDelegate <NSObject>
-
-/// 需要发送到设备校验认证的数据
-/// - Parameter data: 数据
--(void)hashOnPairOutputData:(NSData*)data;
-
-@end
-
-
-/// 设备认证
-@interface JLHashHandler : NSObject
-
-@property(nonatomic,weak)id<JLHashHandlerDelegate> delegate;
-
-
-/// APP端发起设备认证
-/// - Parameters:
-///   - pKey: 加密Key(默认为空)
-///   - bk: 配对认证回调结果
--(void)bluetoothPairingKey:(NSData *__nullable)pKey Result:(JLHashBlock)bk;
-
-
-/// 重置设备认证过程
--(void)hashResetPair;
-
-
-/// 填入设备回复数据
-/// - Parameter rData: 数据
--(void)inputPairData:(NSData*)rData;
-
-
-/// 打印当前SDK的版本
-+(void)sdkVersion;
-
-
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/JL_HashPair.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/JL_HashPair.h
deleted file mode 100644 (file)
index 95d62c4..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-//
-//  JL_HashPair.h
-//  JL_HashPair
-//
-//  Created by EzioChan on 2023/1/30.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-//! Project version number for JL_HashPair.
-FOUNDATION_EXPORT double JL_HashPairVersionNumber;
-
-//! Project version string for JL_HashPair.
-FOUNDATION_EXPORT const unsigned char JL_HashPairVersionString[];
-
-// In this header, you should import all the public headers of your framework using statements like #import <JL_HashPair/PublicHeader.h>
-
-#import <JL_HashPair/BtHash.h>
-#import <JL_HashPair/JLHashHandler.h>
-#import <JL_HashPair/JL_ble_pair.h>
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/JL_ble_pair.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Headers/JL_ble_pair.h
deleted file mode 100644 (file)
index bce37ee..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-//
-//  JL_ble_pair.h
-//  JL_BLEKit
-//
-//  Created by zhihui liang on 2018/11/10.
-//  Copyright © 2018 www.zh-jieli.com. All rights reserved.
-//
-
-#ifndef JL_ble_pair_h
-#define JL_ble_pair_h
-
-#include <stdio.h>
-#include <stdint.h>
-
-void function_jieli(uint8_t *address,uint8_t *RAND,uint8_t *K,uint8_t *result);
-
-#pragma mark CRC校验
-unsigned short JL_CRC16(unsigned char *ptr, int len, uint16_t lastCrc);
-
-#endif /* JL_ble_pair_h */
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Info.plist b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Info.plist
deleted file mode 100644 (file)
index af468ba..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Info.plist and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/JL_HashPair b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/JL_HashPair
deleted file mode 100644 (file)
index 1351ebd..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/JL_HashPair and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Modules/module.modulemap b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_HashPair.framework/Modules/module.modulemap
deleted file mode 100644 (file)
index 4e820d9..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-framework module JL_HashPair {
-  umbrella header "JL_HashPair.h"
-  export *
-
-  module * { export * }
-}
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Frameworks/JLLogHelper.framework/Info.plist b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Frameworks/JLLogHelper.framework/Info.plist
deleted file mode 100644 (file)
index 22f0b62..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Frameworks/JLLogHelper.framework/Info.plist and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Frameworks/JLLogHelper.framework/JLLogHelper b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Frameworks/JLLogHelper.framework/JLLogHelper
deleted file mode 100755 (executable)
index 8301438..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Frameworks/JLLogHelper.framework/JLLogHelper and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/JLOTAFile.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/JLOTAFile.h
deleted file mode 100644 (file)
index 2ab4541..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-//
-//  JLOTAFile.h
-//  JL_OTALib
-//
-//  Created by EzioChan on 2024/7/26.
-//  Copyright © 2024 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_OTAUrlResult) {
-    JL_OTAUrlResultSuccess          = 0x00, //OTA文件获取成功
-    JL_OTAUrlResultFail             = 0x01, //OTA文件获取失败
-    JL_OTAUrlResultDownloadFail     = 0x02, //OTA文件下载失败
-};
-
-typedef void(^JL_OTA_URL)(JL_OTAUrlResult result,
-                          NSString* __nullable version,
-                          NSString* __nullable url,
-                          NSString* __nullable explain);
-
-@interface JLOTAFile : NSObject
-
-
-#pragma mark -文件下载
-/**
- 文件下载
- @param key 授权key
- @param code 授权code
- @param result 回复
- */
--(void)cmdGetOtaFileKey:(NSString*)key
-                   Code:(NSString*)code
-                 Result:(JL_OTA_URL __nullable)result;
-
-/**
- OTA升级文件下载【MD5】
-@param key 授权key
-@param code 授权code
-@param hash  MD5值
-@param result 回复
-*/
--(void)cmdGetOtaFileKey:(NSString*)key
-                   Code:(NSString*)code
-                   hash:(NSString*)hash
-                 Result:(JL_OTA_URL __nullable)result;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/JL_OTALib.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/JL_OTALib.h
deleted file mode 100644 (file)
index d09eb65..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-//
-//  JL_OTALib.h
-//  JL_OTALib
-//
-//  Created by EzioChan on 2023/1/29.
-//  Copyright © 2023 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-
-//! Project version number for JL_OTALib.
-FOUNDATION_EXPORT double JL_OTALibVersionNumber;
-
-//! Project version string for JL_OTALib.
-FOUNDATION_EXPORT const unsigned char JL_OTALibVersionString[];
-
-// In this header, you should import all the public headers of your framework using statements like #import <JL_OTALib/PublicHeader.h>
-#import <JL_OTALib/JL_OTAManager.h>
-#import <JL_OTALib/jl_ufw.h>
-#import <JL_OTALib/JLOTAFile.h>
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/JL_OTAManager.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/JL_OTAManager.h
deleted file mode 100644 (file)
index 93f5768..0000000
+++ /dev/null
@@ -1,227 +0,0 @@
-//
-//  JL_OTAManager.h
-//  JL_BLEKit
-//
-//  Created by 杰理科技 on 2021/11/16.
-//  Copyright © 2021 www.zh-jieli.com. All rights reserved.
-//
-
-#import <Foundation/Foundation.h>
-#import <JLLogHelper/JLLogHelper.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-typedef NS_ENUM(UInt8, JL_OTAResult) {
-    JL_OTAResultSuccess = 0x00,              // OTA升级成功
-    JL_OTAResultFail = 0x01,                 // OTA升级失败
-    JL_OTAResultDataIsNull = 0x02,           // OTA升级数据为空
-    JL_OTAResultCommandFail = 0x03,          // OTA指令失败
-    JL_OTAResultSeekFail = 0x04,             // OTA标示偏移查找失败
-    JL_OTAResultInfoFail = 0x05,             // OTA升级固件信息错误
-    JL_OTAResultLowPower = 0x06,             // OTA升级设备电压低
-    JL_OTAResultEnterFail = 0x07,            // 未能进入OTA升级模式
-    JL_OTAResultUpgrading = 0x08,            // OTA升级中
-    JL_OTAResultReconnect = 0x09,            // OTA需重连设备(uuid方式)
-    JL_OTAResultReboot = 0x0a,               // OTA需设备重启
-    JL_OTAResultPreparing = 0x0b,            // OTA准备中
-    JL_OTAResultPrepared = 0x0f,             // OTA准备完成
-    JL_OTAResultStatusIsUpdating = 0x10,     // 设备已在升级中
-    JL_OTAResultFailedConnectMore = 0x11,    // 当前固件多台设备连接,请手动断开另 一个设备连接
-    JL_OTAResultFailSameSN = 0xe0,           // 升级数据校验失败,SN 多次重复
-    JL_OTAResultCancel = 0xe1,               // 升级取消
-    JL_OTAResultFailVerification = 0xf1,     // 升级数据校验失败
-    JL_OTAResultFailCompletely = 0xf2,       // 升级失败
-    JL_OTAResultFailKey = 0xf3,              // 升级数据校验失败,加密Key不对
-    JL_OTAResultFailErrorFile = 0xf4,        // 升级文件出错
-    JL_OTAResultFailUboot = 0xf5,            // uboot不匹配
-    JL_OTAResultFailLenght = 0xf6,           // 升级过程长度出错
-    JL_OTAResultFailFlash = 0xf7,            // 升级过程flash读写失败
-    JL_OTAResultFailCmdTimeout = 0xf8,       // 升级过程指令超时
-    JL_OTAResultFailSameVersion = 0xf9,      // 相同版本
-    JL_OTAResultFailTWSDisconnect = 0xfa,    // TWS耳机未连接
-    JL_OTAResultFailNotInBin = 0xfb,         // 耳机未在充电仓
-    JL_OTAResultReconnectWithMacAddr = 0xfc, // OTA需重连设备(mac方式)
-    JL_OTAResultDisconnect = 0xfd,           // OTA设备断开
-    JL_OTAResultUnknown,                     // OTA未知错误
-};
-
-typedef NS_ENUM(UInt8, JL_OTAReconnectType) {
-    JL_OTAReconnectTypeUUID = 0x00,    // OTA升级回连使用uuid
-    JL_OTAReconnectTypeMACAddr = 0x01, // OTA升级回连使用mac地址
-};
-
-typedef NS_ENUM(UInt8, JL_OtaStatus) {
-    JL_OtaStatusNormal = 0, // 正常升级
-    JL_OtaStatusForce = 1,  // 强制升级
-};
-typedef NS_ENUM(UInt8, JL_OtaHeadset) {
-    JL_OtaHeadsetNO = 0,  // 耳机单备份 正常升级
-    JL_OtaHeadsetYES = 1, // 耳机单备份 强制升级
-};
-typedef NS_ENUM(UInt8, JL_OtaWatch) {
-    JL_OtaWatchNO = 0,  // 手表资源 正常升级
-    JL_OtaWatchYES = 1, // 手表资源 强制升级
-};
-typedef NS_ENUM(UInt8, JL_BootLoader) {
-    JL_BootLoaderNO = 0,  // 不需要下载Bootloader
-    JL_BootLoaderYES = 1, // 需要下载BootLoader
-};
-typedef NS_ENUM(UInt8, JL_Partition) {
-    JL_PartitionSingle = 0, // 固件单备份
-    JL_PartitionDouble = 1, // 固件双备份
-};
-
-typedef void (^JL_OTA_RT)(JL_OTAResult result, float progress);
-
-typedef void (^JL_OTA_RESULT)(uint8_t status, uint8_t sn, NSData *__nullable data);
-
-@class JL_OTAManager;
-
-/// OTA 升级管理对象回调
-@protocol JL_OTAManagerDelegate <NSObject>
-
-/// 即将被发送的数据
-/// @param data 数据内容
-- (void)otaDataSend:(NSData *_Nonnull)data;
-
-@optional
-/// 回调设备状态信息
-/// @param manager 对象状态
-- (void)otaFeatureResult:(JL_OTAManager *_Nonnull)manager;
-
-/// 回调升级状态以及进度等
-/// @param result 状态以及进度信息
-/// @param progress 进度信息
-- (void)otaUpgradeResult:(JL_OTAResult)result Progress:(float)progress;
-
-/// 取消OTA升级
-- (void)otaCancel;
-
-@end
-
-/// OTA升级管理对象
-@interface JL_OTAManager : NSObject
-
-/// 设备UUID(需要开发者填入)
-@property(strong, nonatomic) NSString *mBLE_UUID;
-
-/// 设备名称(需要开发者填入)
-@property(strong, nonatomic) NSString *mBLE_NAME;
-
-/// 是否仅仅支持BLE
-@property(assign, nonatomic) BOOL bleOnly;
-
-/// ble蓝牙地址
-@property(strong, nonatomic) NSString *bleAddr;
-
-/// SN值
-@property(assign, nonatomic) uint8_t mCmdSN;
-
-/// 设备版本号
-@property(assign, nonatomic) uint16_t version;
-
-/// 设备版本信息
-@property(strong, nonatomic) NSString *versionFirmware;
-
-/// 设备OTA状态
-@property(assign, nonatomic) JL_OtaStatus otaStatus;
-
-/// 耳机单备份 是否需要强制升级
-@property(assign, nonatomic) JL_OtaHeadset otaHeadset;
-
-/// 手表资源 是否需要强制升级
-@property(assign, nonatomic) JL_OtaWatch otaWatch;
-
-/// 设备OTA时支持单/双备份
-@property(assign, nonatomic) JL_Partition otaPartition;
-
-/// 设备是否需要下载Loader
-@property(assign, nonatomic) JL_BootLoader bootloaderType;
-
-/// OTA升级回连方式
-@property(assign, nonatomic) JL_OTAReconnectType otaReconnectType;
-
-/// OTA升级内容大小(设备通知的)
-@property(assign, nonatomic, readonly) int64_t otaLength;
-
-/// 已传输的数据大小
-@property(assign, nonatomic, readonly) uint32_t otaSent;
-
-/// 设备交互回调代理
-@property(weak, nonatomic) id<JL_OTAManagerDelegate> delegate;
-
-/// 获取 OTA 升级对象
-+ (JL_OTAManager *)getOTAManager;
-
-/// 不建议使用自行初始化
-/// 推荐获取 getOTAManager
-- (instancetype)init __attribute__((deprecated("Please use getOTAManager instead.")));
-;
-
-/// 打印OTA发送的数据内容
-/// - Parameter status: 开关
-- (void)logSendData:(BOOL)status;
-
-/// 当BLE连接上时告知SDK
-- (void)noteEntityConnected;
-
-/// 当BLE断开时告知SDK
-- (void)noteEntityDisconnected;
-
-/// 设置最大丢包次数
-/// - Parameter count: 次数
-/// default: 2
-- (void)maxLostCount:(int)count;
-
-/// Receive data from rcsp
-/// 设备端过来的数据
-/// - Parameter data: data
-- (void)cmdOtaDataReceive:(NSData *)data;
-
-/// 查询设备OTA信息
-/// 所有情况下都需要执行,而且是在连上后(认证完成)第一步执行
-- (void)cmdTargetFeature;
-
-/// 查询设备系统状态
-/// 当设备需要挂载外置flash才能正常升级时需要执行,其他情况则无需执行
-- (void)cmdSystemFunction;
-
-/// OTA单备份,是否正在回连
-- (BOOL)cmdOtaIsRelinking;
-
-#pragma mark---> OTA升级
-/**
- 开始OTA升级
- @param data 升级数据
- @param result 升级结果
- */
-- (void)cmdOTAData:(NSData *)data
-            Result:(JL_OTA_RT __nullable)result;
-
-/// OTA升级II
-/// 单备份升级特有!!!!
-/// 此接口可用于 OTA 回连成功后,再次发起升级使用
-/// @param result 升级结果回调
-- (void)cmdOtaDataIIResult:(JL_OTA_RT __nullable)result;
-
-/**
- OTA升级取消
- @param result 回复
- */
-- (void)cmdOTACancelResult:(JL_OTA_RESULT __nullable)result;
-
-/// 重启设备
-- (void)cmdRebootDevice;
-
-/// 强制重启设备
-- (void)cmdRebootForceDevice;
-
-/// 重置OTA manager
-- (void)resetOTAManager;
-
-/// 打印OTA SDK版本
-+ (NSString *)logSDKVersion;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/jl_ufw.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Headers/jl_ufw.h
deleted file mode 100644 (file)
index 313c99f..0000000
+++ /dev/null
@@ -1,207 +0,0 @@
-/**\r
- * Des: \r
- * author: Bob\r
- * date: 2022/11/29\r
- * Copyright: Jieli Technology\r
- */\r
-\r
-#ifndef NATIVEAPPLICATION_JL_UFW_H\r
-#define NATIVEAPPLICATION_JL_UFW_H\r
-\r
-\r
-#include <stdio.h>\r
-#include <string.h>\r
-#include <stdlib.h>\r
-//#include <android/log.h>\r
-//#include <jni.h>\r
-//\r
-//#define tag "myJNI"\r
-//#define logi(TAG, ...)  ((void)__android_log_print(ANDROID_LOG_INFO, TAG, __VA_ARGS__))\r
-//#define logw(TAG, ...)  ((void)__android_log_print(ANDROID_LOG_WARN, TAG, __VA_ARGS__))\r
-//#define loge(TAG, ...)  ((void)__android_log_print(ANDROID_LOG_ERROR, TAG, __VA_ARGS__))\r
-\r
-int parse_fw_info(const char *data, int size, uint8_t *resultBuff, uint32_t buffSize);\r
-#define     BIT(n)                 (1 << n)\r
-\r
-// for FW file\r
-enum eFW_FILE_TYPE {\r
-\r
-    FILE_TYPE_FW_FLASH_BIN = 0,     // FLASH文件,第一块FLASH数据\r
-    FILE_TYPE_FW_OTP_BIN = 1,       // OTP文件\r
-    FILE_TYPE_FW_INFO_LOG = 2,      // FW文件中保存的描述信息\r
-    FILE_TYPE_FW_BURN_CFG = 3,      // 烧写器配置文件\r
-    FILE_TYPE_FW_SCRIPT_DATA = 4,   // 烧写器打包烧写器下载文件时,需要执行的脚本数据\r
-    FILE_TYPE_FW_SRC = 5,           // 需要保存在FW文件中的代码文件, FW文件查看/编辑器都不能显示这些数据\r
-    FILE_TYPE_FW_NAME_BIN = 6,      // 升级名字用的FW文件,已经废除\r
-    FILE_TYPE_FW_OTP_VER_BIN = 7,   // OTP maskrom版本\r
-    FILE_TYPE_FW_OTPCFG_BIN = 8,    // OTP配置信息\r
-    FILE_TYPE_FW_OTP_CHIP_CONTROL_BIN = 9,  // OTP芯片控制信息\r
-\r
-    FILE_TYPE_FW_OTP_MINI_UBOOT = 0xA,      // 烧写到OTP的MINI UBOOT文件\r
-    FILE_TYPE_FW_OTP_FIX_UBOOT = 0xB,       // 烧写到OTP的FIX UBOOT文件\r
-    FILE_TYPE_FW_FLASH_2_BIN = 0xC,         // 第二块FLASH数据\r
-    FILE_TYPE_FW_BR18_EFUSE_CONFIG_BIN = 0xD,   // BR18 24BIT EFUSE配置数据\r
-    FILE_TYPE_FW_RESOURCE_FILE = 0xE,           // 资源文件\r
-    FILE_TYPE_FW_2018KEY_INFO = 0xF,        // 2018年的新KEY信息\r
-\r
-    FILE_TYPE_FW_BURNER_CUSTOMER_DATA = 0x10,       // 一拖八烧写器用户信息\r
-    FILE_TYPE_FW_BURNER_DV15_FLASH_BIN = 0x11,         // 一拖八烧写器第一块FLASH数据\r
-    FILE_TYPE_FW_BURNER_APP_FLASH_BIN = 0x12,         // 一拖八烧写器第二块FLASH数据\r
-    FILE_TYPE_FW_BURNER_DATA_FLASH_BIN = 0x13,         // 一拖八烧写器第三块FLASH数据\r
-    FILE_TYPE_FW_BURNER_BR21_FLASH_BIN = 0x14,         // 一拖八烧写器第四块FLASH数据\r
-\r
-    FILE_TYPE_FW_FLASH_BIN_2 = 0x20,        // 下载到第一块FLASH的文件,下载工具根据条件要么下载FILE_TYPE_FW_FLASH_BIN,要么下载FILE_TYPE_FW_FLASH_BIN_2\r
-    FILE_TYPE_FW_FLASH_BIN_3,\r
-    FILE_TYPE_FW_FLASH_BIN_4,\r
-\r
-    FILE_TYPE_FW_LOADER_BIN = 0x31,   // 打包的LOADER程序代码\r
-\r
-    FILE_TYPE_FW_TEST_BOX_OTA_BIN = 0x64,   // 测试盒使用的ota.bin\r
-\r
-    FILE_TYPE_FW_3RD_DATA_FILE = 0x71, // 第三方烧写数据\r
-\r
-    FILE_TYPE_FW_OTA_TARGET_DEVICE_INFO = 0xA0,\r
-    FILE_TYPE_FW_BURN_COUNT_LIMIT = 0xA1,   // 烧写授权信息\r
-\r
-    FILE_TYPE_FW_ADDITIONAL_FILE = 0xEE,  // 附加文件,由烧写器根据名字决定用途\r
-    FILE_TYPE_FW_PASSTHROUGH_DATA = 0xEF,  // AC691X BTIF数据\r
-    // 仅存在于FW文件中的数据\r
-    FILE_TYPE_FW_HIDDEN_CFG_BIN = 0xFA,\r
-    FILE_TYPE_FW_INVISIBLE_DATA = 0xFB,    // 保存在FW文件中的隐藏数据,FW文件查看/编辑器都不能显示这些数据\r
-    FILE_TYPE_FW_VISIBLE_DATA = 0xFE,   // 仅保存在FW文件中的HEX数据\r
-\r
-    FILE_TYPE_FW_TAIL = 0xFF,           // FW文件尾部标识\r
-};\r
-\r
-typedef struct U16BIT\r
-{\r
-    unsigned char b0 : 1;\r
-    unsigned char b1 : 1;\r
-    unsigned char b2 : 1;\r
-    unsigned char b3 : 1;\r
-    unsigned char b4 : 1;\r
-    unsigned char b5 : 1;\r
-    unsigned char b6 : 1;\r
-    unsigned char b7 : 1;\r
-    unsigned char b8 : 1;\r
-    unsigned char b9 : 1;\r
-    unsigned char b10 : 1;\r
-    unsigned char b11 : 1;\r
-    unsigned char b12 : 1;\r
-    unsigned char b13 : 1;\r
-    unsigned char b14 : 1;\r
-    unsigned char b15 : 1;\r
-\r
-} U16BIT;\r
-typedef union UBIT16\r
-{\r
-    U16BIT bits;\r
-    uint16_t val;\r
-} UBIT16;\r
-\r
-typedef struct stRES_FILE_HEAD {\r
-    uint32_t u32Tag;\r
-    uint16_t u16Crc;\r
-    uint16_t u16CrcOfItems;\r
-    uint32_t u32Len;\r
-    uint16_t u16Count;\r
-    uint16_t u16Res;\r
-    uint8_t u8Res16[16];\r
-}RES_FILE_HEAD;\r
-\r
-typedef struct stRES_CONFIG_ITEM {\r
-    uint16_t u16Index;\r
-    uint16_t u16Type;\r
-    uint32_t u32Addr;\r
-    uint32_t u32Len;\r
-    uint16_t u16CrcOfData;\r
-    uint16_t u16Res;\r
-    char szName[16];\r
-}RES_CONFIG_ITEM;\r
-static uint16_t m_u16ChipKey = 0xFFFF;\r
-static uint16_t m_u16DefaultKey = 0xFFFF;\r
-\r
-\r
-#pragma pack(1)\r
-#define JL_FILE_ITEM_NAME_MAX_LEN 16\r
-#define JL_CHIP_KEY_ENC_LENGTH 32\r
-\r
-typedef struct stUFW_SYD_HEAD_V1 {\r
-    uint16_t u16Crc;          // crc16 for this struct\r
-    uint16_t u16CrcOfSydFileHead;\r
-    uint32_t u32FileLength;  // file length\r
-    uint16_t u16FileCount;   // 此FW文件中包含的子文件个数\r
-    uint16_t u16Version;\r
-    uint32_t u32Res;\r
-    char    szChipName[16]; // 此FW文件对应的芯片类型,如AC690X,AC691X\r
-    uint32_t u32Res2[4];\r
-    uint32_t u32Res3[4];\r
-}UFW_SYD_HEAD_V1;\r
-\r
-typedef struct stUFW_FILE_HEAD_V1 {\r
-    uint8_t u8FileType;              // 文件类型\r
-    uint8_t u8Res;                   // 保留\r
-    uint16_t u16Index;               // 文件索引号\r
-    uint16_t u16Crc;                 // 明文数据的校验码\r
-    uint16_t u16Version;             // 本结构体版本\r
-    uint32_t u32Addr;                // 地址\r
-    uint32_t u32Length;              // 数据长度\r
-    uint32_t u32AllLength;           // 数据长度+尾部对齐的数据长度\r
-    uint32_t u32EncryptedAddr;       // 加密数据的地址偏移(相对u32Addr的地址)\r
-    uint32_t u32EncryptedLength;     // 加密的数据长度\r
-    uint32_t u32Res;                 // 保留\r
-    uint32_t u64Res1[4];             // 保留\r
-    uint32_t u64Res2[4];             // 保留\r
-    char name[JL_FILE_ITEM_NAME_MAX_LEN];\r
-\r
-}UFW_FILE_HEAD_V1;\r
-\r
-typedef struct stJL_FILE_TAIL {\r
-    char    szChipKey[JL_CHIP_KEY_ENC_LENGTH];      // 32   // 固定位置\r
-    uint16_t u16ChipKeyCRC16;    // 34           // 固定位置\r
-    uint8_t  u8Magic[6];         // 40           // 固定位置\r
-    uint8_t  u8Res8[8];          // 48\r
-    char    szTailChipName[6];      // 54           // 固定位置\r
-    uint8_t  u8Reserv10[10];     // 64\r
-}JL_FILE_TAIL;\r
-\r
-typedef struct {\r
-    char szName[3];\r
-    char szVersion[3];\r
-    uint8_t  u8Flag;\r
-    uint8_t u8Res;\r
-    uint32_t u32Crc;\r
-    uint16_t u16Crc;\r
-    uint16_t u16Res;\r
-}JL_FLASH_BIN_TAIL;\r
-\r
-typedef UFW_SYD_HEAD_V1 jl_ufw_syd_head;\r
-typedef UFW_FILE_HEAD_V1 jl_ufw_file_head;\r
-typedef JL_FILE_TAIL jl_ufw_tail;\r
-\r
-typedef struct stJL_BR22_FLASH_HEAD {\r
-    uint16_t u16Crc;             // 结构体自身校验码\r
-    uint8_t  u8SizeForBurner;    // 为烧写器保留的空间大小\r
-    uint8_t  u8Version;          // FLASH FS版本号\r
-    char vid[4];                // 4byte的vid\r
-    uint32_t u32FlashSize;       // FLASH大小,由isd_download计算得出\r
-    uint8_t u8FsVersion;            // 类型:br18/br22\r
-    uint8_t u8BlockAlingnModulus;      // 对齐系数\r
-    uint8_t u8Res;        // 保留,以后有可能会用于存放顶层目录的偏移和文件目录内偏移信息\r
-    uint8_t u8SpecialOptFlag;    // 用于标记是否需要生成2种flash格式的标记位,目前只用1位,以后如果需要特殊操作需要标记,再用其他位\r
-    char pid[16];               // 16byte的pid\r
-}JL_BR22_FLASH_HEAD;\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-#pragma pack()\r
-\r
-\r
-#endif //NATIVEAPPLICATION_JL_UFW_H\r
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Info.plist b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Info.plist
deleted file mode 100644 (file)
index 608fa1e..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Info.plist and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/JL_OTALib b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/JL_OTALib
deleted file mode 100644 (file)
index 95a277f..0000000
Binary files a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/JL_OTALib and /dev/null differ
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Modules/module.modulemap b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_OTALib.framework/Modules/module.modulemap
deleted file mode 100644 (file)
index fbeacb7..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-framework module JL_OTALib {
-  umbrella header "JL_OTALib.h"
-  export *
-
-  module * { export * }
-}
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_RunSDK.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_RunSDK.h
deleted file mode 100644 (file)
index 344349e..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-//
-//  JL_RunSDK.h
-//  JL_OTA_InnerBle
-//
-//  Created by 凌煊峰 on 2021/10/9.
-//
-
-#import <Foundation/Foundation.h>
-#import <JL_BLEKit/JL_BLEKit.h>
-
-#define SMALL_V @"v"
-
-#define BIG_V   @"V"
-
-#define kJL_AGRESS_PROTOCOL @"agress_protocol"
-
-#define KEY_COMMIT_PROTOCOL  @"commit_protocol"
-
-#define kJL_HeightNavBar ([UIApplication sharedApplication].delegate.window.safeAreaInsets.top+44.0)
-
-
-NS_ASSUME_NONNULL_BEGIN
-
-@protocol JL_RunSDKOtaDelegate <NSObject>
-
-@required
-/**
- *  ota升级过程状态回调
- */
-- (void)otaProgressWithOtaResult:(JL_OTAResult)result withProgress:(float)progress;
-
-@end
-
-@interface JL_RunSDK : NSObject
-
-@property (strong, nonatomic) JL_BLEMultiple *mBleMultiple;
-@property (weak, nonatomic) JL_EntityM *__nullable mBleEntityM;
-@property (weak, nonatomic) id<JL_RunSDKOtaDelegate> otaDelegate;
-
-/**
- * 单例
- */
-+ (instancetype)sharedInstance;
-
-//+ (NSString *)textEntityStatus:(JL_EntityM_Status)status;
-- (JL_EntityM *)getEntity:(NSString *)uuid;
-
-#pragma mark - 杰理蓝牙库OTA流程相关业务
-
-typedef void(^GET_DEVICE_CALLBACK)(BOOL needForcedUpgrade);
-
-
--(void)startLoopConnect:(NSString *)uuid;
-
-/**
- *  获取已连接的蓝牙设备信息
- */
-- (void)getDeviceInfo:(GET_DEVICE_CALLBACK _Nonnull)callback;
-
-/**
- *  OTA升级
- */
-- (void)otaFuncWithFilePath:(NSString *)otaFilePath;
-
-+(double)getWidthWithString:(NSString*)str font:(UIFont*)font;
-
-+(NSAttributedString *)getAttributeWith:(id)sender string:(NSString *)string orginFont:(CGFloat)orginFont orginColor:(UIColor *)orginColor attributeFont:(CGFloat)attributeFont attributeColor:(UIColor *)attributeColor;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_RunSDK.m b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/JL_RunSDK.m
deleted file mode 100644 (file)
index 996b0a5..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-//
-//  JL_RunSDK.m
-//  JL_OTA_InnerBle
-//
-//  Created by 凌煊峰 on 2021/10/9.
-//
-
-#import "JL_RunSDK.h"
-
-@interface JL_RunSDK() <JL_ManagerMDelegate>
-
-@property (strong, nonatomic) NSString *selectedOtaFilePath;
-@property (strong, nonatomic) NSString *connectUUID;
-
-@end
-
-@implementation JL_RunSDK
-
-
-//+ (NSString *)textEntityStatus:(JL_EntityM_Status)status {
-//    if (status < 0) return kJL_TXT("未知错误");
-//    NSArray *arr = @[kJL_TXT("蓝牙未开启"), kJL_TXT("连接失败"), kJL_TXT("正在连接"), kJL_TXT("重复连接"),
-//                     kJL_TXT("连接超时"), kJL_TXT("被拒绝"), kJL_TXT("配对失败"), kJL_TXT("配对超时"), kJL_TXT("已配对"),
-//                     kJL_TXT("正在主从切换"), kJL_TXT("断开成功"), kJL_TXT("请打开蓝牙")];
-//    if (status+1 <= arr.count) {
-//        return arr[status];
-//    } else {
-//        return kJL_TXT("未知错误");
-//    }
-//}
-
-+ (instancetype)sharedInstance {
-    static JL_RunSDK *singleton = nil;
-    static dispatch_once_t onceToken;
-    dispatch_once(&onceToken, ^{
-        singleton = [[self alloc] init];
-    });
-    return singleton;
-}
-
-- (instancetype)init {
-    self = [super init];
-    if (self) {
-        /*--- 初始化JL_SDK ---*/
-        self.mBleMultiple = [[JL_BLEMultiple alloc] init];
-        self.mBleMultiple.BLE_FILTER_ENABLE = YES;
-        self.mBleMultiple.BLE_PAIR_ENABLE = YES;
-        self.mBleMultiple.BLE_TIMEOUT = 7;
-        self.connectUUID = nil;
-        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(noteListen:) name:nil object:nil];
-    }
-    return self;
-}
-
-
--(void)noteListen:(NSNotification *)note{
-    NSString *name = note.name;
-    if(!self.connectUUID) return;
-    if([name isEqual:kJL_BLE_M_FOUND]){
-        NSArray *itemsArray = [note object];
-        __weak typeof(self) weakSelf = self;
-        for (JL_EntityM *entity in itemsArray) {
-            if([entity.mPeripheral.identifier.UUIDString isEqualToString:self.connectUUID]){
-                [self.mBleMultiple scanStop];
-                self.connectUUID = nil;
-                [self.mBleMultiple connectEntity:entity Result:^(JL_EntityM_Status status) {
-                    if(status == JL_EntityM_StatusPaired){
-                        weakSelf.mBleEntityM = entity;
-                    }
-                }];
-            }
-        }
-        
-    }
-}
-
--(void)startLoopConnect:(NSString *)uuid{
-    self.connectUUID = uuid;
-    [self.mBleMultiple scanStart];
-}
-
-
-- (JL_EntityM *)getEntity:(NSString *)uuid {
-    NSMutableArray *mConnectArr = self.mBleMultiple.bleConnectedArr;
-    for (JL_EntityM *entity in mConnectArr) {
-        NSString *inUnid = entity.mPeripheral.identifier.UUIDString;
-        if ([uuid isEqual:inUnid]) {
-            return entity;
-        }
-    }
-    return nil;
-}
-
-
--(void)handelDeviceInfo{
-    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
-        [self getDeviceInfo:^(BOOL needForcedUpgrade) {
-            
-        }];
-    });
-}
-
-#pragma mark - 杰理蓝牙库OTA流程相关业务
-
-/**
- *  获取已连接的蓝牙设备信息,这里如果上次设备升级没有成功,会要求执行otaFuncWithFilePath:强制升级
- */
-- (void)getDeviceInfo:(GET_DEVICE_CALLBACK _Nonnull)callback {
-    __weak typeof(self) weakSelf = self;
-    /*--- 获取设备信息 ---*/
-    [self.mBleEntityM.mCmdManager cmdTargetFeatureResult:^(JL_CMDStatus status, uint8_t sn, NSData * _Nullable data) {
-        if (status == JL_CMDStatusSuccess) {
-            JLModel_Device *model = [weakSelf.mBleEntityM.mCmdManager outputDeviceModel];
-            JL_OtaStatus upSt = model.otaStatus;
-            if (upSt == JL_OtaStatusForce) {
-                kJLLog(JLLOG_DEBUG, @"---> 进入强制升级.");
-                if (weakSelf.selectedOtaFilePath) {
-                    [weakSelf otaFuncWithFilePath:weakSelf.selectedOtaFilePath];
-                } else {
-                    callback(true);
-                }
-                return;
-            } else {
-                if (model.otaHeadset == JL_OtaHeadsetYES) {
-                    kJLLog(JLLOG_DEBUG, @"---> 进入强制升级: OTA另一只耳机.");
-                    if (weakSelf.selectedOtaFilePath) {
-                        [weakSelf otaFuncWithFilePath:weakSelf.selectedOtaFilePath];
-                    } else {
-                        callback(true);
-                    }
-                    return;
-                }
-            }
-            kJLLog(JLLOG_DEBUG, @"---> 设备正常使用...");
-            [JL_Tools mainTask:^{
-                /*--- 获取公共信息 ---*/
-                [weakSelf.mBleEntityM.mCmdManager cmdGetSystemInfo:JL_FunctionCodeCOMMON Result:nil];
-                callback(false);
-            }];
-        } else {
-            kJLLog(JLLOG_DEBUG, @"---> ERROR:设备信息获取错误!");
-        }
-    }];
-}
-
-- (void)otaFuncWithFilePath:(NSString *)otaFilePath {
-    kJLLog(JLLOG_DEBUG, @"current otaFilePath ---> %@", otaFilePath);
-    self.selectedOtaFilePath = otaFilePath;
-    __weak typeof(self) weakSelf = self;
-    [self.mBleMultiple otaFuncWithEntityM:self.mBleEntityM withFilePath:otaFilePath Result:^(JL_OTAResult result, float progress) {
-        if ([weakSelf.otaDelegate respondsToSelector:@selector(otaProgressWithOtaResult:withProgress:)]) {
-            [weakSelf.otaDelegate otaProgressWithOtaResult:result withProgress:progress];
-        }
-    }];
-}
-
-+(double)getWidthWithString:(NSString*)str font:(UIFont*)font{
-    NSDictionary *dict = @{NSFontAttributeName:font};
-    CGSize detailSize = [str sizeWithAttributes:dict];
-    return detailSize.width;
-}
-
-+ (NSString *)getStringWithRange:(NSRange)range
-{
-    NSMutableString *string = [NSMutableString string];
-    for (int i = 0; i < range.length ; i++) {
-        [string appendString:@" "];
-    }
-    return string;
-}
-
-@end
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/SDKBleHelper.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/SDKBleHelper.h
deleted file mode 100644 (file)
index 0c983c3..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-////
-////  SDKBleHelper.h
-////  JL_OTA
-////
-////  Created by EzioChan on 2022/10/12.
-////  Copyright © 2022 Zhuhia Jieli Technology. All rights reserved.
-////
-//
-//#import <Foundation/Foundation.h>
-//#import <JL_BLEKit/JL_BLEKit.h>
-//
-//NS_ASSUME_NONNULL_BEGIN
-//
-//@interface SDKBleHelper : NSObject
-//
-//+(NSMutableArray <JL_EntityM *>*)fitterHandle:(NSArray*)basicArray;
-//
-//
-//
-//@end
-//
-//NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/SDKBleHelper.m b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/SDKBleHelper.m
deleted file mode 100644 (file)
index 9b51bf7..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-////
-////  SDKBleHelper.m
-////  JL_OTA
-////
-////  Created by EzioChan on 2022/10/12.
-////  Copyright © 2022 Zhuhia Jieli Technology. All rights reserved.
-////
-//
-//#import "SDKBleHelper.h"
-//#import "FittingView.h"
-//#import <JL_BLEKit/JL_BLEKit.h>
-//
-//@implementation SDKBleHelper
-//
-//+(NSMutableArray <JL_EntityM *>*)fitterHandle:(NSArray*)basicArray{
-//    NSMutableArray *localArray = [NSMutableArray new];
-//    NSString *key = [[FittingView getFitterKey] uppercaseString];
-//    for (JL_EntityM *entity in basicArray) {
-//        if ([key isEqualToString:@""]) {
-//            [localArray addObject:entity];
-//        }else{
-//            if ([[entity.mItem uppercaseString] rangeOfString:key].location == NSNotFound || !entity.mItem) {
-//                //
-//                kJLLog(JLLOG_DEBUG, @"过滤 ----> NAME:%@ RSSI:%@", entity.mItem,entity.mRSSI);
-//            }else{
-//                [localArray addObject:entity];
-//            }
-//        }
-//    }
-//    return localArray;
-//}
-//
-//
-//
-//@end
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/YLOtaManager2.h b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/YLOtaManager2.h
deleted file mode 100644 (file)
index 59255c2..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-//  YLOtaManager.h
-//  JL_OTA
-//
-//  Created by liangshi on 2025/8/16.
-//  Copyright © 2025 Zhuhia Jieli Technology. All rights reserved.
-//
-
-//#import <Foundation/Foundation.h>
-//#import "HandleBroadcastPtl.h"
-#import <JL_BLEKit/JL_BLEKit.h>
-
-NS_ASSUME_NONNULL_BEGIN
-
-@protocol YLOtaDelegate <NSObject>
-
-@required
-
-
-- (void)otaProgressWithOtaResult:(JL_OTAResult)result withProgress:(float)progress;
-
-- (void)otaCancel;
-
-@end
-
-
-@interface YLOtaManager : NSObject
-@property(nonatomic,weak)id<YLOtaDelegate> delegate;
-@property (strong, nonatomic) JL_BLEMultiple *mBleMultiple;
-@property (weak, nonatomic) JL_EntityM *__nullable mBleEntityM;
-
-+ (instancetype)shared;
-
-
-- (void)otaFuncWithFilePath:(NSString *)otaFilePath;
-
-@end
-
-NS_ASSUME_NONNULL_END
diff --git a/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/YLOtaManager2.m b/ShenYin/ShenYin/UI/Mine/Update/SDKBleManager/YLOtaManager2.m
deleted file mode 100644 (file)
index ed02f34..0000000
+++ /dev/null
@@ -1,128 +0,0 @@
-//
-//  YLOtaManager.m
-//  JL_OTA
-//
-//  Created by suhailian on 2025/8/4.
-//  Copyright © 2025 Zhuhia Jieli Technology. All rights reserved.
-//
-
-#import "YLOtaManager2.h"
-#import "JL_RunSDK.h"
-#import "SDKBleHelper.h"
-@interface YLOtaManager() <JL_RunSDKOtaDelegate>
-
-@property (strong, nonatomic) NSString *otaFilePath;
-@property (strong, nonatomic) NSString *connectUUID;
-
-@end
-@implementation YLOtaManager
-
-+ (instancetype)shared {
-    static YLOtaManager *singleton = nil;
-    static dispatch_once_t onceToken;
-    dispatch_once(&onceToken, ^{
-        singleton = [[self alloc] init];
-    });
-    return singleton;
-}
-
-
-- (instancetype)init {
-    self = [super init];
-    if (self) {
-        
-        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(allNoteListen:) name:nil object:nil];
-    }
-    return self;
-}
-
-- (void)allNoteListen:(NSNotification*)note {
-    NSString *name = note.name;
-
-    if([name isEqual:kJL_BLE_M_FOUND]){
-        NSArray *itemsArray = [note object];
-//        NSArray *list = [SDKBleHelper fitterHandle:itemsArray];
-        JL_EntityM *entity = [[JL_RunSDK sharedInstance] mBleEntityM];
-        if ( entity.mBLE_IS_PAIRED ) {
-//            [self.btEnityList insertObject:entity atIndex:0];
-        }
-        for (JL_EntityM *model in itemsArray) {
-            NSLog(@"%@",@"发现设备");
-            if ([@"EB_002111108" isEqualToString:model.mPeripheral.name]) {
-                JL_EntityM *selectedItem = model;
-                CBPeripheral *item = selectedItem.mPeripheral;
-//                if (item.state == CBPeripheralStateConnected || item.state == CBPeripheralStateConnecting) {
-//                    return;
-//                }
-//                if (item.state == CBPeripheralStateConnected || item.state == CBPeripheralStateConnecting) {
-//                    return;
-//                }
-                NSLog(@"%@",@"开始连接");
-                [JL_RunSDK sharedInstance].mBleMultiple.BLE_PAIR_ENABLE = true;
-                [[JL_RunSDK sharedInstance].mBleMultiple connectEntity:selectedItem Result:^(JL_EntityM_Status status) {
-                    if(status == JL_EntityM_StatusPaired){
-                        NSLog(@"%@",@"配对成功");
-                    }
-                }];
-            }
-        }
-    }
-    
-    if ([name isEqual:kJL_BLE_M_ENTITY_CONNECTED]) {
-        NSLog(@"%@",@"已连接");
-        CBPeripheral *cpb = note.object;
-        NSArray *list = [JL_RunSDK sharedInstance].mBleMultiple.bleConnectedArr;
-        for (JL_EntityM *entity in list) {
-            if([entity.mPeripheral.identifier.UUIDString isEqualToString:cpb.identifier.UUIDString]){
-                [JL_RunSDK sharedInstance].mBleEntityM = entity;
-                break;
-            }
-        }
-        [JL_Tools delay:0.5 Task:^{
-            [[JL_RunSDK sharedInstance] getDeviceInfo:^(BOOL needForcedUpgrade) {
-                [[JL_RunSDK sharedInstance] otaFuncWithFilePath:self.otaFilePath];
-            }];
-        }];
-    }
-    
-    if ([name isEqual:kJL_BLE_M_ENTITY_DISCONNECTED]) {
-        NSLog(@"%@",@"断开连接");
-    }
-}
-
-- (void)startSearch{
-    NSMutableArray *mConnectArr = self.mBleMultiple.bleConnectedArr;
-    NSLog(@"已连接==== %@",mConnectArr);
-    [[JL_RunSDK sharedInstance].mBleMultiple scanStart];
-}
-
-- (void)otaFuncWithFilePath:(NSString *)otaFilePath{
-    self.otaFilePath = otaFilePath;
-    [JL_RunSDK sharedInstance].otaDelegate = self;
-    [self startSearch];
-}
-
-- (void)otaProgressWithOtaResult:(JL_OTAResult)result withProgress:(float)progress {
-    if (result == JL_OTAResultUpgrading || result == JL_OTAResultPreparing) {
-        if (result == JL_OTAResultPreparing){
-            NSLog(@"%@",@"校验文件中");
-        }
-        if (result == JL_OTAResultUpgrading){
-            NSLog(@"%@",@"正在升级");
-        }
-    } else if (result == JL_OTAResultPrepared) {
-        NSLog(@"---> 检验文件【完成】");
-    } else if (result == JL_OTAResultReconnect) {
-        NSLog(@"---> OTA正在回连设备... %@", [JL_RunSDK sharedInstance].mBleEntityM.mPeripheral.name);
-    } else if (result == JL_OTAResultReconnectWithMacAddr) {
-        NSLog(@"---> OTA正在通过Mac Addr方式回连设备... %@", [JL_RunSDK sharedInstance].mBleEntityM.mPeripheral.name);
-    } else if (result == JL_OTAResultSuccess) {
-        NSLog(@"--->升级成功.");
-    } else if (result == JL_OTAResultReboot) {
-        NSLog(@"--->设备重启.");
-    } else {
-        // 其余错误码详细 Command+点击JL_OTAResult 查看说明
-        NSLog(@"ota update result: %d", result);
-    }
-}
-@end
diff --git a/ShenYin/ShenYin/UI/Sleep/AudioPlayView.swift b/ShenYin/ShenYin/UI/Sleep/AudioPlayView.swift
new file mode 100644 (file)
index 0000000..3282160
--- /dev/null
@@ -0,0 +1,141 @@
+//
+//  AudioPlayView.swift
+//  ShenYin
+//
+//  Created by liangshi on 2025/11/18.
+//
+
+import UIKit
+import Kingfisher
+
+class AudioPlayView: BaseView {
+    static let shared = AudioPlayView(frame: CGRect(x: 0, y: kScreenHei - kTabbarHei - 60, width: kScreenWid, height: 60))
+    
+    let musicView = UIImageView()
+    let nameLabel = UILabel()
+    let tagLabel = UILabel()
+
+    let playBtn = UIButton(type: .custom)
+    let closeBtn = UIButton(type: .custom)
+    let progress = CircleProgressView()
+    var musicModel:MusicModel?{
+        didSet{
+            guard let musicModel = musicModel else{
+                return
+            }
+            musicView.kf.setImage(with: musicModel.cover.yc.asUrl)
+            nameLabel.text = musicModel.name
+        }
+    }
+    var tagName:String = ""{
+        didSet{
+            tagLabel.text = tagName
+        }
+    }
+    
+    override func setupViews() {
+        self.isHidden = true
+        addSubviews([musicView,nameLabel,tagLabel,progress,playBtn,closeBtn])
+        backgroundColor = .white
+        nameLabel.do { v in
+            v.text = "远山"
+            v.font = .bold(14)
+            v.textColor = .hexString("#121212")
+        }
+        tagLabel.do { v in
+            v.text = "旋律"
+            v.font = .regular(12)
+            v.textColor = .hexString("#666666")
+        }
+        musicView.do { v in
+            v.yc.setCornerRadius(6)
+        }
+        playBtn.do { v in
+            v.setImage(UIImage(named: "play_play_icon"), for: .normal)
+            v.setImage(UIImage(named: "play_paus_icon"), for: .selected)
+            v.addTarget(self, action: #selector(playAction), for: .touchUpInside)
+            v.backgroundColor = .clear
+            v.contentMode = .center
+        }
+        closeBtn.do { v in
+            v.setImage(UIImage(named: "close_icon_1"), for: .normal)
+            v.addTarget(self, action: #selector(closeAction), for: .touchUpInside)
+            v.contentMode = .center
+//            v.backgroundColor = .red
+        }
+        yc.addTap(target: self, action: #selector(tapAction))
+        progress.do { v in
+            v.backgroundColor = .clear
+            v.progress = 0.34
+            v.centerFillColor = .white
+            v.trackFillColor = .color(.theme)
+            v.trackBackgroundColor = UIColor.color(.theme).withAlphaComponent(0.2)
+            v.trackWidth = 3
+        }
+    }
+    
+    override func setupLayout() {
+        musicView.snp.makeConstraints { make in
+            make.size.equalTo(46)
+            make.left.equalToSuperview().inset(18)
+            make.centerY.equalToSuperview()
+        }
+        nameLabel.snp.makeConstraints { make in
+            make.left.equalToSuperview().inset(78)
+            make.top.equalToSuperview().inset(12)
+        }
+        tagLabel.snp.makeConstraints { make in
+            make.left.equalToSuperview().inset(78)
+            make.top.equalToSuperview().inset(32)
+        }
+        playBtn.snp.makeConstraints { make in
+            make.size.equalTo(38)
+            make.centerY.equalToSuperview()
+            make.right.equalToSuperview().inset(56)
+        }
+        closeBtn.snp.makeConstraints { make in
+            make.size.equalTo(34)
+            make.centerY.equalToSuperview()
+            make.right.equalToSuperview().inset(10)
+        }
+        progress.snp.makeConstraints { make in
+            make.edges.equalTo(playBtn)
+        }
+    }
+    @objc func tapAction(){
+        guard let musicModel = musicModel else{
+            return
+        }
+        App.shared.goToPage(AudioPlayerVC(model: musicModel,tagName: tagName))
+        hiden()
+    }
+    @objc func playAction(){
+        playBtn.isSelected = !playBtn.isSelected
+        if playBtn.isSelected {
+            AudioPlayerManager.shared.start()
+        }
+        else{
+            AudioPlayerManager.shared.pause()
+        }
+    }
+    @objc func closeAction(){
+        AudioPlayerManager.shared.pause()
+    }
+    func show(){
+        self.isHidden = false
+        playBtn.isSelected = AudioPlayerManager.shared.isPlaying
+        
+        AudioPlayerManager.shared.progressCallback = {[weak self] current,duration in
+            guard let self = self else {return}
+            progressChange(current: current, duration: duration)
+        }
+    }
+    func hiden(){
+        self.isHidden = true
+    }
+    
+    func progressChange(current:Float,duration:Float){
+        let pro = current/duration
+        progress.progress = Double(pro)
+    }
+}
index 32995b0..46831be 100644 (file)
@@ -2,6 +2,13 @@ import AVFoundation
 
 class AudioPlayerManager {
     static let shared = AudioPlayerManager()
+    var musicModel:MusicModel?
+    var isPlaying:Bool{
+        guard let player = player else {
+            return false
+        }
+        return player.timeControlStatus == .playing
+    }
     
     var player: AVPlayer?
     var playerItem: AVPlayerItem?
@@ -9,8 +16,12 @@ class AudioPlayerManager {
     
     typealias ProgressCallback = (_ current: Float, _ duration: Float) -> Void
     var progressCallback: ProgressCallback?
+    var currentProgress:Float = 0
+    var duration:Float = 0
     
     func play(filePath: String) {
+        stop()
+        
         Logger.debug("播放路径", filePath)
         let url = URL(fileURLWithPath: filePath)
         playerItem = AVPlayerItem(url: url)
@@ -23,10 +34,11 @@ class AudioPlayerManager {
         guard let player = player else { return }
         let interval = CMTimeMake(value: 1, timescale: 10) // 每 0.1 秒调用一次回调
         timeObserverToken = player.addPeriodicTimeObserver(forInterval: interval, queue: DispatchQueue.main) { [weak self] time in
-            guard let self = self, let duration = self.playerItem?.duration else { return }
-            if CMTimeGetSeconds(duration) > 0 {
-                let currentProgress = Float(CMTimeGetSeconds(time))
-                self.progressCallback?(currentProgress, Float(CMTimeGetSeconds(duration)))
+            guard let self = self, let total = self.playerItem?.duration else { return }
+            if CMTimeGetSeconds(total) > 0 {
+                currentProgress = Float(CMTimeGetSeconds(time))
+                duration = Float(CMTimeGetSeconds(total))
+                self.progressCallback?(currentProgress,duration )
             }
         }
     }
@@ -44,6 +56,8 @@ class AudioPlayerManager {
         player.play()
     }
     
+    
+    
     func start() {
         player?.play()
     }
index 7282d9a..28b9791 100644 (file)
@@ -18,13 +18,17 @@ class AudioPlayerVC:BaseVC{
     let durationLabel = UILabel()
     let playBtn = UIButton(type: .custom)
     let musicModel:MusicModel
+    var tagName = ""
     
-    init(model:MusicModel) {
+    init(model:MusicModel,tagName:String) {
         self.musicModel = model
+        self.tagName = tagName
         super.init()
+        AudioPlayView.shared.musicModel = model
+        AudioPlayView.shared.tagName = tagName
+        AudioPlayView.shared.hiden()
     }
     
-    
     override func setupViews() {
         navBar.leftView.setImage(UIImage(named: "arrow_back_white"), for: .normal)
         navBar.backgroundColor = .clear
@@ -82,10 +86,7 @@ class AudioPlayerVC:BaseVC{
         }
         AudioPlayerManager.shared.progressCallback = {[weak self] current,duration in
             guard let self = self else {return}
-            slider.maximumValue = duration
-            slider.setValue(current, animated: true)
-            progressLabel.text = YLToos.formatSeconds1(Int(current))
-            durationLabel.text = YLToos.formatSeconds1(Int(duration))
+            progressChange(current: current, duration: duration)
         }
     }
     override func setupLayout() {
@@ -102,7 +103,6 @@ class AudioPlayerVC:BaseVC{
             make.top.equalTo(musicView.snp.bottom).offset(40)
         }
         slider.snp.makeConstraints { make in
-//            make.width.equalTo(200)
             make.height.equalTo(40)
             make.centerX.equalToSuperview()
             make.left.right.equalToSuperview().inset(40)
@@ -123,6 +123,12 @@ class AudioPlayerVC:BaseVC{
         }
     }
     override func setupData() {
+        if let model = AudioPlayerManager.shared.musicModel,model.id == musicModel.id{
+            playBtn.isEnabled = true
+            playBtn.isSelected = AudioPlayerManager.shared.isPlaying
+            progressChange(current: AudioPlayerManager.shared.currentProgress, duration: AudioPlayerManager.shared.duration)
+            return
+        }
         SleepVM.getMusicUrl(filedId: musicModel.fileId) { [weak self] model in
             guard let self = self else{return}
             if model.isSuccess{
@@ -133,7 +139,14 @@ class AudioPlayerVC:BaseVC{
     
     override func viewDidDisappear(_ animated: Bool) {
         super.viewDidDisappear(animated)
-        AudioPlayerManager.shared.pause()
+//        AudioPlayerManager.shared.pause()
+        AudioPlayView.shared.show()
+    }
+    func progressChange(current:Float,duration:Float){
+        slider.maximumValue = duration
+        slider.setValue(current, animated: true)
+        progressLabel.text = YLToos.formatSeconds1(Int(current))
+        durationLabel.text = YLToos.formatSeconds1(Int(duration))
     }
 
     @objc func btnAction(){
@@ -164,6 +177,7 @@ class AudioPlayerVC:BaseVC{
         }
     }
     func startPlay(path:String){
+        AudioPlayerManager.shared.musicModel = musicModel
         playBtn.isEnabled = true
 //        guard let path = Bundle.main.path(forResource: "大约在冬季", ofType: "mp3") else {return}
         AudioPlayerManager.shared.play(filePath: path)
diff --git a/ShenYin/ShenYin/UI/Sleep/CircleProgressView.swift b/ShenYin/ShenYin/UI/Sleep/CircleProgressView.swift
new file mode 100644 (file)
index 0000000..395d2f3
--- /dev/null
@@ -0,0 +1,221 @@
+//
+//  CircleProgressView.swift
+//
+//
+//  Created by Eric Rolf on 8/11/14.
+//  Copyright (c) 2014 Eric Rolf, Cardinal Solutions Group. All rights reserved.
+//
+
+import UIKit
+
+@objc @IBDesignable open class CircleProgressView: UIView {
+
+    fileprivate struct Constants {
+        let circleDegress = 360.0
+        let minimumValue = 0.000001
+        let maximumValue = 0.999999
+        let ninetyDegrees = 90.0
+        let twoSeventyDegrees = 270.0
+        var contentView:UIView = UIView()
+    }
+
+    fileprivate let constants = Constants()
+    fileprivate var internalProgress:Double = 0.0
+
+    fileprivate weak var displayLink: CADisplayLink?
+    fileprivate var destinationProgress: Double = 0.0
+
+    @IBInspectable open var progress: Double = 0.000001 {
+        didSet {
+            internalProgress = progress
+            setNeedsDisplay()
+        }
+    }
+
+    @IBInspectable open var refreshRate: Double = 0.0 {
+        didSet { setNeedsDisplay() }
+    }
+
+    @IBInspectable open var roundedCap: Bool = false {
+        didSet { setNeedsDisplay() }
+    }
+    @IBInspectable open var clockwise: Bool = true {
+        didSet { setNeedsDisplay() }
+    }
+
+    @IBInspectable open var trackWidth: CGFloat = 10 {
+        didSet { setNeedsDisplay() }
+    }
+
+    @IBInspectable open var trackImage: UIImage? {
+        didSet { setNeedsDisplay() }
+    }
+
+    @IBInspectable open var trackBackgroundColor: UIColor = UIColor.gray {
+        didSet { setNeedsDisplay() }
+    }
+
+    @IBInspectable open var trackFillColor: UIColor = UIColor.blue {
+        didSet { setNeedsDisplay() }
+    }
+
+    @IBInspectable open var trackBorderColor:UIColor = UIColor.clear {
+        didSet { setNeedsDisplay() }
+    }
+
+    @IBInspectable open var trackBorderWidth: CGFloat = 0 {
+        didSet { setNeedsDisplay() }
+    }
+
+    @IBInspectable open var centerFillColor: UIColor = UIColor.white {
+        didSet { setNeedsDisplay() }
+    }
+
+    @IBInspectable open var centerImage: UIImage? {
+        didSet { setNeedsDisplay() }
+    }
+
+    @IBInspectable open var contentView: UIView {
+        return self.constants.contentView
+    }
+
+    required override public init(frame: CGRect) {
+        super.init(frame: frame)
+        internalInit()
+        self.addSubview(contentView)
+    }
+
+    required public init?(coder aDecoder: NSCoder) {
+        super.init(coder: aDecoder)
+        internalInit()
+        self.addSubview(contentView)
+    }
+
+    @objc func internalInit() {
+        let displayLink = CADisplayLink(target: self, selector: #selector(CircleProgressView.displayLinkTick))
+        displayLink.add(to: RunLoop.main, forMode: RunLoop.Mode.default)
+        displayLink.isPaused = true
+        self.displayLink = displayLink
+    }
+
+    override open func draw(_ rect: CGRect) {
+
+        super.draw(rect)
+
+        let innerRect = rect.insetBy(dx: trackBorderWidth, dy: trackBorderWidth)
+
+        internalProgress = (internalProgress/1.0) == 0.0 ? constants.minimumValue : progress
+        internalProgress = (internalProgress/1.0) == 1.0 ? constants.maximumValue : internalProgress
+        internalProgress = clockwise ?
+                                (-constants.twoSeventyDegrees + ((1.0 - internalProgress) * constants.circleDegress)) :
+                                (constants.ninetyDegrees - ((1.0 - internalProgress) * constants.circleDegress))
+
+        let context = UIGraphicsGetCurrentContext()
+
+        // background Drawing
+        let circlePath = UIBezierPath(ovalIn: CGRect(x: innerRect.minX, y: innerRect.minY, width: innerRect.width, height: innerRect.height))
+        if trackBackgroundColor != UIColor.clear {
+            trackBackgroundColor.setFill()
+            circlePath.fill();
+        }
+        if trackBorderWidth > 0 {
+            circlePath.lineWidth = trackBorderWidth
+            trackBorderColor.setStroke()
+            circlePath.stroke()
+        }
+
+        // progress Drawing
+        let progressPath = UIBezierPath()
+        let progressRect: CGRect = CGRect(x: innerRect.minX, y: innerRect.minY, width: innerRect.width, height: innerRect.height)
+        let center = CGPoint(x: progressRect.midX, y: progressRect.midY)
+        let radius = progressRect.width / 2.0
+
+        let startAngle:CGFloat = clockwise ? CGFloat(-internalProgress * Double.pi / 180.0) : CGFloat(constants.twoSeventyDegrees * Double.pi / 180)
+        let endAngle:CGFloat = clockwise ? CGFloat(constants.twoSeventyDegrees * Double.pi / 180) : CGFloat(-internalProgress * Double.pi / 180.0)
+      
+        progressPath.addArc(withCenter: center, radius:radius, startAngle:startAngle, endAngle:endAngle, clockwise:!clockwise)
+        let r = radius - trackWidth * 0.5
+        if roundedCap {
+            let capCenter = CGPoint(x: center.x + r * cos(endAngle), y: center.y + r * sin(endAngle))
+        
+            progressPath.addArc(withCenter: capCenter, radius: trackWidth * 0.5, startAngle: endAngle, endAngle: endAngle + CGFloat(Double.pi), clockwise: !clockwise)
+        }
+        progressPath.addArc(withCenter: center, radius:radius-trackWidth, startAngle:endAngle, endAngle:startAngle, clockwise:clockwise)
+        
+        if roundedCap {
+        let capCenter = CGPoint(x: center.x + r * cos(startAngle), y: center.y + r * sin(startAngle))
+        
+            progressPath.addArc(withCenter: capCenter, radius: trackWidth * 0.5, startAngle: startAngle, endAngle: startAngle + CGFloat(Double.pi), clockwise: clockwise)
+        }
+        progressPath.close()
+        
+        context?.saveGState()
+
+        progressPath.addClip()
+
+        if let trackImage = trackImage {
+            trackImage.draw(in: innerRect)
+        } else if trackFillColor != UIColor.clear {
+            trackFillColor.setFill()
+            circlePath.fill()
+        }
+
+        context?.restoreGState()
+
+        // center Drawing
+        let centerPath = UIBezierPath(ovalIn: CGRect(x: innerRect.minX + trackWidth, y: innerRect.minY + trackWidth, width: innerRect.width - (2 * trackWidth), height: innerRect.height - (2 * trackWidth)))
+
+        if centerFillColor != UIColor.clear {
+            centerFillColor.setFill()
+            centerPath.fill()
+        }
+
+        if let centerImage = centerImage {
+            context?.saveGState()
+            centerPath.addClip()
+            centerImage.draw(in: rect)
+            context?.restoreGState()
+        } else {
+            let layer = CAShapeLayer()
+            layer.path = centerPath.cgPath
+            contentView.layer.mask = layer
+        }
+    }
+
+    //MARK: - Progress Update
+
+    @objc open func setProgress(_ newProgress: Double, animated: Bool) {
+
+        if animated {
+            destinationProgress = newProgress
+            displayLink?.isPaused = false
+        } else {
+            progress = newProgress
+            displayLink?.isPaused = true
+        }
+    }
+
+    //MARK: - CADisplayLink Tick
+
+    @objc internal func displayLinkTick() {
+
+        let renderTime = refreshRate.isZero ? displayLink!.duration : refreshRate
+
+        if destinationProgress > progress {
+            progress += renderTime
+            if progress >= destinationProgress {
+                progress = destinationProgress
+            }
+        }
+        else if destinationProgress < progress {
+            progress -= renderTime
+            if progress <= destinationProgress {
+                progress = destinationProgress
+            }
+        } else {
+            displayLink?.isPaused = true
+        }
+    }
+
+
+}
index e890734..71bc38e 100644 (file)
@@ -92,7 +92,8 @@ import MJRefresh
         }
      func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
          let model = vm.list[indexPath.row]
-         App.shared.goToPage(AudioPlayerVC(model: model))
+         App.shared.goToPage(AudioPlayerVC(model: model,tagName: vm.category.name))
+         AudioPlayView.shared.hiden()
      }
 }
 
index d3c6722..53105f1 100644 (file)
@@ -3,6 +3,7 @@ import Foundation
 import JXSegmentedView
 
 class SleepVC: BaseVC {
+    
 //    private var titles = ["专注","旋律","自然","都市","冥想"]
     private let segmentedDataSource = JXSegmentedTitleDataSource()
     private let segmentedView = JXSegmentedView()
@@ -15,6 +16,8 @@ class SleepVC: BaseVC {
     override func viewDidLoad() {
         super.viewDidLoad()
 
+//        AudioPlayView.shared.show()
+        self.view.addSubview(AudioPlayView.shared)
     }
 
     override func setupLayout(){
index cd53588..febaa5c 100644 (file)
@@ -92,6 +92,7 @@ class PopPlayView: BasePresentView2 {
             v.addTarget(self, action: #selector(closeAction), for: .touchUpInside)
         }
         
+        AudioPlayerManager.shared.musicModel = nil
         AudioPlayerManager.shared.progressCallback = {[weak self] current,duration in
             guard let self = self else {return}
             slider.maximumValue = duration