stntz / xamarin.zoombinding Goto Github PK
View Code? Open in Web Editor NEWZoom Mobile SDK Binding for Xamarin Android and iOS(device only)
Zoom Mobile SDK Binding for Xamarin Android and iOS(device only)
How can I implement it with CallKit so that when I am streaming and I background the app on iOS, it continues to stream my audio and shows a black video to my viewers?
Hi,
This is a fantastic solution for Xamarin forms works a treat great job so far!
The only thing I have noticed is build times are considerably slower upon implementation of this solution. Have you experienced this? If so do you have any tips for optimisation?
Thanks,
Hello, I've been using the package to implement zoom via my xamarin app for android.
I was just wondering what the plans are in terms of completing the Ios bindings and whether you are going to upload them as a separate nuget package specifically for Ios or add them to the current nuget package to cover both Ios and android and what the timescales on this may be?
Really appreciate the work you have done so far. Thanks.
HI , i tried to build and deploy your project but after fixing errors i am unable to fix this?
Xamarin.ZoomBinding-master/src/MobileRTC_Droid/Additions/MMBuddyItemComparator.cs(88,88): Error CS1503: Argument 2: cannot convert from 'Com.Zipow.Videobox.View.MM.MMContentSearchFilesAdapter.ContentFileComparator' to 'Java.Interop.IJavaPeerable' (CS1503) (MobileRTC_Droid)
We are using the xamarin ios app with zoom sdk integrated. Currently the lib which is shared we are facing problem in view only type webinar and ipad we are not able to hide the meeting details,
can you please compile the lib with latest sdk? or give us the steps to compile so we can compile and upload the latest lib in nuget.
Its quite critical for us can you please help us.
I updated my project to XF 5 today and on iOS the MobileRTC is always null now and the app just closes. I havent tested my Android project yet.
public class ZoomService : IZoomService
{
MobileRTC mobileRTC;
MobileRTCAuthService authService;
public ZoomService()
{
mobileRTC = MobileRTC.SharedRTC; // MobileRTC is always Null now
}
...
}
When joining the meeting how do I override the back button? It just exits or minimizes the app currently. Since the meeting activity isn't exposed from what I can see, I can't override the back button.
Thanks
When I am login as a host using the pro account. the poll option feature is not showing on mobile.
The poll feature that already enables account level. Thanks in advance.
Its giving set of error messages like this when I was trying to build the android app in Release mode..
Found tag where is expected ZoomApp.Android H:\FL\ZoomApp\ZoomApp\ZoomApp\ZoomApp.Android\obj\Release\100\lp\2\jl\res\values\values.xml 2
Multiple substitutions specified in non-positional format; did you mean to add the formatted="false" attribute? ZoomApp.Android H:\FL\ZoomApp\ZoomApp\ZoomApp\ZoomApp.Android\obj\Release\100\lp\2\jl\res\values-de\values-de.xml
I created a POC app and the here are the libraries I used for the android app..
**** Please note that the app works fine on Debug mode on Simulators and Live Device.**
Hello, great plugin, on Android only, following the example, after I login with the Meeting ID and Password, I am prompted again to enter the Meeting ID. Is this an issue or how its suppose to work on Android?
Screen shot link below
http://gjhdigital.com/wp-content/uploads/2020/11/android-zoom-meeting-password.jpg
Is there a setting Im missing?
I have on my mac
Visual Studio 8.8.2
Xamarin Forms 4.8
Xamarin Essentials 1.5
Xamarin.android.Zoom 1.0
Xamarin.AndroidX.Browser 1.2.0.2
Xamarin.AndroidX.Lifecycle.LiveData 2.2.0.3
Hi stntz ,
I am using below line of code to get the list of meetings
"MobileRTCSDKError mobileRTCSDKError = zoomSDK.PreMeetingService.ListMeeting();"
But how to get a meeting ids above one is not returning the list of meetings id's
Thanks in Advance
Hello,
When building an app with the sdk installed for a physical device all works perfectly, on a simulator there is 17 linker errors, does the same happen for you and if so have you managed to resolve any of the linker errors?
Thanks
Hi, Is there any option to create meeting inside Xamarin forms using SDK or using the package(xamarin.ios.zoom/xamarin.android.zoom) used in sample for iOS and android? or any other sample to create meeting and join meeting within the Xamarin apps using sdk this is what I required?
how to use in our project and namespaces
when i install through nuget and build the project am getting below error
Severity Code Description Project File Line Suppression State
Error NU1202 Package Xamarin.Android.Zoom 1.0.0 is not compatible with monoandroid90 (MonoAndroid,Version=v9.0). Package Xamarin.Android.Zoom 1.0.0 supports: monoandroid10.0 (MonoAndroid,Version=v10.0) ZoomForAndriod C:\Users\prave\OneDrive\Desktop\ZoomForAndriod\ZoomForAndriod\ZoomForAndriod.csproj 1
I'm having following errors when building the iOS app
Native linking failed, undefined Objective-C class: MobileRTCAlternativeHost. The symbol 'OBJC_CLASS$_MobileRTCAlternativeHost' could not be found in any of the libraries or frameworks linked with your application.
Native linking failed, undefined Objective-C class: MobileRTCBOCreator. The symbol 'OBJC_CLASS$_MobileRTCBOCreator' could not be found in any of the libraries or frameworks linked with your application.
Native linking failed, undefined symbol: _kMeetingParam_IsAppShare. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_IsAppShare. Please verify that all the necessary frameworks have been referenced and native libraries linked.
Here are the libraries I used..
Xamarin.Forms 4.5.0.495
Xamarin.iOS.Zoom 1.0.0
Xamarin.Essentials 1.3.1
I added the link skipping too. but still the problem exists.
Would it be possible to disable safe driving mode on the zoom meeting?
The text colours shows in a light grey colour in Participants window.
I'm working from the xamarin5 branch
The ZoomSDK is supposed to have a reference via an instance method to an instance of an interface called ZoomUIService, which has a bunch of useful helper methods including enabling picture in picture mode, which is what I am after.
Here's the SDK documentation https://marketplacefront.zoom.us/sdk/meeting/android/us/zoom/sdk/ZoomUIService.html#enableMinimizeMeeting-boolean-
Here's a screenshot of it existing in java
I've tried adding the following two lines to metadata.xml
<attr path="/api/package[@name='us.zoom.sdk']/interface[@name='ZoomUIService']" name="visibility">public</attr>
<attr path="/api/package[@name='us.zoom.sdk']/class[@name='ZoomSDK']/method[@name='getZoomUIService']" name="visibility">public</attr>
I found some build warnings saying that the build is invalidating the whole type due to "some of its methods were invalid"
Here's the relevant section from my build output.
2>C:\projects\Xamarin.ZoomBinding\src\MobileRTC_Droid\obj\Release\api.xml(260131,10):
warning BG8801: Invalid parameter type 'us.zoom.sdk.ZoomUIDelegate' for member 'US.Zoom.Sdk.IZoomUIService.SetZoomUIDelegate (US.Zoom.Sdk.IZoomUIDelegate)'.
2>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Bindings.Core.targets(53,5): obj\Release\api.xml(260131,10)
warning BG8801: Invalid parameter type 'us.zoom.sdk.ZoomUIDelegate' for member 'US.Zoom.Sdk.IZoomUIService.SetZoomUIDelegate (US.Zoom.Sdk.IZoomUIDelegate)'.
2>C:\projects\Xamarin.ZoomBinding\src\MobileRTC_Droid\obj\Release\api.xml(260085,6):
warning BG8503: Invalidating 'US.Zoom.Sdk.IZoomUIService' and all its nested types because some of its methods were invalid.
2>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Bindings.Core.targets(53,5): obj\Release\api.xml(260085,6)
warning BG8503: Invalidating 'US.Zoom.Sdk.IZoomUIService' and all its nested types because some of its methods were invalid.
2>C:\projects\Xamarin.ZoomBinding\src\MobileRTC_Droid\obj\Release\api.xml(259458,8):
warning BG8701: Invalid return type 'us.zoom.sdk.ZoomUIService' for member 'US.Zoom.Sdk.ZoomSDK'.
Hello i was wondering if you could help me with the following, I'm implementing the iOS nuget package and came across the following error:
Cannot retrieve the container URL for the application group identifier group.us.zoom. Make sure that it has been added to the com.apple.security.application-groups
entitlement.
It seems to be related to the following: https://devforum.zoom.us/t/having-crash-while-starting-zoom-class/6736/4
I know it's not possible to add the zoom group id to my entitlements, Is there a property I can access to change the group name to my own ?
Thanks
Hi, Could you please tell me if I want to open Zoom in a specified area of UI instead of complete screen how can I am able to manage that.
Currently It opens in complete UI and there id only Leave meeting is a option, I can't navigate back to my UI or can't see current UI, ZOOM UI cover everything.
Need to compile with latest zoom andrdoid and ios sdk as zoom will stop 9 month window
In my fix for #30 I added this line to metadata
<remove-node path="/api/package[@name='us.zoom.sdk']/interface[@name='ZoomUIService']/method[@name='setZoomUIDelegate']"/>
It allowed the ZoomUIService to appear on the ZoomSdk instance, which was great. However, setZoomUIDelegate is actually quite a key method, allowing the addition of listener functions to common zoom ui actions, like knowing when the user has gone into mini meeting mode.
Here are the docs for ZoomUIDelegate
Removing the remove-node line above, I've then tried tracing the binding warnings in the output back through the invalid interfaces to find the reason it doesn't like ZoomUIDelegate.
It seems to have something to do with the interfaces IMeetingInviteMenuItem
and IMeetingInviteAction
as per these lines
1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Bindings.Core.targets(53,5): obj\Release\api.xml(260053,6) warning BG8C00: Could not find base interface 'com.zipow.videobox.sdk.m0<us.zoom.sdk.IMeetingInviteMenuItem>' for type 'US.Zoom.Sdk.IZoomUIDelegate'.
1>C:\projects\Xamarin.ZoomBinding\src\MobileRTC_Droid\obj\Release\api.xml(257452,10): warning BG8801: Invalid parameter type 'us.zoom.sdk.MeetingInviteMenuItem.MeetingInviteAction' for member 'US.Zoom.Sdk.MeetingInviteMenuItem.MeetingInviteMenuItem (string, int, US.Zoom.Sdk.MeetingInviteMenuItem.IMeetingInviteAction)'.
1>C:\projects\Xamarin.ZoomBinding\src\MobileRTC_Droid\obj\Release\api.xml(257462,6): warning BG8502: Invalidating 'US.Zoom.Sdk.MeetingInviteMenuItem.IMeetingInviteAction' and all its nested types because some of its interfaces were invalid.
the "m0" in this line is also interesting
1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Xamarin\Android\Xamarin.Android.Bindings.Core.targets(53,5): obj\Release\api.xml(260053,6) warning BG8C00: Could not find base interface 'com.zipow.videobox.sdk.m0<us.zoom.sdk.IMeetingInviteMenuItem>' for type 'US.Zoom.Sdk.IZoomUIDelegate'.
So far I have tried adding the following nodes, all with no success
<remove-node path="/api/package[@name='us.zoom.sdk']/interface[@name='ZoomUIDelegate']/method[@name='onClickInviteButton']"/>
<remove-node path="/api/package[@name='us.zoom.sdk']/interface[@name='IMeetingInviteMenuItem']/method[@name='getAction']"/>
<remove-node path="/api/package[@name='us.zoom.sdk']/interface[@name='IMeetingInviteMenuItem']"/>
<attr path="/api/package[@name='us.zoom.sdk']/interface[@name='IMeetingInviteMenuItem']" name="obfuscated">false</attr>
Great plugin! But I am having the similar issue when building on a Mac. It builds fine on a VS2019 on windows.
Hopefully you can point me in the right direction to fix this. Thanks in advance.
heres my output:
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5211: Native linking failed, undefined Objective-C class: MobileRTCAlternativeHost. The symbol 'OBJC_CLASS$_MobileRTCAlternativeHost' could not be found in any of the libraries or frameworks linked with your application. (MT5211) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5211: Native linking failed, undefined Objective-C class: MobileRTCBOCreator. The symbol 'OBJC_CLASS$_MobileRTCBOCreator' could not be found in any of the libraries or frameworks linked with your application. (MT5211) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_IsAppShare. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_IsAppShare. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_MeetingNumber. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_MeetingNumber. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_MeetingPassword. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_MeetingPassword. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_NoAudio. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_NoAudio. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_NoVideo. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_NoVideo. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_ParticipantID. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_ParticipantID. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_UserID. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_UserID. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_UserToken. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_UserToken. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_UserType. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_UserType. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_Username. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_Username. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_VanityID. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_VanityID. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5214: Native linking failed, undefined symbol: _kMeetingParam_WebinarToken. This symbol was referenced by the managed member Zoomios.Constants.kMeetingParam_WebinarToken. Please verify that all the necessary frameworks have been referenced and native libraries linked. (MT5214) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/MTOUCH: Error MT5202: Native linking failed. Please review the build log. (MT5202) (CoverBandDiaries.iOS)
/Users/greg/Documents/Xamarin Projects/CoverBandDiaries/CoverBandDiaries/CoverBandDiaries.iOS/clang: Error: linker command failed with exit code 1 (use -v to see invocation) (CoverBandDiaries.iOS)
Hello, I can initialize fine with iOS but Android wont. Any guidance would be greatly appreciated.
The OnZoomSDKInitializeResult returns these values.
p0 = 3 and p1 = 5003
public void OnZoomSDKInitializeResult(int p0, int p1)
{
Console.WriteLine($"Authentication Status: {p0} - {p1}");
}
My initParams are
var zoomInitParams = new ZoomSDKInitParams
{
AppKey = appKey,
AppSecret = appSecret,
EnableLog = true,
LogSize = 50,
Domain= "zoom.us",
VideoRawDataMemoryMode = ZoomSDKRawDataMemoryMode.ZoomSDKRawDataMemoryModeStack
};
zoomSDK.Initialize(Android.App.Application.Context, this, zoomInitParams);
using xamarin forms 5.0.0.2515
Recently I tried the SDK in my project and I tried the the demo using different devices, In android the zoom disconnect immediately after starting while in iOS zoom meeting does not start.
Also zoom meeting stopped in old published live builds.
Currently, Package compatible with only version 10.0
Hello, when meeting is started and meeting status is "InMeeting" I have to minimize Zoom window and show application window, is it possible in Android app ?
Just like iOS has start/stop share: https://marketplace.zoom.us/docs/sdk/native-sdks/iOS/mastering-zoom-sdk/in-meeting-function/customized-in-meeting-ui/share ?
Hi, Is UWP support possible with the Zoom bindings? If so, are you planning to add it as part of the Nuget package? Thanks!
Hello @stntz, we're trying to use your package but need an upgrade to the latest Android and iOS SDKs. Quite happy to pay for your time, are you free for a chat?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.