Skip to content

Commit

Permalink
Fix: ISS-23563 Pip mode causing screen to freeze (#1453)
Browse files Browse the repository at this point in the history
# Description

- Fix: ISS-23563 Pip mode causing screen to freeze

### Pre-launch Checklist

- [x] The [Documentation] is updated accordingly, or this PR doesn't
require it.
- [x] I have updated the `ExampleAppChangelog.txt` file with relevant
changes.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making, or this PR is
test-exempt.
- [x] All existing and new tests are passing.

<!-- Links -->

[Documentation]: https://www.100ms.live/docs
  • Loading branch information
ygit authored Oct 25, 2024
1 parent fb799b4 commit f7c91d0
Show file tree
Hide file tree
Showing 10 changed files with 57 additions and 43 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,13 @@ class HMSManager(
) {
reactAppContext?.currentActivity?.window?.addFlags(WindowManager.LayoutParams.FLAG_SECURE)
emitPipEvent(true)
reactAppContext?.currentActivity?.enterPictureInPictureMode(pipParams)
val success = reactAppContext?.currentActivity?.enterPictureInPictureMode(pipParams)
success?.let {
if (!it) {
reactAppContext?.currentActivity?.window?.clearFlags(WindowManager.LayoutParams.FLAG_SECURE)
emitPipEvent(false)
}
}
}
}
}
Expand Down Expand Up @@ -1093,6 +1099,7 @@ class HMSManager(
activity.setPictureInPictureParams(pipParams)
return true
} catch (e: Exception) {
Log.e("HMSManager", "Error setting PictureInPictureParams: ${e.message}")
return false
}
}
Expand Down
2 changes: 1 addition & 1 deletion packages/react-native-hms/sdk-versions.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"ios": "1.16.4",
"ios": "1.16.5",
"iOSBroadcastExtension": "0.0.9",
"iOSHMSHLSPlayer": "0.0.2",
"iOSNoiseCancellationModels": "1.0.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,13 @@ https://app.devrev.ai/100ms/works/ISS-23560
- Remove Foreground Notification Service from Android app
https://app.devrev.ai/100ms/works/ISS-23562

- Fix: Screen freezing due to entering PIP mode
https://app.devrev.ai/100ms/works/ISS-23563

- Native Android crash fixes
https://app.devrev.ai/100ms/works/ISS-23550

Room Kit: 1.2.3
React Native SDK: 1.11.0
Android SDK: 2.9.68
iOS SDK: 1.16.4
iOS SDK: 1.16.5
26 changes: 15 additions & 11 deletions packages/react-native-room-kit/example/android/Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,20 @@ GEM
artifactory (3.0.17)
atomos (0.1.3)
aws-eventstream (1.3.0)
aws-partitions (1.991.0)
aws-sdk-core (3.209.1)
aws-partitions (1.994.0)
aws-sdk-core (3.211.0)
aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.651.0)
aws-partitions (~> 1, >= 1.992.0)
aws-sigv4 (~> 1.9)
jmespath (~> 1, >= 1.6.1)
aws-sdk-kms (1.94.0)
aws-sdk-core (~> 3, >= 3.207.0)
aws-sdk-kms (1.95.0)
aws-sdk-core (~> 3, >= 3.210.0)
aws-sigv4 (~> 1.5)
aws-sdk-s3 (1.168.0)
aws-sdk-core (~> 3, >= 3.207.0)
aws-sdk-s3 (1.169.0)
aws-sdk-core (~> 3, >= 3.210.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.5)
aws-sigv4 (1.10.0)
aws-sigv4 (1.10.1)
aws-eventstream (~> 1, >= 1.0.2)
babosa (1.0.4)
base64 (0.2.0)
Expand Down Expand Up @@ -68,7 +68,7 @@ GEM
faraday_middleware (1.2.1)
faraday (~> 1.0)
fastimage (2.3.1)
fastlane (2.224.0)
fastlane (2.225.0)
CFPropertyList (>= 2.3, < 4.0.0)
addressable (>= 2.8, < 3.0.0)
artifactory (~> 3.0)
Expand All @@ -84,6 +84,7 @@ GEM
faraday-cookie_jar (~> 0.0.6)
faraday_middleware (~> 1.0)
fastimage (>= 2.1.0, < 3.0.0)
fastlane-sirp (>= 1.0.0)
gh_inspector (>= 1.1.2, < 2.0.0)
google-apis-androidpublisher_v3 (~> 0.3)
google-apis-playcustomapp_v1 (~> 0.1)
Expand Down Expand Up @@ -112,6 +113,8 @@ GEM
fastlane-plugin-firebase_app_distribution (0.9.1)
google-apis-firebaseappdistribution_v1 (~> 0.3.0)
google-apis-firebaseappdistribution_v1alpha (~> 0.2.0)
fastlane-sirp (1.0.0)
sysrandom (~> 1.0)
gh_inspector (1.1.3)
google-apis-androidpublisher_v3 (0.54.0)
google-apis-core (>= 0.11.0, < 2.a)
Expand Down Expand Up @@ -158,7 +161,7 @@ GEM
domain_name (~> 0.5)
httpclient (2.8.3)
jmespath (1.6.2)
json (2.7.2)
json (2.7.3)
jwt (2.9.3)
base64
mini_magick (4.13.2)
Expand All @@ -178,7 +181,7 @@ GEM
trailblazer-option (>= 0.1.1, < 0.2.0)
uber (< 0.2.0)
retriable (3.1.2)
rexml (3.3.8)
rexml (3.3.9)
rouge (2.0.7)
ruby2_keywords (0.0.5)
rubyzip (2.3.2)
Expand All @@ -191,6 +194,7 @@ GEM
simctl (1.6.10)
CFPropertyList
naturally
sysrandom (1.0.5)
terminal-notifier (2.0.0)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,8 @@ android {
applicationId "live.hms.rn"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 538
versionName "2.4.88"
versionCode 539
versionName "2.4.89"
missingDimensionStrategy 'react-native-camera', 'general'
}

Expand Down
20 changes: 10 additions & 10 deletions packages/react-native-room-kit/example/ios/Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,20 @@ GEM
artifactory (3.0.17)
atomos (0.1.3)
aws-eventstream (1.3.0)
aws-partitions (1.991.0)
aws-sdk-core (3.209.1)
aws-partitions (1.994.0)
aws-sdk-core (3.211.0)
aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.651.0)
aws-partitions (~> 1, >= 1.992.0)
aws-sigv4 (~> 1.9)
jmespath (~> 1, >= 1.6.1)
aws-sdk-kms (1.94.0)
aws-sdk-core (~> 3, >= 3.207.0)
aws-sdk-kms (1.95.0)
aws-sdk-core (~> 3, >= 3.210.0)
aws-sigv4 (~> 1.5)
aws-sdk-s3 (1.168.0)
aws-sdk-core (~> 3, >= 3.207.0)
aws-sdk-s3 (1.169.0)
aws-sdk-core (~> 3, >= 3.210.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.5)
aws-sigv4 (1.10.0)
aws-sigv4 (1.10.1)
aws-eventstream (~> 1, >= 1.0.2)
babosa (1.0.4)
base64 (0.2.0)
Expand Down Expand Up @@ -159,7 +159,7 @@ GEM
domain_name (~> 0.5)
httpclient (2.8.3)
jmespath (1.6.2)
json (2.7.2)
json (2.7.3)
jwt (2.9.3)
base64
mini_magick (4.13.2)
Expand All @@ -179,7 +179,7 @@ GEM
trailblazer-option (>= 0.1.1, < 0.2.0)
uber (< 0.2.0)
retriable (3.1.2)
rexml (3.3.8)
rexml (3.3.9)
rouge (2.0.7)
ruby2_keywords (0.0.5)
rubyzip (2.3.2)
Expand Down
14 changes: 7 additions & 7 deletions packages/react-native-room-kit/example/ios/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -83,10 +83,10 @@ PODS:
- HMSHLSPlayerSDK (0.0.2):
- HMSAnalyticsSDK (= 0.0.2)
- HMSNoiseCancellationModels (1.0.0)
- HMSSDK (1.16.4):
- HMSSDK (1.16.5):
- HMSAnalyticsSDK (= 0.0.2)
- HMSWebRTC (= 1.0.6171)
- HMSWebRTC (1.0.6171)
- HMSWebRTC (= 1.0.6172)
- HMSWebRTC (1.0.6172)
- libevent (2.1.12)
- lottie-ios (4.4.1)
- lottie-react-native (6.7.2):
Expand Down Expand Up @@ -363,7 +363,7 @@ PODS:
- HMSBroadcastExtensionSDK (= 0.0.9)
- HMSHLSPlayerSDK (= 0.0.2)
- HMSNoiseCancellationModels (= 1.0.0)
- HMSSDK (= 1.16.4)
- HMSSDK (= 1.16.5)
- React-Core
- react-native-image-picker (7.1.2):
- RCT-Folly (= 2021.07.22.00)
Expand Down Expand Up @@ -755,8 +755,8 @@ SPEC CHECKSUMS:
HMSBroadcastExtensionSDK: d80fe325f6c928bd8e5176290b5a4b7ae15d6fbb
HMSHLSPlayerSDK: 6a54ad4d12f3dc2270d1ecd24019d71282a4f6a3
HMSNoiseCancellationModels: a3bda1405a16015632f4bcabd46ce48f35103b02
HMSSDK: 7413992215e2ebb562868f75fa48f7e1f7589ae8
HMSWebRTC: f6f4f02a665fda6d9d8a5b223272045c3d9486fb
HMSSDK: 7c7a94498f66051e6de6f1f9d07e9ffa07299d17
HMSWebRTC: 4d656cc5d19732ae667d6bc1f6f5511f196ef0eb
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
lottie-ios: e047b1d2e6239b787cc5e9755b988869cf190494
lottie-react-native: 17547b2f3c7034e2ae8672833fdb63262164d18a
Expand All @@ -779,7 +779,7 @@ SPEC CHECKSUMS:
React-logger: 70ddbe0e07179c8adb94c4bffc36c6abc952d3d4
react-native-blur: 69ecfe61d81b32ee7baae10f5d17aeb4e2594b10
react-native-camera: 3eae183c1d111103963f3dd913b65d01aef8110f
react-native-hms: ab970eb0734334ee8468a4c2e5a2466c8b92e3ce
react-native-hms: e5eb65e9c25f1256c3c6fa454a16e57214575919
react-native-image-picker: 51fdb07f7ef722988c8a219e1416153760a25e4d
react-native-lottie-splash-screen: 015423265bac5f46016dff2e31c97b9590808856
react-native-safe-area-context: 61c8c484a3a9e7d1fda19f7b1794b35bbfd2262a
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -496,7 +496,7 @@
CODE_SIGN_ENTITLEMENTS = RNExample/RNExample.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 538;
CURRENT_PROJECT_VERSION = 539;
DEVELOPMENT_TEAM = 5N85PP82A9;
ENABLE_BITCODE = NO;
INFOPLIST_FILE = RNExample/Info.plist;
Expand Down Expand Up @@ -534,7 +534,7 @@
CODE_SIGN_ENTITLEMENTS = RNExample/RNExample.entitlements;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 538;
CURRENT_PROJECT_VERSION = 539;
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 5N85PP82A9;
INFOPLIST_FILE = RNExample/Info.plist;
Expand Down Expand Up @@ -706,7 +706,7 @@
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_ENTITLEMENTS = RNExampleBroadcastUpload/RNExampleBroadcastUpload.entitlements;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 538;
CURRENT_PROJECT_VERSION = 539;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 5N85PP82A9;
GCC_C_LANGUAGE_STANDARD = gnu11;
Expand Down Expand Up @@ -748,7 +748,7 @@
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 538;
CURRENT_PROJECT_VERSION = 539;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 5N85PP82A9;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>2.4.88</string>
<string>2.4.89</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>538</string>
<string>539</string>
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
<key>LSRequiresIPhoneOS</key>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ export const RoomSettingsModalContent: React.FC<

const enterPipMode = async () => {
if (isPipModeUnavailable) {
return console.log('PIP mode unavailable on Deice!');
return console.log('PIP mode unavailable on Device!');
}

closeRoomSettingsModal();
Expand All @@ -124,9 +124,9 @@ export const RoomSettingsModalContent: React.FC<
videoButton: true,
audioButton: true,
});
if (isEnabled === true) {
dispatch(changePipModeStatus(PipModes.ACTIVE));
}
dispatch(
changePipModeStatus(isEnabled ? PipModes.ACTIVE : PipModes.INACTIVE),
);
} catch (error) {
console.log(error);
}
Expand Down

0 comments on commit f7c91d0

Please sign in to comment.