我需要从Parse.com迁移到我自己的Parse服务器。如何通过服务器URL初始化Unity Project上的Parse SDK? Unity Editor上唯一可编辑的变量是ApplicationIdDotNetKey。我看到了一个.Net示例,可以在应用程序初始化时传递serverUrl(请参见下文),但是在Unity上我找不到此选项:

ParseClient.initialize(new ParseClient.Configuration {
    ApplicationId = "YOUR_APP_ID",
    ClientKey = "YOUR_APP_CLIENT_KEY",
    Server = "http://localhost:1337/parse"
});

我发现Parse.ParseClient类具有内部HostName变量。我如何通过反射Reflection 来访问它?我试过了:
typeOf(ParseClient)

但这又回来了

未知类型:Parse.ParseClient

最佳答案

**************解决方案*****************

public class ParseInitializer : ParseInitializeBehaviour {
    [SerializeField] public string hostURL;

    public override void Awake() {
        var assembly = Assembly.GetAssembly(typeof(ParseInitializeBehaviour));
        var type = assembly.GetType("Parse.ParseClient");
        var prop = type.GetProperty("HostName", BindingFlags.Static
                            | BindingFlags.NonPublic);
        Uri uri = new Uri(hostURL;);
        prop.SetValue(type, uri, null);

        var s = (Uri)prop.GetValue(type, null);
        base.Awake();
    }

}

08-19 15:22