Мне нужно создать приложение android из проекта Xamarin Forms, которое пока включает только приложение iOS.
В проекте iOS я получил следующее:
// Truncated
using Foundation;
// truncated
public class FacebookService:IFacebookService
{
public FacebookService()
{
}
public void Initialize()
{
Facebook.CoreKit.AppEvents.ActivateApp();
}
public void logEvent(...)
{
var dico = NSDictionary.FromObjectsAndKeys(parameters.Values.ToArray(), parameters.Keys.ToArray());
Facebook.CoreKit.AppEvents.LogEvent(trimEventName, dico);
}
}
В соответствии с этим я сделал следующее:
using Xamarin.Forms;
using Java.Math;
using Java.Util;
using Xamarin.Facebook.AppEvents;
public class FacebookService:IFacebookService
{
public FacebookService()
{
}
public void Initialize()
{
AppEventsLogger.ActivateApp();
}
public void LogEvent(string eventName, Dictionary<object,object> parameters = null)
{
var dico = NSDictionary.FromObjectsAndKeys(parameters.Values.ToArray(), parameters.Keys.ToArray());
AppEventsLogger.LogEvent(trimEventName, dico);
}
}
Из этого я знаю, что мне нужно создать java Bundle вместо NSDictionary с моими параметрами.
I также необходимо создать регистратор с помощью AppEventsLogger.newLogger (...); И используйте этот экземпляр для logEvent (...);
И, наконец, я должен передать приложение в activApp, но здесь у меня проблема. Для метода activApp требуется Android .App.Application, но я нахожусь в формах xam, поэтому у меня есть приложение Xamarin.App.Application.
И, честно говоря, я ничего не нашел о том, как его получить. с другой, это вообще возможно?