NativeScript Dropbox
Dropbox SDK。
npm i --save nativescript-dropbox

NativeScript Dropbox

先决条件 / 需求

Dropbox 用户访问令牌

安装

从命令提示符进入您的应用根目录并执行

tns plugin add nativescript-dropbox

演示应用

如果您想快速开始,克隆存储库,cd src,然后执行 npm run demo.iosnpm run demo.android

API

init

使用给定令牌初始化 Dropbox 客户端。

参数 类型 描述
accessToken 字符串 用户访问令牌。
var Dropbox = require("nativescript-dropbox");
Dropbox.init("ACCESS_TOKEN");

uploadData

在给定路径上上传数据。

参数 类型 描述
path 字符串 Dropbox 文件路径。
data NSData 或 java.lang.Byte[] 二进制数据。
overwrite 布尔值 如果文件已存在,则覆盖文件。默认为 true
autorename 布尔值 如果存在冲突,Dropbox 服务器将尝试自动重命名文件以避免冲突。默认为 false
mute 布尔值 通常,用户会在客户端软件中通过通知了解其 Dropbox 账户中的任何文件修改。如果为 true,则告诉客户端这种修改不应产生用户通知。默认为 false
var dropbox = new Dropbox();

dropbox.addEventListener(Dropbox.successEvent, (event: SuccessEventData) => { ... });

dropbox.addEventListener(Dropbox.errorEvent, (event: ErrorEventData) => { ... });

dropbox.addEventListener(Dropbox.progressEvent, (event: ProgressEventData) => { ... });

dropbox.uploadData("/logo.png", knownFolders.currentApp().getFile(path.join("images", "logo.png")).readSync());

createSharedLink

为给定路径创建共享链接。

参数 类型 描述
path 字符串 Dropbox 文件路径。
var dropbox = new Dropbox();

dropbox.addEventListener(Dropbox.successEvent, (event: SuccessEventData) => {
var url = event.result;
});

dropbox.addEventListener(Dropbox.errorEvent, (event: ErrorEventData) => { ... });

dropbox.createSharedLink("/logo.png");

dispose

销毁 Dropbox 客户端。

Dropbox.dispose();

Android 已知问题

Dropbox SDK 需要 API 级别 19 (Kitkat - 4.4) 或更高

您可能需要修改 minSdkVersion 条目在您的 App_Resources/Android/src/main/AndroidManifest.xml

<uses-sdk
android:minSdkVersion="19"
...

.dex 文件中的方法引用数量不能超过 64K。

这可以通过向您的 app/App_Resources/Android/app.gradle 添加 multiDexEnabled true 来解决。

android {  
defaultConfig {
applicationId = "__PACKAGE__"
multiDexEnabled true
generatedDensities = []
}
aaptOptions {
additionalParameters "--no-version-vectors"
}
}