jitsi_meet_wrapper icon indicating copy to clipboard operation
jitsi_meet_wrapper copied to clipboard

Embed Jitsi as a PlatformView

Open geiszla opened this issue 2 years ago • 8 comments

As the original Jitsi Flutter plugin doesn't support embedding it into a Flutter view, we created a fork that could do that (we needed to put our buttons on the call). We forked that from https://github.com/gunschu/jitsi_meet, but as that plugin is not maintained anymore, I wanted to suggest to merge that feature in this plugin instead (it would also be easier for us to maintain the project if it was included in this one). Would people be interested in doing this?

geiszla avatar Jun 02 '22 13:06 geiszla

Yeah, sounds interesting. Can you share the fork with us so that we can take a look?

saibotma avatar Jun 15 '22 14:06 saibotma

Sure it's at https://github.com/BindrUK/jitsi_meet/tree/platform-view (notice the branch name, it's on platform-view, not master yet).

It's a bit of a Frankenstein at the moment, because many issues with wrapping the native view we could only solve by using the native Java files from the Jitsi React Native repo (the iOS part is much simpler, it's just a wrap of JitsiMeetView instance in a FlutterPlatformView). We are in the process of cleaning it up (maybe directly reference the files from the React Native repo as a submodule, so we don't need to copy them, etc.), however, we are already using it in production and so far ~the only issues we experienced are sometimes in some cases Jitsi prematurely closes the connection. That, however, looks more related to https://github.com/jitsi/jitsi-meet/issues/11012 than an issue with the platform view (and theoretically should be fixed by updating the Jitsi SDK).~ This was a bug from our side independent of the native view and now fixed in our app.

There is also an issue with platform view on Flutter v3 (the video feeds are "coming out" of the view and overlap Flutter elements), however that is a known issue, which should be fixed by the Flutter team soon: https://github.com/flutter/flutter/issues/103630

Let me know if this makes sense and how to proceed.

geiszla avatar Jun 15 '22 16:06 geiszla

I will take a look asap.

saibotma avatar Jun 16 '22 04:06 saibotma

I will take a look asap.

Hi, did you get any chance to do this ?

Delphinium-projects avatar Jul 02 '22 15:07 Delphinium-projects

@geiszla Would you mind sharing some screenshots of an example app that shows the platform view in use?

saibotma avatar Jul 03 '22 08:07 saibotma

Sure, here's a recording. You can also try our app for free from the play store (https://play.google.com/store/apps/details?id=com.bindr.app)

https://user-images.githubusercontent.com/4456689/177109176-18b18db5-3e96-41e0-8dc3-6f448dbc2ac5.mp4

We are using it as a full-screen native view, but it can be changed to any size and used on any part of the page. We have some buttons on it, which also showcases how to overlay elements on it.

geiszla avatar Jul 04 '22 08:07 geiszla

I will take a look asap. have you finished it yet?

duc1205 avatar Jul 21 '22 04:07 duc1205

I am sorry, but I won't be able to take a look at this in the near future. Feel free to create a PR, though, because this is actually really awesome.

saibotma avatar Jan 02 '23 07:01 saibotma