public override void Init(
InitDelegate onInitComplete,
string appId,
bool cookie = false,
bool logging = true,
bool status = true,
bool xfbml = false,
string channelUrl = "",
string authResponse = null,
bool frictionlessRequests = false,
HideUnityDelegate hideUnityDelegate = null)
{
if (string.IsNullOrEmpty(appId))
{
throw new ArgumentException("appId cannot be null or empty!");
}
var parameters = new Dictionary<string, object>();
parameters.Add("appId", appId);
if (cookie != false)
{
parameters.Add("cookie", true);
}
if (logging != true)
{
parameters.Add("logging", false);
}
if (status != true)
{
parameters.Add("status", false);
}
if (xfbml != false)
{
parameters.Add("xfbml", true);
}
if (!string.IsNullOrEmpty(channelUrl))
{
parameters.Add("channelUrl", channelUrl);
}
if (!string.IsNullOrEmpty(authResponse))
{
parameters.Add("authResponse", authResponse);
}
if (frictionlessRequests != false)
{
parameters.Add("frictionlessRequests", true);
}
var paramJson = MiniJSON.Json.Serialize(parameters);
this.onInitComplete = onInitComplete;
this.CallFB("Init", paramJson.ToString());
}