418
財經資訊
Android SDK 使用手冊__使用SDK調用已開放API_SDK_API 網關-阿裏雲
1. 前言
本文檔介紹了API網關
產品Android SDK
的使用方式。
該SDK適用於在移動端調用已接入API網關的私有、公開API以及目前在數據市場上售賣的API。
2. 安裝API網關 Android SDK
2.1 下載SDK
在API網關控製台左側找到SDK及示例
菜單,點擊前往SDK下載頁麵。
根據頁麵提示查看使用手冊
或者前往下載SDK
。需要注意區分代碼示例及SDK,代碼示例
適用於不準備使用SDK的用戶參考代碼完成API調用工作,而SDK
可以幫助用戶簡化API調用工作。
點擊前往下載SDK
鏈接後,瀏覽器會打開新頁麵,該頁麵為阿裏雲移動服務的SDK下載頁麵。在下載頁麵上勾選API網關
,然後點擊下載Android版
按鈕,根據頁麵提示下載到API網關的Android SDK。
2.2 在工程中依賴SDK
解壓下載到的SDK壓縮包,將解壓出的*.jar
文件放到Android工程的指定目錄中,以Android Studio為例:
將alicloud-android-apigateway-sdk-version.jar
放到應用工程的libs
目錄下,並在對應工程的build.gradle
文件中添加如下內容:
dependencies {
// 添加API網關android依賴, 從下載的sdk.zip中找到jar並拷貝到當前工程的libs目錄下。根據實際文件名填寫,version僅為示意。
compile files('libs/alicloud-android-apigateway-sdk-version.jar')
// 添加三方HTTP請求實現,建議使用3.4.1及以上版本
compile 'com.squareup.okhttp3:okhttp:3.4.1'
}
3. 應用程序初始化
在使用Android SDK調用API前,需要對SDK的上下文進行一些初始化配置,如權限聲明、傳遞應用上下文、訪問控製等。
3.1 權限聲明
在AndroidManifest.xml
中添加如下內容:
<uses-permission android:name="android.permission.INTERNET" />
3.2 AppKey配置
3.2.1 非安全方式配置AppKey及AppSecret
強烈建議隻在開發測試階段使用非安全的方式配置AppKey及AppSecret。強烈建議在控製台中為移動應用創建新的應用,不和其他端上應用共用AppKey。
從控製台中獲取到應用的AppKey及AppSecret,並在AndroidManifest.xml
中添加如下內容:
<application>
<meta-data android:name="com.alibaba.apigateway.appKey" android:value="appKey" />
<meta-data android:name="com.alibaba.apigateway.appSecret" android:value="appSecret" />
</application>
3.2.2 較安全地存儲AppKey及AppSecret
請使用阿裏雲提供的移動安全
產品,點擊查看產品介紹。
通過使用安全存儲
功能將AppKey及AppSecret較安全地存儲在移動應用端,點擊查看使用文檔。請按照上述使用文檔聯係移動安全產品將API網關所需要AppKey和AppSecret存放在安全圖片中。
用戶隻需要按照上述文檔依賴移動安全SDK並正確放置安全圖片,API網關會自動從安全圖片中獲取所需數據。
3.3 SDK初始化
在應用初始化的時候添加SDK初始化代碼。以下以MainActivity為例:
package ...;
import ...;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate() {
super.onCreate();
// 初始化API網關SDK
initGatewaySdk();
}
private void initGatewaySdk() {
// 初始化API網關
ApiGatewayClient.init(getApplicationContext(), false);
}
}
注意,如果SDK依賴的AppKey及AppSecret已通過移動安全服務
進行安全存儲,請使用以下初始化代碼:
ApiGatewayClient.init(getApplicationContext(), true);
4. SDK使用示例
4.1 調用API
同步調用:
以阿裏雲雲市場售賣的阿裏短信服務為例。
// 獲取服務
RpcService rpcService = ApiGatewayClient.getRpcService();
ApiRequest apiRequest = new ApiRequest();
// 設置請求地址、Path及Method
apiRequest.setAddress("https://sms.market.alicloudapi.com");
apiRequest.setPath("/singleSendSms");
apiRequest.setMethod(HttpMethod.GET);
// 按照文檔設置Query參數,支持設置Header參數、Form形式Body及二進製形式Body
apiRequest.addQuery("ParamString", "demo");
apiRequest.addQuery("RecNum", "demo");
apiRequest.addQuery("SignName", "demo");
apiRequest.addQuery("TemplateCode", "demo");
// 設置超時時間及其他
apiRequest.setTimeout(3000);
try {
ApiResponse apiResponse = rpcService.call(apiRequest);
// 處理apiResponse,以下為常用方法
// RequestId
// apiResponse.getRequestId();
// Code
// apiResponse.getCode();
// ErrorMessage
// apiResponse.getErrorMessage();
// Response Content
// apiResponse.getStringBody();
// Response Headers
// apiResponse.getHeaders();
} catch (ApiInvokeException e) {
// 處理異常
}
異步回調:
以阿裏雲雲市場售賣的身份證識別為例。
// 獲取服務
RpcService rpcService = ApiGatewayClient.getRpcService();
final ApiRequest apiRequest = new ApiRequest();
// 設置請求地址、Path及Method
apiRequest.setAddress("https://dm-51.data.aliyun.com");
apiRequest.setPath("/rest/160601/ocr/ocr_idcard.json");
apiRequest.setMethod(HttpMethod.POST);
// 按照文檔設置二進製形式Body,支持設置Query參數、Header參數、Form形式Body
apiRequest.setStringBody("JSON格式參數");
// 設置支持自簽等形式的證書,如果服務端證書合法請勿設置該值,僅在開發測試或者非常規場景下設置。
apiRequest.setTrustServerCertificate(true);
// 設置超時
apiRequest.setTimeout(10000);
rpcService.call(apiRequest, new ApiResponseCallback() {
@Override
public void onSuccess(ApiResponse apiResponse) {
// 處理apiResponse
}
@Override
public void onException(ApiInvokeException e) {
// 處理異常
}
});
最後更新:2016-11-23 16:04:20
上一篇:
Android SDK 使用指南__SDK_API 網關-阿裏雲
下一篇:
OBJECTC SDK 使用手冊__使用SDK調用已開放API_SDK_API 網關-阿裏雲
接入後HTTPS異常(SNI問題)__排錯手冊_Web 應用防火牆-阿裏雲
更換操作係統__實例_用戶指南_雲服務器 ECS-阿裏雲
日誌清洗最佳實踐__最佳實踐_業務實時監控服務 ARMS-阿裏雲
身份證識別__API介紹_文字識別_人工智能圖像類-阿裏雲
阿裏雲發布神龍雲服務器 宣稱可實現超強計算能力
高防上傳HTTPS證書出現“參數格式錯誤”報錯的解決辦法__問題排查_產品常見問題_DDoS 高防IP-阿裏雲
子訂單信息__數據類型_API文檔_域名-阿裏雲
NextHopItemType__數據類型_API 參考_雲服務器 ECS-阿裏雲
使用Shell/MR時的常見問題___常見問題_大數據開發套件-阿裏雲
用戶操作限製___售後支持計劃_支持計劃-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲