У меня есть собственный SDK в моих формах Xamarin, который ничего не делает. У меня есть файл xaml за файлом спецификации c .cs платформы, но его содержимое не отображается.
Основной файл
private async void Video()
{
DependencyService.Get<InterfaceFile>().GetNativeMethod();
}
Файл интерфейса
public interface InterfaceFile
{
void GetNativeMethod();
}
Собственный файл:
[assembly: Xamarin.Forms.Dependency(typeof(Demo))]
namespace Demo.Droid
{
public partial class Demo : InterfaceFile
{
public string GetNativeMthod()
{
/// code
}
}
}
Приведенный выше код спецификации платформы c имеет реализацию видео с использованием сторонних собственных SDK. У меня есть код XAML за этим файлом. Я хочу начать этот видеозвонок в этом xaml-файле, чего не происходит. Как связать файл xaml с файлом .cs?
Редактировать
Я попытался удалить код xaml и добавил только файл .cs со следующим кодом (используя Vidyo native sdk):
public void GetNativeMethod()
{
_vidyoConnector = new Connector(viewHandle,Connector.ConnectorViewStyle.ConnectorviewstyleDefault, 16, "warning all@VidyoConnector info@VidyoClient", "", 0);
_vidyoConnector.ShowViewAt(viewHandle, 0, 0, viewWidth, viewHeight);
_vidyoConnector.Connect(host, token, displayName, resourceId, this);
}
При использовании приведенного выше кода происходит сбой приложения, поскольку здесь не определен фрейм.
Собственный код SDK для метода Connector:
public Connector(IntPtr viewId, ConnectorViewStyle viewStyle, uint remoteParticipants, String logFileFilter, String logFileName, ulong userData){
IntPtr nLogFileFilter = MarshalPtrToUtf8.GetInstance().MarshalManagedToNative(logFileFilter ?? string.Empty);
IntPtr nLogFileName = MarshalPtrToUtf8.GetInstance().MarshalManagedToNative(logFileName ?? string.Empty);
objPtr = VidyoConnectorConstructNative(ref viewId, viewStyle, remoteParticipants, nLogFileFilter, nLogFileName, userData);
Marshal.FreeHGlobal(nLogFileName);
Marshal.FreeHGlobal(nLogFileFilter);
VidyoConnectorSetUserDataNative(objPtr, GCHandle.ToIntPtr(GCHandle.Alloc(this, GCHandleType.Weak)));
}
Ссылка на документацию для видё: https://developer.vidyo.io/# / документация