From 73820550536971f96cf3a4da064f3b909f40cd3f Mon Sep 17 00:00:00 2001 From: gzerad Date: Tue, 13 Aug 2024 12:35:21 +0300 Subject: [PATCH] 1.16.0 Release --- .../HMSSDKExample.xcodeproj/project.pbxproj | 96 +++++++++---------- .../Meeting/MeetingViewModel.swift | 12 +-- .../Peers List/PeersListViewController.swift | 4 +- .../Meeting/VideoCollectionViewCell.swift | 4 + Example/Podfile | 2 +- Example/Podfile.lock | 8 +- HMSSDK.podspec | 6 +- Package.swift | 4 +- 8 files changed, 70 insertions(+), 66 deletions(-) diff --git a/Example/HMSSDKExample.xcodeproj/project.pbxproj b/Example/HMSSDKExample.xcodeproj/project.pbxproj index 04e11b8..3e5ac52 100644 --- a/Example/HMSSDKExample.xcodeproj/project.pbxproj +++ b/Example/HMSSDKExample.xcodeproj/project.pbxproj @@ -10,6 +10,7 @@ 0080302A0344ACA1B313FE8B /* PaginatedPeersListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19120322504BEE80A7587873 /* PaginatedPeersListViewController.swift */; }; 00A387ADACCB096A23E0DA92 /* Chat.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = B2895437663D375598A96BF3 /* Chat.storyboard */; }; 017E7029C76F22885200CE2F /* PollVoteQuestionViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1CAE5C9D6C1E0F47950ABB68 /* PollVoteQuestionViewModel.swift */; }; + 01DE0F23D1E80E9ED0A19838 /* Pods_HMSSDKExample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B19EB51611F2FDB1E36644A5 /* Pods_HMSSDKExample.framework */; }; 03408B3E08E93BE41B71CB82 /* BrightnessStripView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 328D48EF7887F4D7281B6874 /* BrightnessStripView.swift */; }; 0D0B1DB21E90B8751520F093 /* PeersListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F85FF2F5F5FF73A2ECB4F521 /* PeersListViewController.swift */; }; 1850C1771556D52C164155B1 /* SwitchView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2615BBB7369533D3A66C87F9 /* SwitchView.swift */; }; @@ -31,6 +32,7 @@ 460020E78BCC4480E04FC85E /* PollVoteQuestionOptionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4C1AD0D89F94B1394449D22 /* PollVoteQuestionOptionView.swift */; }; 4613D4732438970BA7626145 /* PollListEntryView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C308F45700BBAB68E7002EB9 /* PollListEntryView.swift */; }; 463653C5C5439A2874218B7A /* HMSSDKInteractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C5DD8303D0F805B3838970 /* HMSSDKInteractor.swift */; }; + 479FCFDE1C7EB00A6E229FCA /* Pods_HMSScreenShare.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ABA1D8DD9758B4505BBDB242 /* Pods_HMSScreenShare.framework */; }; 51C10E23B65D21AC2223CD7B /* HLSStatsModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14758AB98C8E9AFC61C28016 /* HLSStatsModel.swift */; }; 52C2668F8B337660F9C6B4D5 /* HMSScreenShare.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 68362B1438D2D0FBB17CAB2E /* HMSScreenShare.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; 532EC6C6063350C5AD4F545D /* SampleHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7971D687E57192C259F2CC3 /* SampleHandler.swift */; }; @@ -74,7 +76,6 @@ B12004B282B02844BD287F6A /* ChatTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 839C01F696AC9DBDEFBF7F45 /* ChatTableViewCell.swift */; }; B12D65205E7A03E5AAC14138 /* PeerMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36580BA45140D5EFF239FBFD /* PeerMetadata.swift */; }; B4575C3964D9BD2623C41808 /* Inter-Light.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 19671F9169CD55394BAE9669 /* Inter-Light.ttf */; }; - B4E600071242FD7CE77FD7B0 /* Pods_HMSScreenShare.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6588F263A6215B6A45C0EA3C /* Pods_HMSScreenShare.framework */; }; B66E9C6867A86B74266E65CC /* Inter-ExtraLight.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 4E2AA5CDF545042D0378FED9 /* Inter-ExtraLight.ttf */; }; B7BD3FD68510A1BE31207989 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = D438E8CB4B2FCCD81A3E3AD5 /* AppDelegate.swift */; }; BB1B1A7AA6256FD71A442B09 /* ImagePreviewView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2A110E367BBA705B4747A9A /* ImagePreviewView.swift */; }; @@ -100,7 +101,6 @@ F4ABB8802D98D215DD79A389 /* PollCreateViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4779EBAF99E41D81F27DDBDA /* PollCreateViewModel.swift */; }; F8210AF231FA49FBF5B31BD9 /* Inter-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 201EA813A788F21342791104 /* Inter-Regular.ttf */; }; FE03E03EEF5A4F6528A5F54C /* Inter-ExtraBold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = A9F3569B4464FEB16C5D0514 /* Inter-ExtraBold.ttf */; }; - FE423DF858F6A24E4DE53482 /* Pods_HMSSDKExample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 39D8954A55439B917ED44FFE /* Pods_HMSSDKExample.framework */; }; FF18AB5EB7F972F3178CA05C /* VideoCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 873A8FA53E6F174ACC7390D6 /* VideoCollectionViewCell.swift */; }; FFF6AB2E59E1B274E1853695 /* PollVoteQuestionOptionViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 719F2AF93F7C9FA7CF4F2987 /* PollVoteQuestionOptionViewModel.swift */; }; /* End PBXBuildFile section */ @@ -147,16 +147,18 @@ 17A56661D43E37A0A7389D0B /* PollVoteView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollVoteView.swift; sourceTree = ""; }; 19120322504BEE80A7587873 /* PaginatedPeersListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaginatedPeersListViewController.swift; sourceTree = ""; }; 19671F9169CD55394BAE9669 /* Inter-Light.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Inter-Light.ttf"; sourceTree = ""; }; + 1C6DD642298B78ED1729405A /* Pods-HMSSDKExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-HMSSDKExample.release.xcconfig"; path = "Target Support Files/Pods-HMSSDKExample/Pods-HMSSDKExample.release.xcconfig"; sourceTree = ""; }; 1CAE5C9D6C1E0F47950ABB68 /* PollVoteQuestionViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollVoteQuestionViewModel.swift; sourceTree = ""; }; 1D42061C985CBCC1E0756625 /* HMSScreenShareRelease.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = HMSScreenShareRelease.entitlements; sourceTree = ""; }; - 1D5D30E100668D7AB1E7BC12 /* Pods-HMSScreenShare.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-HMSScreenShare.debug.xcconfig"; path = "Target Support Files/Pods-HMSScreenShare/Pods-HMSScreenShare.debug.xcconfig"; sourceTree = ""; }; 1F311ABA4605FE1F8FAE81DF /* PreviewViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PreviewViewController.swift; sourceTree = ""; }; 201EA813A788F21342791104 /* Inter-Regular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Inter-Regular.ttf"; sourceTree = ""; }; 22FEB13F1D44F9D6D34449B7 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Meeting.strings; sourceTree = ""; }; 2615BBB7369533D3A66C87F9 /* SwitchView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwitchView.swift; sourceTree = ""; }; 26AD73F48304A6A7739E1A20 /* PollStyles.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollStyles.swift; sourceTree = ""; }; + 273CAB53BF05C68C6B83CBE3 /* Pods-HMSScreenShare.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-HMSScreenShare.release.xcconfig"; path = "Target Support Files/Pods-HMSScreenShare/Pods-HMSScreenShare.release.xcconfig"; sourceTree = ""; }; 2764D42259AE2CA3CC0B3532 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Meeting.storyboard; sourceTree = ""; }; 296FDED0F994AC38C7CB73B8 /* PiPController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PiPController.swift; sourceTree = ""; }; + 29BB2C8B7E19D00710AB56C0 /* Pods-HMSSDKExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-HMSSDKExample.debug.xcconfig"; path = "Target Support Files/Pods-HMSSDKExample/Pods-HMSSDKExample.debug.xcconfig"; sourceTree = ""; }; 2E7492DEB508577745B2CA6B /* PollQuestionsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollQuestionsView.swift; sourceTree = ""; }; 318F2B9147A54123040112A3 /* HLSStreamViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HLSStreamViewController.swift; sourceTree = ""; }; 328D48EF7887F4D7281B6874 /* BrightnessStripView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BrightnessStripView.swift; sourceTree = ""; }; @@ -164,8 +166,6 @@ 36F8F1B4B0A42EC599FB217B /* PickerControlView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PickerControlView.swift; sourceTree = ""; }; 37B67C05B64874439BEBA039 /* Utilities.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Utilities.swift; sourceTree = ""; }; 39370BD742B1814FC99AD307 /* Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Constants.swift; sourceTree = ""; }; - 39D8954A55439B917ED44FFE /* Pods_HMSSDKExample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_HMSSDKExample.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 3AD906F6756A41604ECFB580 /* Pods-HMSSDKExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-HMSSDKExample.debug.xcconfig"; path = "Target Support Files/Pods-HMSSDKExample/Pods-HMSSDKExample.debug.xcconfig"; sourceTree = ""; }; 3B299FC9D64B61727ED64DE5 /* PickerField.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PickerField.swift; sourceTree = ""; }; 3B498A9276B63C433E7CD712 /* FirebaseInteractor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FirebaseInteractor.swift; sourceTree = ""; }; 4264DF62FE37D026AA32F6A5 /* HLSStatsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HLSStatsView.swift; sourceTree = ""; }; @@ -179,7 +179,6 @@ 5A7660ACCD4FF514FF8DE16C /* TicTacToeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TicTacToeView.swift; sourceTree = ""; }; 5D923E8C23C2674367621BBE /* PollSummaryViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollSummaryViewModel.swift; sourceTree = ""; }; 5DEE66AA5E315C02F0B64CA4 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; - 6588F263A6215B6A45C0EA3C /* Pods_HMSScreenShare.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_HMSScreenShare.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 666ECFED105EB311F5B51F88 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 67CC65B5B5011E4F2B0C3E21 /* HueStripView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HueStripView.swift; sourceTree = ""; }; 68362B1438D2D0FBB17CAB2E /* HMSScreenShare.appex */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = "wrapper.app-extension"; path = HMSScreenShare.appex; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -189,7 +188,7 @@ 721F0E8E0A96A7C8AE53BB0D /* PollTypeButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollTypeButton.swift; sourceTree = ""; }; 73D3BE80BEB8EB0BB860F1FD /* HMSSDKExample.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = HMSSDKExample.app; sourceTree = BUILT_PRODUCTS_DIR; }; 740540A1B0F0EFA1A6326AAC /* Inter-SemiBold.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Inter-SemiBold.ttf"; sourceTree = ""; }; - 75C7838ED3AEE492DD066926 /* Pods-HMSSDKExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-HMSSDKExample.release.xcconfig"; path = "Target Support Files/Pods-HMSSDKExample/Pods-HMSSDKExample.release.xcconfig"; sourceTree = ""; }; + 78717BD09C2F7C57779F5321 /* Pods-HMSScreenShare.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-HMSScreenShare.debug.xcconfig"; path = "Target Support Files/Pods-HMSScreenShare/Pods-HMSScreenShare.debug.xcconfig"; sourceTree = ""; }; 78E3BEFBBBA8DA793EE450D1 /* RolePreviewViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RolePreviewViewController.swift; sourceTree = ""; }; 79A705E0C88AD22596918644 /* MeetingViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MeetingViewController.swift; sourceTree = ""; }; 7AC71C13D74EB16560B21CD1 /* PollTextField.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollTextField.swift; sourceTree = ""; }; @@ -221,6 +220,8 @@ A6648C829F23C02F859C5FCE /* Inter-Black.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Inter-Black.ttf"; sourceTree = ""; }; A828399BE66D9DF332EC3F57 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Login.storyboard; sourceTree = ""; }; A9F3569B4464FEB16C5D0514 /* Inter-ExtraBold.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Inter-ExtraBold.ttf"; sourceTree = ""; }; + ABA1D8DD9758B4505BBDB242 /* Pods_HMSScreenShare.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_HMSScreenShare.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + B19EB51611F2FDB1E36644A5 /* Pods_HMSSDKExample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_HMSSDKExample.framework; sourceTree = BUILT_PRODUCTS_DIR; }; B2A110E367BBA705B4747A9A /* ImagePreviewView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImagePreviewView.swift; sourceTree = ""; }; B31DD660889F54117D22B96D /* PollVoteViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollVoteViewModel.swift; sourceTree = ""; }; B3A664C02BE7AB2B547F0345 /* HMSSDKExample.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = HMSSDKExample.entitlements; sourceTree = ""; }; @@ -230,7 +231,6 @@ C308F45700BBAB68E7002EB9 /* PollListEntryView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollListEntryView.swift; sourceTree = ""; }; C684ACD48EE1935CDA9CB9E6 /* PreJoinPreviewViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PreJoinPreviewViewController.swift; sourceTree = ""; }; C8C5DD8303D0F805B3838970 /* HMSSDKInteractor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HMSSDKInteractor.swift; sourceTree = ""; }; - C97762D7EC9BB3E28E3283F4 /* Pods-HMSScreenShare.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-HMSScreenShare.release.xcconfig"; path = "Target Support Files/Pods-HMSScreenShare/Pods-HMSScreenShare.release.xcconfig"; sourceTree = ""; }; CA85DE019C47AEC0A4692ACF /* QuizVoteQuestionOptionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QuizVoteQuestionOptionView.swift; sourceTree = ""; }; D438E8CB4B2FCCD81A3E3AD5 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; D74BA381B76C751C3584475F /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/LaunchScreen.strings; sourceTree = ""; }; @@ -256,28 +256,28 @@ /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 7C05F0E026AC5542CB811D99 /* Frameworks */ = { + 3DE6B8EE0BB5BE5759821508 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 92EC1B7EF75B1E0DDF6C1B1D /* ReplayKit.framework in Frameworks */, - B4E600071242FD7CE77FD7B0 /* Pods_HMSScreenShare.framework in Frameworks */, + 01DE0F23D1E80E9ED0A19838 /* Pods_HMSSDKExample.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 8FE08F8B31242B1F52371A4A /* Frameworks */ = { + 7C05F0E026AC5542CB811D99 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 951F4CA0EE947298F01A5C01 /* ReplayKit.framework in Frameworks */, + 92EC1B7EF75B1E0DDF6C1B1D /* ReplayKit.framework in Frameworks */, + 479FCFDE1C7EB00A6E229FCA /* Pods_HMSScreenShare.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - B14BBDA9D88DA786E4659204 /* Frameworks */ = { + 8FE08F8B31242B1F52371A4A /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - FE423DF858F6A24E4DE53482 /* Pods_HMSSDKExample.framework in Frameworks */, + 951F4CA0EE947298F01A5C01 /* ReplayKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -288,8 +288,8 @@ isa = PBXGroup; children = ( D86D7C783AA51C039047367E /* ReplayKit.framework */, - 39D8954A55439B917ED44FFE /* Pods_HMSSDKExample.framework */, - 6588F263A6215B6A45C0EA3C /* Pods_HMSScreenShare.framework */, + B19EB51611F2FDB1E36644A5 /* Pods_HMSSDKExample.framework */, + ABA1D8DD9758B4505BBDB242 /* Pods_HMSScreenShare.framework */, ); name = Frameworks; sourceTree = ""; @@ -375,13 +375,13 @@ path = Fonts; sourceTree = ""; }; - 394FE49151EDA2DB0CFF9383 /* Pods */ = { + 26A75A303E31B9DA8E93E840 /* Pods */ = { isa = PBXGroup; children = ( - 3AD906F6756A41604ECFB580 /* Pods-HMSSDKExample.debug.xcconfig */, - 75C7838ED3AEE492DD066926 /* Pods-HMSSDKExample.release.xcconfig */, - 1D5D30E100668D7AB1E7BC12 /* Pods-HMSScreenShare.debug.xcconfig */, - C97762D7EC9BB3E28E3283F4 /* Pods-HMSScreenShare.release.xcconfig */, + 29BB2C8B7E19D00710AB56C0 /* Pods-HMSSDKExample.debug.xcconfig */, + 1C6DD642298B78ED1729405A /* Pods-HMSSDKExample.release.xcconfig */, + 78717BD09C2F7C57779F5321 /* Pods-HMSScreenShare.debug.xcconfig */, + 273CAB53BF05C68C6B83CBE3 /* Pods-HMSScreenShare.release.xcconfig */, ); name = Pods; path = Pods; @@ -395,7 +395,7 @@ 8C56EB81A3D94A56DE07829F /* HMSSDKExample */, 04B636A8F527D724395CEA56 /* Frameworks */, 92574F9EBE52FFB9B7440823 /* Products */, - 394FE49151EDA2DB0CFF9383 /* Pods */, + 26A75A303E31B9DA8E93E840 /* Pods */, ); sourceTree = ""; }; @@ -631,12 +631,12 @@ isa = PBXNativeTarget; buildConfigurationList = 50E5BCF9AC71D999A04D6C82 /* Build configuration list for PBXNativeTarget "HMSSDKExample" */; buildPhases = ( - 6EEFBB610F399B2856A82A5D /* [CP] Check Pods Manifest.lock */, + 9C4B394011DC81ED08C76138 /* [CP] Check Pods Manifest.lock */, E718EE2B864DF36B9EC96F17 /* Sources */, 494D8C70E3A113C51CEB1739 /* Resources */, BB5C006D13AE609E91D7310A /* Embed App Extensions */, - B14BBDA9D88DA786E4659204 /* Frameworks */, - 5FA8D9B3C54FC322896FE8BA /* [CP] Embed Pods Frameworks */, + 3DE6B8EE0BB5BE5759821508 /* Frameworks */, + 75F66BB629AA1B22317F287C /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -653,7 +653,7 @@ isa = PBXNativeTarget; buildConfigurationList = FD5AF66CF5C0A042F211BCD3 /* Build configuration list for PBXNativeTarget "HMSScreenShare" */; buildPhases = ( - DCED96CEF106E30B0B85215A /* [CP] Check Pods Manifest.lock */, + 4B4CC83CFB2EBDDBC9A6DC05 /* [CP] Check Pods Manifest.lock */, AB611BE5E6C1A7BF4C7C1541 /* Sources */, 7C05F0E026AC5542CB811D99 /* Frameworks */, ); @@ -736,46 +736,46 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 5FA8D9B3C54FC322896FE8BA /* [CP] Embed Pods Frameworks */ = { + 4B4CC83CFB2EBDDBC9A6DC05 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-HMSSDKExample/Pods-HMSSDKExample-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); - name = "[CP] Embed Pods Frameworks"; + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-HMSSDKExample/Pods-HMSSDKExample-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-HMSScreenShare-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-HMSSDKExample/Pods-HMSSDKExample-frameworks.sh\"\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 6EEFBB610F399B2856A82A5D /* [CP] Check Pods Manifest.lock */ = { + 75F66BB629AA1B22317F287C /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-HMSSDKExample/Pods-HMSSDKExample-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; + name = "[CP] Embed Pods Frameworks"; outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-HMSSDKExample-checkManifestLockResult.txt", + "${PODS_ROOT}/Target Support Files/Pods-HMSSDKExample/Pods-HMSSDKExample-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-HMSSDKExample/Pods-HMSSDKExample-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; - DCED96CEF106E30B0B85215A /* [CP] Check Pods Manifest.lock */ = { + 9C4B394011DC81ED08C76138 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -790,7 +790,7 @@ outputFileListPaths = ( ); outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-HMSScreenShare-checkManifestLockResult.txt", + "$(DERIVED_FILE_DIR)/Pods-HMSSDKExample-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -1050,7 +1050,7 @@ }; 66917588E8CA557C465B6556 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = C97762D7EC9BB3E28E3283F4 /* Pods-HMSScreenShare.release.xcconfig */; + baseConfigurationReference = 273CAB53BF05C68C6B83CBE3 /* Pods-HMSScreenShare.release.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = HMSScreenShare/HMSScreenShareRelease.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; @@ -1080,7 +1080,7 @@ }; 72FB4D48FB66190D7924E386 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 75C7838ED3AEE492DD066926 /* Pods-HMSSDKExample.release.xcconfig */; + baseConfigurationReference = 1C6DD642298B78ED1729405A /* Pods-HMSSDKExample.release.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = HMSSDKExample/SupportingFiles/HMSSDKExample.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; @@ -1103,7 +1103,7 @@ }; 81C3032F613CEB15C57B094A /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 1D5D30E100668D7AB1E7BC12 /* Pods-HMSScreenShare.debug.xcconfig */; + baseConfigurationReference = 78717BD09C2F7C57779F5321 /* Pods-HMSScreenShare.debug.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = HMSScreenShare/HMSScreenShareRelease.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; @@ -1133,7 +1133,7 @@ }; 832411D19918B12AD465AED8 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 3AD906F6756A41604ECFB580 /* Pods-HMSSDKExample.debug.xcconfig */; + baseConfigurationReference = 29BB2C8B7E19D00710AB56C0 /* Pods-HMSSDKExample.debug.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = HMSSDKExample/SupportingFiles/HMSSDKExample.entitlements; CODE_SIGN_IDENTITY = "iPhone Developer"; diff --git a/Example/HMSSDKExample/Meeting/MeetingViewModel.swift b/Example/HMSSDKExample/Meeting/MeetingViewModel.swift index 136defe..35f15c3 100644 --- a/Example/HMSSDKExample/Meeting/MeetingViewModel.swift +++ b/Example/HMSSDKExample/Meeting/MeetingViewModel.swift @@ -534,9 +534,9 @@ final class MeetingViewModel: NSObject, if !localVideoTrack.isMute() { - actions?.append(UIAction(title: "Toggle Torch", image: UIImage(systemName: "flashlight.on.fill")) { _ in + actions?.append(UIAction(title: "Toggle Torch", image: UIImage(systemName: "flashlight.on.fill")) { [weak localVideoTrack] _ in - localVideoTrack.modifyCaptureDevice({ device in + localVideoTrack?.modifyCaptureDevice({ device in guard let device = device else { return } guard device.isTorchModeSupported(.on) else { self.delegate?.presentAlert(with: "Not supported", message: "Torch is not supported on this camera") @@ -546,17 +546,17 @@ final class MeetingViewModel: NSObject, }) }) - actions?.append(UIAction(title: "Zoom camera in/out", image: UIImage(systemName: "plus.magnifyingglass")) { _ in + actions?.append(UIAction(title: "Zoom camera in/out", image: UIImage(systemName: "plus.magnifyingglass")) { [weak localVideoTrack] _ in - localVideoTrack.modifyCaptureDevice({ device in + localVideoTrack?.modifyCaptureDevice({ device in guard let device = device else { return } device.videoZoomFactor = device.videoZoomFactor == 1.0 ? 2.0 : 1.0 }) }) - actions?.append(UIAction(title: "Take photo", image: UIImage(systemName: "camera.fill")) { _ in + actions?.append(UIAction(title: "Take photo", image: UIImage(systemName: "camera.fill")) { [weak localVideoTrack] _ in - localVideoTrack.captureImageAtMaxSupportedResolution(withFlash: false, completion: { image in + localVideoTrack?.captureImageAtMaxSupportedResolution(withFlash: false, completion: { image in if let image = image { self.delegate?.presentSheet(with: image) } diff --git a/Example/HMSSDKExample/Meeting/Peers List/PeersListViewController.swift b/Example/HMSSDKExample/Meeting/Peers List/PeersListViewController.swift index fdcda0b..bb289ad 100644 --- a/Example/HMSSDKExample/Meeting/Peers List/PeersListViewController.swift +++ b/Example/HMSSDKExample/Meeting/Peers List/PeersListViewController.swift @@ -73,14 +73,14 @@ final class PeersListViewController: UIViewController { func makeDataSource() -> DataSource? { - let dataSource = DataSource(tableView: table) { (table, indexPath, peer) -> UITableViewCell? in + let dataSource = DataSource(tableView: table) { [weak self] (table, indexPath, peer) -> UITableViewCell? in guard let cell = table.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as? PeersListTableViewCell else { return nil } - self.update(cell, for: peer) + self?.update(cell, for: peer) return cell } diff --git a/Example/HMSSDKExample/Meeting/VideoCollectionViewCell.swift b/Example/HMSSDKExample/Meeting/VideoCollectionViewCell.swift index 9088e88..86bac9a 100644 --- a/Example/HMSSDKExample/Meeting/VideoCollectionViewCell.swift +++ b/Example/HMSSDKExample/Meeting/VideoCollectionViewCell.swift @@ -255,6 +255,8 @@ final class VideoCollectionViewCell: UICollectionViewCell { if let localAudioStats = stats as? HMSLocalAudioStats { components += ["Bitrate (Audio) \(String(format: "%.1f Kb/s", localAudioStats.bitrate))"] + components += ["Packets Lost (Audio) \(localAudioStats.packetsLost)"] + components += ["Jitter (Audio) \(localAudioStats.jitter)"] } else if let localVideoStats = stats as? [HMSLocalVideoStats] { for layerStats in localVideoStats { if let layerId = layerStats.simulcastLayerId?.uintValue, let layerType = HMSSimulcastLayer(rawValue: layerId), let layerName = layerNameMap[layerType] { @@ -278,6 +280,8 @@ final class VideoCollectionViewCell: UICollectionViewCell { let activeMark = qualityLimitations.reason == .other ? "> " : "" components += ["\(activeMark)Limited by other \(String(format: "%.1f", qualityLimitations.other))"] } + components += ["Packets Lost \(layerStats.packetsLost)"] + components += ["Jitter \(layerStats.jitter)"] components += [" "] } } else if let remoteAudioStats = stats as? HMSRemoteAudioStats { diff --git a/Example/Podfile b/Example/Podfile index 9f50154..851ca4f 100644 --- a/Example/Podfile +++ b/Example/Podfile @@ -4,7 +4,7 @@ platform :ios, '13.0' target 'HMSSDKExample' do use_frameworks! - pod 'HMSSDK', '1.15.0' + pod 'HMSSDK', '1.16.0' pod 'HMSHLSPlayerSDK', '0.0.2' pod 'HMSNoiseCancellationModels', '1.0.0' pod 'SwiftyBeaver', '1.9.5' diff --git a/Example/Podfile.lock b/Example/Podfile.lock index 1512af3..ad89e73 100644 --- a/Example/Podfile.lock +++ b/Example/Podfile.lock @@ -5,7 +5,7 @@ PODS: - HMSHLSPlayerSDK (0.0.2): - HMSAnalyticsSDK (= 0.0.2) - HMSNoiseCancellationModels (1.0.0) - - HMSSDK (1.14.1): + - HMSSDK (1.15.0): - HMSAnalyticsSDK (= 0.0.2) - HMSWebRTC (= 1.0.6170) - HMSWebRTC (1.0.6170) @@ -18,7 +18,7 @@ DEPENDENCIES: - HMSBroadcastExtensionSDK (= 1.0.0) - HMSHLSPlayerSDK (= 0.0.2) - HMSNoiseCancellationModels (= 1.0.0) - - HMSSDK (= 1.14.1) + - HMSSDK (= 1.15.0) - SwiftyBeaver (= 1.9.5) - SwiftyGif - Zip (= 2.1.2) @@ -42,12 +42,12 @@ SPEC CHECKSUMS: HMSBroadcastExtensionSDK: 0757d80497fddec3952858eb14892fb274f9f3c3 HMSHLSPlayerSDK: 6a54ad4d12f3dc2270d1ecd24019d71282a4f6a3 HMSNoiseCancellationModels: a3bda1405a16015632f4bcabd46ce48f35103b02 - HMSSDK: 389e692c315efd6abe1932e2dab4859ebb5cd60d + HMSSDK: fc3d2141c654e9fdca7f27c290c17b6b61b9dc92 HMSWebRTC: b5ffaf5d6133ae2a4c841beaf1e5e4fe06d0fb07 SwiftyBeaver: 84069991dd5dca07d7069100985badaca7f0ce82 SwiftyGif: 93a1cc87bf3a51916001cf8f3d63835fb64c819f Zip: b3fef584b147b6e582b2256a9815c897d60ddc67 -PODFILE CHECKSUM: 014e726e7c539bf2fd7b24d5543d7a4887ea7810 +PODFILE CHECKSUM: acefb94075347ba192f0679c56e35f4402bdba7b COCOAPODS: 1.15.2 diff --git a/HMSSDK.podspec b/HMSSDK.podspec index 9734557..354f48f 100644 --- a/HMSSDK.podspec +++ b/HMSSDK.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'HMSSDK' - s.version = '1.15.0' + s.version = '1.16.0' s.summary = 'HMS Videoconferencing iOS SDK' s.description = <<-DESC @@ -10,8 +10,8 @@ TODO: Add long description of the pod here. s.homepage = 'https://github.com/100mslive/100ms-ios-sdk/' s.license = { :type => 'MIT'} s.author = { 'Dmitry Fedoseyev' => 'dmitry@100ms.live', 'Yogesh Singh' => 'yogesh@100ms.live', 'Pawan Dixit' => 'pawan@100ms.live'} - s.source = { :http => 'https://github.com/100mslive/100ms-ios-sdk/releases/download/1.15.0/HMSSDK.xcframework.zip', - :sha256 => '73f15409b76dc2a7b677027ede12fb5711f6222931f690b2701c6d86e0b3092b' + s.source = { :http => 'https://github.com/100mslive/100ms-ios-sdk/releases/download/1.16.0/HMSSDK.xcframework.zip', + :sha256 => '50ff59448dc57d7611dec919b8e46196e091f9b4de70145c37882c6dd116f2a1' } s.ios.deployment_target = '12.0' s.vendored_frameworks = 'HMSSDK.xcframework' diff --git a/Package.swift b/Package.swift index a6c9fa1..5adf942 100644 --- a/Package.swift +++ b/Package.swift @@ -16,8 +16,8 @@ let package = Package( targets: [ .binaryTarget( name: "HMSSDK", - url: "https://github.com/100mslive/100ms-ios-sdk/releases/download/1.15.0/HMSSDK.xcframework.zip", - checksum: "73f15409b76dc2a7b677027ede12fb5711f6222931f690b2701c6d86e0b3092b" + url: "https://github.com/100mslive/100ms-ios-sdk/releases/download/1.16.0/HMSSDK.xcframework.zip", + checksum: "50ff59448dc57d7611dec919b8e46196e091f9b4de70145c37882c6dd116f2a1" ), .binaryTarget( name: "WebRTC",