繁体   English   中英

链接到Dropbox

[英]Linking to Dropbox

我有一个奇怪的问题。 我的应用应该链接到Dropbox,应该能够上传/下载文件。 我有一个Button calles“Connect to Dropbox”。 按下此按钮后,应用程序应链接到Dropbox。

- (IBAction)btnLoginClick:(id)sender {
    [[DBSession sharedSession] linkFromController:self];
}

调用此操作时一切正常。 Dropbox.app已加载并请求权限等。

如果我将函数更改为如下所示:

- (IBAction)btnLoginClick:(id)sender {
    [[appDelegate getDropboxService] link:self];
}

然后打开Dropbox.app并询问其权限,但该应用程序未链接到Dropbox。

我收到以下错误:

[WARNING] DropboxSDK: error making request to /1/metadata/dropbox - Token is invalid. 

仅在appDelegate中的函数返回Dropbox对象,如果它是nil,则将创建它。 Link函数只调用第一个代码块中的同一行。

[[DBSession sharedSession] linkFromController:self];

我不知道为什么会这样,或者我做错了什么。

问候亚历克斯

我有同样的问题。 在我的情况下,我在应用程序链接到Dropbox之前创建了一个restClient实例。 可能这有帮助

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
    if ([[DBSession sharedSession] handleOpenURL:url]) {
        if ([[DBSession sharedSession] isLinked]) {
            NSLog(@"App linked successfully!");
            //now you can call restClient = [[DBRestClient alloc] initWithSession:[DBSession sharedSession]];
        }
    }
}

我的问题是,当DropBox用户安装了官方DropBox应用程序时,您的应用程序会将身份验证转移到该应用程序,而不是使用内置工作表。 如果您的应用程序设置为在不再是键时退出,则当您的应用程序再次获得焦点(即重新启动)时,共享会话([DBSession sharedSession])不再存在。 这导致(在我的情况下)无限循环的重新链接,失败,尝试再次重新链接等。

我的修复是在- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url重新创建共享会话- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url调用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM