快速開始
網(wǎng)關(guān)是連接客戶端與服務(wù)端的橋梁,客戶端通過網(wǎng)關(guān)來訪問后臺服務(wù)接口。
通過使用網(wǎng)關(guān),您可以實現(xiàn)以下目的:
通過動態(tài)代理的方式,封裝客戶端和服務(wù)端之間的通訊。
如果服務(wù)端和客戶端定義了一致的接口,可由服務(wù)端自動生成代碼并導(dǎo)出給客戶端使用。
對
RpcException
進(jìn)行統(tǒng)一的異常處理,彈對話框、toast 消息框等。
移動網(wǎng)關(guān)支持 原生 AAR 接入 和 組件化(Portal&Bundle)接入 兩種接入方式。
前置條件
若采用原生 AAR 方式接入,需要先 將 mPaaS 添加到項目。
若采用組件化方式接入,需要先完成 組件化接入流程。
添加 SDK
原生 AAR 方式
參考 AAR 組件管理,通過 組件管理(AAR) 在工程中安裝 移動網(wǎng)關(guān) 組件。
組件化(Portal&Bundle)方式
在 Portal 和 Bundle 工程中通過 組件管理 安裝 移動網(wǎng)關(guān) 組件。更多信息,請參考 組件化方式接入流程。
初始化 mPaaS
如果您使用 原生 AAR 接入 ,您需要初始化 mPaaS。
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// mPaaS 初始化
MP.init(this);
}
}
詳情請參考:初始化 mPaaS。
生成 RPC 代碼
當(dāng) App 在移動網(wǎng)關(guān)控制臺接入后臺服務(wù)后,進(jìn)入 mPaaS 控制臺,從左側(cè)導(dǎo)航欄選擇 移動網(wǎng)關(guān) > API 管理 > 生成代碼,下載客戶端的 RPC 代碼。詳細(xì)說明參見 注冊 API 相關(guān)文檔。
下載的 RPC 代碼結(jié)構(gòu)如下,包括 RPC 配置、request 模型和 response 模型。
調(diào)用 RPC
客戶端發(fā)起 PRC 調(diào)用。代碼示例如下:
// 獲取 client 實例
RpcDemoClient client = MPRpc.getRpcProxy(RpcDemoClient.class);
// 設(shè)置請求
GetIdGetReq req = new GetIdGetReq();
req.id = "123";
req.age = 14;
req.isMale = true;
// 發(fā)起 RPC 請求
try {
String response = client.getIdGet(req);
} catch (RpcException e) {
// 處理 RPC 請求異常
Log.i("RpcException", "code: " + e.getCode() + " msg: " + e.getMsg());
}
RPC 調(diào)用異常會統(tǒng)一通過 RpcException
拋出來,可根據(jù) RpcException
的 code
結(jié)果碼做相應(yīng)處理,錯誤碼詳情參見 網(wǎng)關(guān)結(jié)果碼說明。