iOS上的Dropbox应用程序是否具有URLscheme?
我希望能够在我的应用程序内启动Dropbox应用程序。 因此,我想知道如果Dropbox的应用程序有一个我可以用来调用openURL的URLscheme,除了我不知道这个string应该是什么。
NSURL *myURL = [NSURL URLWithString:@"dropbox://"]; [[UIApplication sharedApplication] openURL:myURL];
谢谢,
Dropbox url-scheme唯一可以做的就是将你的Dropbox应用程序连接到它。 喜欢这个:
var key = "[YOUR API KEY]"; var secret = "[YOUR API SECRET]"; var apiversion = "1"; window.open("dbapi-1://"+apiversion+"/connect?k="+key+"&s="+secret);
通常情况下,通过以下scheme打开您的iOS应用程序的Dropbox应用程序响应:
db-[YOU API KEY]://connect?oauth_token=SOMETOKEN&oauth_token_secret=SOMEOATHTOKEN&uid=SOMETHING
或与:
db-[YOU API KEY]://cancel
通过查看适用于iOS的Dropbox SDK得到了这一点。
Dropbox的URLscheme是
dbapi-1://
Dropbox没有URLscheme。 但是,您可以通过UIDocumentInteractionController
与Dropbox进行UIDocumentInteractionController
。 你可以在这里阅读。 我见过几个应用程序,允许您在Dropbox中打开文件,并且我认为这是如何完成的。
如果你需要在iOS Dropbox应用程序中打开一个特定的文件,你可以使用这个技巧:
- 编码您的url。
- 将编码的URL附加到
dbapi-6://1/viewLink?url=
前缀。
注意:这是没有logging,并可能在未来的版本中改变。
整个代码应该是这样的:
// `yourURLString` is the URL string you want to open if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"dbapi-6://"]) { NSString *encodedFileURLString = [yourURLString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; NSString *fullURLString = [@"dbapi-6://1/viewLink?url=" stringByAppendingString:encodedFileURLString]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:fullURLString]]; } else { // Otherwise open Safari [[UIApplication sharedApplication] openURL:[NSURL URLWithString:yourURLString]]; }