Android Cordova移动应用程序和Dropbox API v2

Android Cordova移动应用程序和Dropbox API v2,android,cordova,jquery-mobile,dropbox,dropbox-api,Android,Cordova,Jquery Mobile,Dropbox,Dropbox Api,有人在Cordova移动应用程序中使用Dropbox API v2吗?甚至是一个移动应用阶段?API v1和Cordova有一个教程: 但Dropbox已经或正在否定它 我有一个Github项目,它是一个基本的Cordova项目(版本6.5.0),包含Dropbox API v2。我可以让项目进入授权屏幕,但我相信我的问题是重定向URI 我正在使用: 科尔多瓦6.5.0 在Android上测试 Dropbox API v2: 授权示例: 但同样,我已经将所有东西都投入到Github回购中:

有人在Cordova移动应用程序中使用Dropbox API v2吗?甚至是一个移动应用阶段?API v1和Cordova有一个教程: 但Dropbox已经或正在否定它

我有一个Github项目,它是一个基本的Cordova项目(版本6.5.0),包含Dropbox API v2。我可以让项目进入授权屏幕,但我相信我的问题是重定向URI

我正在使用:

  • 科尔多瓦6.5.0
  • 在Android上测试
  • Dropbox API v2:
  • 授权示例:
但同样,我已经将所有东西都投入到Github回购中:

我认为重定向URI是问题所在,您可以在index.html的第128行找到它:

var authUrl = dbx.getAuthenticationUrl('https://www.dropbox.com/oauth2/authorize?response_type=token&client_id=8nvbrxvlg96tx1k&redirect_uri=helloworld://localhost/callback');
请告诉我是否有人已获得或可以获得重定向回移动应用程序的授权


提前谢谢你

您可以尝试使用这个用于Oauth2的Cordova插件(它也使用应用内浏览器插件):

好吧,我已经解决了这个问题! 我对该项目有三个问题:

  • 我的重定向URI错误,应该是以下内容:

    var authUrl=dbx.getAuthenticationUrl('helloworld://localhost/callback');

  • 我没有正确设置自定义URL方案,幸运的是有一个漂亮的小插件可供使用:。这是我在CLI中运行以安装插件的内容:cordova plugin add cordova plugin customurlscheme--variable URL_SCHEME=helloworld

  • 添加插件并阅读说明后,您将看到需要添加一个函数来处理回调访问令牌,如下所示:

  • 函数handleOpenURL(url){
    log(“handleOpenURL:+url”);
    showPageSection(“授权部分”);
    //使用访问令牌创建Dropbox实例并使用它
    //获取并呈现用户根目录中的文件。
    var dbx=新的Dropbox({accessToken:getAccessTokenFromUrl2(url)});
    dbx.FileListFolder({路径:'})
    .然后(功能(响应){
    renderItems(response.entries);
    })
    .catch(函数(错误){
    控制台错误(error);
    });
    
    }
    您是否有使用Dropbox API V2的插件?你是如何在你的应用程序中实现Dropbox API V2功能的?@Nikhil你找到答案了吗?还是需要帮助?我仍在进行迁移,需要帮助。以前我使用ross martin插件实现Dropbox功能。现在,由于没有其他插件可用于APIv2,我正在尝试使用dropbox sdk实现dropbox功能。我曾尝试使用customurlscheme插件来提供重定向uri,但添加该插件后,它会从我的项目中删除许多文件。因此,我目前正在使用javascript sdk()中的authenticateWithCordova()方法。该方法用作重定向uri。当用户第一次单击“身份验证”按钮(返回访问令牌)时,它会起作用。问题:1.)如果同一用户再次尝试进行身份验证,它会显示一个黑屏,并将用户重定向到应用程序。2.)上传文件时使用哪种方法?我尝试使用FileUpload()方法,该方法要求将文件内容作为参数。那么,如何用Javascript或Cordova提供文件内容呢?或者让我知道您的实现方法。