Agora-Flutter-SDK
Agora-Flutter-SDK copied to clipboard
Various Video Call web bugs
Describe the bug
- Safari, iOS 15.4.1 (iPhone 13 Pro) — Local and Remote videos do not render (Video does broadcast and can be seen by other participants)
- Chrome 101.0.4952.61, Android 12 (Pixel 3A) — Same issue as 1
- Safari 14.0.2, MacOS 11.1 (Macbook Pro 2014) — Video freezes after a few seconds (Could be related to old browser version)
To Reproduce Join a video call via the mobile browser with the targets above
Expected behavior Video rendering smoothly on the local device(s)
Screenshots
Chrome Mac Screenshot - Works properly with no issues 
Safari iOS Screenshot - No rendered previews 
Additional context
Current sdk being used is agora_rtc_engine: ^5.2.0
Hello @mikemilla, is there any logs?
same here.
I'm having the same issue as well. No mobile devices see to be able to show video on Flutter web. The same code running in Chrome and Safari on desktop work fine. Mobile devices are transmitting video to desktop, just the mobile devices do not show any local or remote video.
With a little digging, it looks like mobile web is trying to use the native plugin for video:
errors.dart:251 Uncaught (in promise) Error: MissingPluginException(No implementation found for method offset on channel flutter/platform_views)
at Object.throw_ [as throw] (errors.dart:251:49)
at MethodChannel._invokeMethod (platform_channel.dart:165:7)
at _invokeMethod.next (<anonymous>)
at async_patch.dart:45:50
at _RootZone.runUnary (zone.dart:1685:54)
at _FutureListener.thenAwait.handleValue (future_impl.dart:147:18)
at handleValueCallback (future_impl.dart:766:44)
at _Future._propagateToListeners (future_impl.dart:795:13)
at [_completeWithValue] (future_impl.dart:566:5)
at async._AsyncCallbackEntry.new.callback (future_impl.dart:639:7)
at Object._microtaskLoop (schedule_microtask.dart:40:11)
at _startMicrotaskLoop (schedule_microtask.dart:49:5)
at async_patch.dart:166:15
The same thing happens on both the html and canvaskit renderer.
I can replicate this with the example app in this repo:
- In the example app folder, run
flutter run -d chrome - Note the port in which the app launches
- Run
export PORT=60878 && adb reverse tcp:$PORT tcp:$PORTwith the noted port for PORT - Follow the instructions here: https://developer.chrome.com/docs/devtools/remote-debugging/ to debug Chrome on android
- On the Android device, go to localhost:$PORT. This should load the app and allow the computer to get log data.
Any dev thoughts on this? Mobile web seems so close to working.
also for me working on chrome on mac, not working on chrome and firefox on android
Here is an update on what I've tried (cc: @blopker)
-
My hunch is that the AgoraRtcWrapper.bundle.js may not be configured correctly. Old examples of the flutter web library include a script tag in the index.html file. I cloned the repo, built the new file, installed it manually, and experienced the same issue. I also tried to find an older bundle js, and found the same problem. I created an issue in Iris repo (https://github.com/AgoraIO-Community/Iris-Rtc-Web/issues/1)
-
I opened another issue as a means to bump this problem up. Can be closed if we finally get some details. (https://github.com/AgoraIO/Agora-Flutter-SDK/issues/735)
-
I downloaded a web sdk example and tried it in safari mac and it worked well. Maybe the pipeline from the web SDK to the wrapper SDK isn't up to date?
-
I currently have a ticket open with support about this issue. Will update here when I get a response. I would imagine Agora would like this to work as I am very confident Agora is the most popular p2p video library for Flutter in the world.
Debugging this is really difficult (especially for mobile). My guess is that if Safari mac is solved, the other mobile platforms will get solved too. I use this command to run flutter as a web server to test on mobile (for those that haven't tried that)
flutter run main.dart -d web-server --web-port 8080 --web-hostname 0.0.0.0
Any update on this?
any update?
any update?
The web support for agora_rtc_engine 6.x has landed in the main branch, If you still face issues, please try the latest code in main branch to see if it works or not.
There is no documentation on how to use it @littleGnAl
The web support for
agora_rtc_engine6.x has landed in themainbranch, If you still face issues, please try the latest code inmainbranch to see if it works or not.
@oexza Add the main branch as git package:
agora_rtc_engine:
git:
url: https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK.git
ref: main
Then follow the integration guide https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK?tab=readme-ov-file#web-alpha
Without additional information, we are unfortunately not sure how to resolve this issue. We are therefore reluctantly going to close this bug for now. If you find this problem please file a new issue with the same description, what happens, logs and the output. All system setups can be slightly different so it's always better to open new issues and reference the related ones. Thanks for your contribution.
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please raise a new issue.