UIApplication.SharedApplication.TerminateWithSuccess不存在

Jon*_*ski 1 iphone xamarin.ios

为什么在MonoTouch中没有实现SharedApplication的TerminateWithSuccess方法?我怎么能调用它?甚至更好,我如何以编程方式关闭应用程序?

Mat*_*eer 7

terminateWithSuccess是私有API,这就是MonoTouch不能表现它的原因.您仍然可以使用选择器来调用它.

        Selector s = new Selector("terminateWithSuccess");
        UIApplication.SharedApplication.PerformSelector(s, UIApplication.SharedApplication, 0)
Run Code Online (Sandbox Code Playgroud)

  • 请记住,称这种方法并不“犹太洁食”,苹果可能会在没有警告的情况下更改它,甚至可能会阻止您的应用程序获得批准。 (2认同)

小智 5

FWIW-我上周收到了这个-看起来这个方法的时间到了......

感谢您向 App Store 提交对 x​​xxx 的更新。在我们审查您的应用程序期间,我们发现它正在使用私有 API,这违反了 iPhone 开发者计划许可协议第 3.3.1 节;“3.3.1 应用程序只能按照 Apple 规定的方式使用记录的 API,不得使用或调用任何私有 API。” 虽然您的申请未被拒绝,但最好在下次更新中解决此问题。
您的应用程序中包含以下非公共 API:
terminateWithSuccess
如果您在源代码中定义了与上述 API 名称相同的方法,我们建议更改您的方法名称,以便它们不再与 Apple 的私有 API 冲突,以避免您的申请将被标记为未来提交的申请。请在下次更新 xxx 时解决此问题。