I am implementing audio/video call in my android application.
I am getting following error while importing the AppRTCAudioManager class.
com.quickblox.videochat.webrtc.AppRTCAudioManager is not public in com.quickblox.videochat.webrtc cannot call from outside package.
How to resolve this error.
in version 2.5.2 Quickblox Android SDK, added AppRTCAudioManager class to manage audio settings manually, so refer to this link http://quickblox.com/developers/Sample-webrtc-android#Manage_Audio_settings. And also you can look at sample VideoChat http://quickblox.com/developers/Sample-webrtc-android
Related
Trying to use Prism 8, ContainerLocator, IHttpClientFactory and Platform-Specific Service registration with DryIoc Extensions (not Magician) in a Xamarin Forms application
I have these nuget packages installed
Prism.DryIoc.Extensions
Prism.Forms
My main Xamarin Application inherits from PrismApplicationBase.
In platform code (eg Android) I have IPlatformInitializer implented by MainActivity and for platform-specific services I use:
LoadApplication(new App(this));
as documented here:
https://prismlibrary.com/docs/dependency-injection/platform-specific-services.html
This line causes the IContainerExtension to be resolved in the shared code
protected override IContainerExtension CreateContainerExtension()
...but I can't find a way to successfully return a valid IContainerExtension implementation.
I've attempted:
https://prismlibrary.com/docs/dependency-injection/container-locator.html
var createContainerExtension = () => new DryIocContainerExtension();
ContainerLocator.SetContainerExtension(createContainerExtension);
But the code given here can't even compile - the DryIocContainerExtension class created is defined INTERNAL and isn't available to my application code.
If I use...
PrismContainerExtension.Init();
or
return ContainerLocator.Current;
...as worked previously (eg Prism 7.2) I get a runtime error as described here:
https://githubmemory.com/repo/dansiegel/Prism.Container.Extensions/issues/180
ValueFactory attempted to access the Value property of this instance.
Please can someone advise what I'm doing wrong, or do I have to get my company to pay for Magician to resolve my issue?
I am working on a Xamarin.Forms app with PDF features. I am taking my first shot at using PdfSharp (PdfSharp.Xamarin.Forms forked from PdfSharpCore) but finding it's not entirely developer-friendly. I'm trying to use PDFManager and PDFManager.GeneratePDFFromView and was able to do so successfully in my Android project, but it's not working in UWP. The Git page says to init in the UWP App.xaml.cs like this:
PdfSharp.Xamarin.Forms.UWP.Platform.Init();
But when I try this I get the error "The type or namespace name 'UWP' does not exist in the namespace 'PdfSharp.Xamarin.Forms'". Again, I had no problems initializing in Android, but .UWP is not recognized for UWP. I would open this as an issue on GitHub but the option doesn't seem to be there for this repository.
You need to either find PdfSharp.Xamarin.Forms.UWP.dll from the source website directly or download the sample code from that website and build it. Either way this .dll is the file you are looking for. Once you have a copy of this file, use Project>Reference 'Add Reference' to add this .dll to your UWP project. You should find that PdfSharp.Xamarin.Forms.UWP.Platform.Init() is now accepted.
..But of course there is NO guarantee that PdfSharp.Xamarin.Forms will WORK even if you DO successfully add the library ...
I am trying this out for the first time but it is not working. I have RepoDb nuget package installed in a Class library project but don't know where to call the RepoDb.SqlServerBootstrap.Initialize(); method. It wasn't specified in the docs. When I run it, I get the exeception
{"There is no database setting mapping found for
'System.Data.SqlClient.SqlConnection'. Make sure to install the
correct extension library and call the bootstrapper method. You can
also visit the library's installation page
(http://repodb.net/tutorials/installation)."}
Help resolve
Please install the RepoDb.SqlServer Nuget package as well. Once installed, you can then call the bootstrapper's Initialize() method. Here is the link to the documentation.
I have my UWP Application inherited from Base class, which inherits from MvxApplication<Setup, CoreApp>:
public sealed partial class App : WindowsApplication
{
public App()
{
InitializeComponent();
}
}
public class WindowsApplication : MvxApplication<Setup, CoreApp>
{
}
public class Setup : MvxWindowsSetup<CoreApp>
{
public override IEnumerable<Assembly> GetViewAssemblies()
{
// need to do this as otherwise I receive the message that corresponding view to view model is not found
var assemblies = base.GetViewAssemblies().ToList();
assemblies.Add(typeof(Forms.App).Assembly);
return assemblies;
}
}
However, when launching it, receiving the following error message:
The type MvxContentPagePresentationAttribute is not configured in the
presenter dictionary
As I understand, all that is not proper way to launch Xamarin.Forms MvvmCross application, as UWP App and Setup should be inherited from something like MvxFormsApplication and MvxFormsWindowsSetup<CoreApp, Forms.App> respectively (to have Xamarin.Forms app properly initialized).
But:
MvxFormsApplication is not generic and doesn't provide ability of passing Forms-generic setup.
even if I inherit the App from MvxFormsApplication and use this.RegisterSetupType<MvxFormsWindowsSetupInheritor>();, Visual Studio compiler never allows me to compile the project because of some weird error message (something like The name “WindowsApplication” does not exist in the namespace “…”) (this might be some issue of Visual Studio, but I have VS 15.7 version, which expects the code to work (again, MvvmCross declares they support UWP and XF)).
So, from my understanding, if there is Xamarin.Forms app, there must be also some way of passing actually Xamarin.Forms App class to the UWP App class initialization.
MvvmCross, again, stands for UWP and Xamarin.Forms support, but I can't see any clear example of the way to setup such type of application.
MvvmCross documentation as always is quite "modest". There are some instructions about setting up MvvmCross UWP app as well as setting up MvvmCross XF iOS/Android, but the only word about MvvmCross XF UWP is:
You are now free to place your custom renderers in a different
assembly. All you have to do to make it work is to add your assembly
to the Setup.ViewAssemblies collection.
(in official website docs)
(which is still sounds weird, as iOS and Android versions don't need that additional code, which makes me think that such (current) documentation isn't quite actualized)
and
UWP, WPF
Extend App from MvxApplication. ( App : MvxApplication { } )
from MvvmCross.Forms package readme.txt file, when all other platforms, again, expect inheritance for the app classes from MvxForms*-based ones.
MvvmCross guys, any thoughts on that?
When I set up a new Xamarin.Forms project, I always follow the Playground sample in the MvvmCross GitHub as this example evolves along with the API and is always up-to-date, as it is part of the MvvmCross solution, so any commits need to preserve its functionality. So if you want to see how everything should look in a minimal UWP + Xamarin.Forms project see the Playground.Forms.UI and Playground.Forms.Uwp projects in the linked folder.
I've integrated Branch.io to my Xamarin.Forms app using IBranchBUOSessionInterface. I changed my App class signature to this:
public partial class App : Application, IBranchBUOSessionInterface
and i have a method inside the class implementing the interface:
public async void InitSessionComplete(BranchUniversalObject buo, BranchLinkProperties blp)
Now deep linking works when i have the app installed, this method is invoked and i can get the data through the buo object metadata.
If the app is not installed, the user is correctly redirected to the relevant app store, but once the user downloads the app I expected the same method be invoked on first launch to retrieve the referral deeplink from branch automatically, but it doesnt.
Should i be using IBranchSessionInterface instead of IBranchBUOSessionInterface? I didnt understand their difference anyways.. Or should i be calling a method specifically for first launch? Since I only need this on first launch..
If you are following the example here, which uses IBranchBUOSessionInterface, deferred deep linking should work as well. If you are still running into issues, could you please write in to integrations#branch.io with your Branch key, AppDelegate.cs file, and test link. Thanks!