public virtual object ParseDialogCallbackUrl(Uri uri)
{
var parameters = new Dictionary<string, object>();
ParseUrlQueryString(uri.Query, parameters, true);
// We are serializing and deserializing here so that
// the result of this object is consistent with whatever
// serializer is being used. If we hard coded to JsonObject
// the result would be inconsistent with the rest of the SDK.
var json = SerializeJson(parameters);
return DeserializeJson(json, null);
}