雲計算

OSS-Android SDK 搭建總結

作者:張醫博

背景

很多小夥伴對 Android 的 SDK 搭建熟悉,但是對於上雲的 OSS Android SDK 使用有些一門疑問,今天從環境搭建到客戶端使用全面給大家梳理一遍個人的使用總結;

分解

  • 下載jdk和Android studio
  • 安裝jdk
  • 配置環境變量
  • 安裝Android Studio
  • 配置Android Studio

下載工具

安裝

JDK

image.png

典型下一步的操作
image.png

image.png

環境變量配置

image.png

JAVA_HOME

image.png

編輯Path

image.png

CLASSPATH變量

image.png

測試環境變量是否配置成功 “開始” -》 輸入 -》 “cmd” 打開命令行窗口輸入 javac

image.png

安裝 Android Studio

image.png

  • 建議典型安裝,如果不是很懂安裝過程,不要建議更改配置
    image.png
  • 上面是 Android Studio的安裝目錄 下面是sdk的目錄,自行選擇即可;
    image.png

Android Studio配置

  • 加載本地配置信息提示
    image.png
  • 剛開始打開的時候會問我們是否加載本地的配置信息,就是 Android Studio 的配置環境信息等,如果你以前沒有用過,忽略掉就好了。直接按默認的點 ok 啟動 Android Studio
    image.png
  • 直接點擊 Cancel 進入 SDK 配置
    image.png
  • 然後一路下一步,直至finish,finish後會下載一些插件,等一下就好;
    image.png

image.png

配置 SDK

image.png

image.png

這裡我們選擇我們剛才sdk的安裝目錄即可;
這時候我們就可以點擊 Start a new Android Studio project 來新建一個工程了;
彈出新建工程對話框

image.png

新建工程,依次填寫項目名稱 公司域名 包名 等信息,注意選擇自己的工作區不要用默認的;
然後一路next全默認最後到finish

image.png

集成 OSS SDK

1、 集成工程到 Android Studio 中;

image.png

2、引入成功後,瞭解主要的 java 類

2.1 Config 是我們主要的配置文件,裡面存放的是 OSS 操作的 bucket 配置,以及回調、STS 獲取地址、endpoint 等信息;

image.png

注意:

  • 現在 SDK 基本都採用 STS 的方式上傳,用戶需要自己維護一臺 STS Server 服務器,目的是用來獲取 STS token 臨時令牌的信息; STS 的搭建可以參考:快速搭建移動服務
  • callback 是上傳成功後回調用戶的地址,也是用戶自己維護,目的是接收 OSS 上傳成功後回調信息,用戶的回調服務器必須能返回 200 並且是 JSON 的字符串,類似截圖中
    image.png

2.2 OSSAuthCredentialsProvider 自動鑑權

這個類主要功能,是根據用戶設置的 STS URL 地址,自動解析出返回的變量,並且在 STS 過期後自動去獲取新的 STS token;STS 返回的鑑權信息格式一定要如下,並且返回 200
image.png

STS 地址返回的鑑權信息格式

{"StatusCode":200,"AccessKeyId":"STS.NJxxxxxxxxxxx1zMxm6Q","AccessKeySecret":"EDLc9CxxxxxxxPcSDxqrzW1kwCh5z7","Expiration":"2019-04-12T04:24:32Z","SecurityToken":"CAIS9xxxxxxxxxxKH6"}

2.3 這個路徑下面主要是 Android 測試的類文件;

image.png

image.png

2.4 demo 的測試集合類

OssService 中集合 demo 的測試方式 (PutObject , PutImage ....)當使用者需要修改設置上傳回調時可以通過這個地址進行修改;
image.png

測試上傳

按照截圖順序,點擊 設置,提示成功後 ,點擊 選擇圖片,輸入 object 名稱,點擊上傳

image.png

通過 DEBUG 結果我們可以看到文件上傳成功,導致我們的初步測試已經成功
image.png

Leave a Reply

Your email address will not be published. Required fields are marked *