jitsi-meet
jitsi-meet copied to clipboard
[React native SDK] [iOS] - Cannot share screen after pressing share screen button
Description:
I'm currently using the Jitsi Meet React Native SDK on iOS, after pressing the screen sharing button in Jitsi function list, it will show an alert to tell the user it will record everything on your screen. Then, after pressing the share screen extension button, there is no sharing screen in meeting room, but the phone shows recording screen status. For other participant, nothing happens in meeting room.
For iOS, i have checked the following the official documentation (dev-guide-ios-sdk/#tldr) and set it for Screen Sharing integration.
Detailed steps to set screen sharing integration
- Open my own react native project in Xcode, select File > New > Target in menu bar.
- Create broadcast upload extension.
- Copy SampleUploader.swift, SocketConnection.swift, DarwinNotificationCenter.swift, and Atomic.swift files from jitsi-meet-sdk-samples to my upload extension's folder
- Add some key and value in app's info as below
<key>RTCScreenSharingExtension</key>
<string>org.reactjs.native.example.xxxxx.Broadcast-Extension</string>
<key>RTCAppGroupIdentifier</key>
<string>group.com.xxxxx.Broadcast-Extension</string>
<key>UIBackgroundModes</key>
<array>
<string>voip</string>
</array>
- Update appGroupIdentifier in SampleHandler.swift, and it is same as the value of the key RTCScreenSharingExtension in app's info.plist
private enum Constants {
// the App Group ID value that the app and the broadcast extension targets are setup with. It differs for each app.
static let appGroupIdentifier = "group.com.xxxxx.Broadcast-Extension"
}
- Set flags property to enabled
import { JitsiMeeting } from '@jitsi/react-native-sdk/index';
...
<JitsiMeeting
ref={jitsiMeeting}
style={styles.jitsiMeet}
eventListeners={eventListeners as any}
config={{
domain: `meet.jit.si/${conferenceUrl}`,
startWithVideoMuted: false,
prejoinConfig: {
enabled: false,
hideDisplayName: false,
hideExtraJoinButtons: ['no-audio', 'by-phone'],
hideRoomName: true,
},
startScreenSharing: true,
screenshotCapture: {
enabled: true,
},
}}
room={conferenceUrl}
flags={{
'ios.screensharing.enabled': true,
}}
/>
...
- Set app groups for both app and extension, it is also same as the value of the key RTCScreenSharingExtension in app's info.plist
Any steps did i miss?
Steps to reproduce:
- Launch the project by Xcode and run it on an physical phone.
- Join a meeting and click on the screen sharing button.
- Click on the screen sharing button.
- Click on the share screen extension button.
Actual behavior:
sharing screen process:
nothing on participant's meeting room:
Expected behavior:
The participant in meeting room should see the shared screen projected by iOS user.
Client information:
- Operating System: Apple M1 Pro (macOS 14.1.1)
- Physical phone: phone X
Additional information:
- "@jitsi/react-native-sdk": "1.0.2"
- "react-native": "0.72.3"
- "xcode version": "15.0.1"
I don't think we fully wired up the SDK side of things for the RN SDK.
Some work is needed in that area to make it work.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
I get same issue, and debugging it .
It doesn't work yet, the native parts are not wired in the rn sdk at the moment.
It doesn't work yet, the native parts are not wired in the rn sdk at the moment.
I guess I can spend some time to contribute it , could you help to give some clue?
Hi @saghul @dawei101 Thanks for paying attention to this issue. I was wondering if any update release would be scheduled?
Not yet, sorry.
When starting screen sharing in lib-jitsi-meet, an error is thrown Replacing a track of videoType=camera with a track of videoType=desktop is not supported in this mode. in JitsiConference.js
What is meant by mode? Why can't camera/desktop tracks be replaced? Any ideas how to get round this?
Please open a new issue, your problem has nothing to do with the originally reported one.
Hi @saghul @dawei101 If you have any further update for this issue, please feel free to let us know. We are still following up on this issue.
We have no update on screen-sharing on iOS. It's still not supported.
Still following this issue. Comment for keeping it active!
I saw there was new release for react-native-sdk, dose it solve this issue?
No, it doesn't.