如何重新启动像facebook-ios-sdk的应用程序呢?

题:

我正在积极寻找Github的facebook-ios-sdk项目上的源代码,但是我想知道是否有人知道如何重新启动一个将iPhone用户发送到Safari的应用程序,以便用户在完成一些工作之后可以回来完了吗?

例:

当使用Facebooklogin时,在Facebooklogin页面对用户进行身份validation后,原始应用程序将重新启动。

动机:

我希望能够做同样的youtubevideo,而不必完全失去用户。 我不想使用标准的webview方法,因为我不想提供额外的空间,先让用户加载video,然后让用户点击播放button。 我想完全跳过播放button及其关联的点击! 相反,我希望用户只需点击一个普通的iPhonebutton,就可以通过导航显示video,然后通过重新启动重新回到应用程序。

你需要你的应用程序来注册一个“自定义URLscheme”。 然后在远程Web服务中获得callback,以返回具有该scheme的URL。 iOS会启动你的应用程序。

  • 更多(有点旧)信息在这里。
  • iOS上常见的自定义URLscheme列表可以在这里find。

通常,作为OAuthlogin过程的一部分,您提供了一个callbackURL作为参数之一。 这样做是告诉远程服务器(YouTube),在成功authentication时,将用户redirect到提供的URL。 如果YouTube支持这个function(它是否支持OAuth?),那么在safari中成功的用户login,YouTube会告诉用户safariredirect到提供的url。 如果此url是“自定义urlscheme”,则会导致您的应用重新启动,您可以从那里处理情况。