Android端使用Box获取近期上传文件共享链接的方法
在Android端通过Box SDK获取近期上传文件的共享链接
嘿,我来帮你理清楚怎么在Android上用Box SDK拿到近期上传文件的共享链接——你给出的代码其实已经是正确的实现思路了,我再给你拆解下细节,方便你理解:
首先,你需要先通过Box的API获取到近期上传文件的fileId(比如调用文件列表接口,筛选出近期上传的文件),拿到fileId之后,就可以用你提供的代码生成共享链接了:
mFileApi.getCreateSharedLinkRequest(fileId) .setCanDownload(true) // 允许通过链接下载文件 .setAccess(BoxSharedLink.Access.OPEN) // 设置链接为公开访问(无需登录Box账号) .toTask().addOnCompletedListener(new BoxFutureTask.OnCompletedListener<BoxFile>() { @Override public void onCompleted(BoxResponse<BoxFile> response) { if (response.isSuccess()) { BoxFile boxFile = response.getResult(); String downloadUrl = boxFile.getSharedLink().getDownloadURL(); Log.e("downloadurl", "onCompleted: " + downloadUrl); // 这里拿到的是Box下载页面的网页链接,用户点击后会进入网页完成下载 } else { Toast.makeText(MainActivity.this, "获取共享链接时出错", Toast.LENGTH_SHORT).show(); } } }).run();
代码关键点说明:
setCanDownload(true):如果不需要允许下载,可以把这个参数设为false,这样链接只能预览不能下载setAccess(BoxSharedLink.Access.OPEN):除了OPEN,你还可以选择COLLABORATORS(仅协作者可访问)或COMPANY(仅同公司用户可访问),根据你的需求调整- 成功回调里的
downloadURL:这个链接指向的是Box的网页下载页,不是直接的文件二进制链接,如果需要直接获取文件内容,你可能需要基于这个链接再做进一步的请求处理
内容的提问来源于stack exchange,提问作者yadav-sanjeev
相关产品推荐
相关产品推荐

