目录

AliyunpanSDK-Android

This is the open-source SDK for Aliyunpan-Android OpenAPI.

Getting Started

dependencies {
    implementation 'com.github.alibaba:aliyunpan-android-sdk:v0.2.3'
}

To begin using the sdk, visit our guide that will walk you through the setup process:

Guide

Quick start

1. Create client

PKCE (recommend)

import com.alicloud.databox.opensdk.AliyunpanClient
import com.alicloud.databox.opensdk.AliyunpanClientConfig


fun initApp(context: Context) {
        val config = AliyunpanClientConfig.Builder(context, "app_id")
            .build()
        // init client
        val aliyunpanClient = AliyunpanClient.init(config)
    }

Server

import com.alicloud.databox.opensdk.AliyunpanClient
import com.alicloud.databox.opensdk.AliyunpanClientConfig
import com.alicloud.databox.opensdk.AliyunpanTokenServer

val config = AliyunpanClientConfig.Builder(context, "app_id")
            .tokenServer(object : AliyunpanTokenServer {
                // implement some one
            })
            .build()
        // init client
        val aliyunpanClient = AliyunpanClient.init(config)

2. Send Command

aliyunpanClient.send(AliyunpanUserScope.GetDriveInfo(),
            { result ->
                // success
            }, {
                // failure
            })

Advanced Usage

Kotlin


import com.alicloud.databox.opensdk.kotlin.AliyunpanClient

fun initApp(context: Context) {
        // config
        val config = AliyunpanClientConfig.Builder(context, "app_id")
            .build()
        // init client
        val aliyunpanClient = AliyunpanClient.init(config)
    }
lifecycleScope.launch {
            try {
                val response = aliyunpanClient.send(AliyunpanUserScope.GetDriveInfo())
            } catch (e: Exception) {

            }
        }

Download

aliyunpanClient.buildDownload(driveId, fileId, { task ->
            // success
            task.addStateChange { taskState ->
                when (taskState) {
                    BaseTask.TaskState.Abort -> {
                    }

                    is BaseTask.TaskState.Completed -> {
                    }

                    is BaseTask.TaskState.Failed -> {
                    }

                    is BaseTask.TaskState.Running -> {
                    }

                    BaseTask.TaskState.Waiting -> {
                    }
                }
            }
            val startResult = task.start()
        }, {
            // failure
        })

Upload

aliyunpanClient.buildUpload(driveId, filePath, { task ->
            // success
            task.addStateChange { taskState ->
                when (taskState) {
                    BaseTask.TaskState.Abort -> {
                    }

                    is BaseTask.TaskState.Completed -> {
                    }

                    is BaseTask.TaskState.Failed -> {
                    }

                    is BaseTask.TaskState.Running -> {
                    }

                    BaseTask.TaskState.Waiting -> {
                    }
                }
            }
            val startResult = task.start()
        }, {
            // failure
        })

Documents

Documents

About Repositories

Add it in your root build.gradle at the end of repositories:

    dependencyResolutionManagement {
        repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
        repositories {
            mavenCentral()
            maven { url 'https://jitpack.io' }
        }
    }

Requirements

  • minSdk 21

License

This project is licensed under the MIT License - see the MIT License file for details

关于
641.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802032778号