快速开始

网关是连接客户端与服务端的桥梁,客户端通过网关来访问后台服务接口。

通过使用网关,您可以实现以下目的:

  • 通过动态代理的方式,封装客户端和服务端之间的通讯。

  • 如果服务端和客户端定义了一致的接口,可由服务端自动生成代码并导出给客户端使用。

  • RpcException 进行统一的异常处理,弹对话框、toast 消息框等。

移动网关支持 原生 AAR 接入组件化(Portal&Bundle)接入 两种接入方式。

前置条件

添加 SDK

原生 AAR 方式

参考 AAR 组件管理,通过 组件管理(AAR) 在工程中安装 移动网关 组件。

组件化(Portal&Bundle)方式

在 Portal 和 Bundle 工程中通过 组件管理 安装 移动网关 组件。更多信息,请参考 组件化方式接入流程

初始化 mPaaS

如果您使用 原生 AAR 接入 ,您需要初始化 mPaaS。

public class MyApplication extends Application {
    
    @Override
    public void onCreate() {
        super.onCreate();
        // mPaaS 初始化
        MP.init(this);    
    }
}

详情请参考:初始化 mPaaS

生成 RPC 代码

当 App 在移动网关控制台接入后台服务后,进入 mPaaS 控制台,从左侧导航栏选择 移动网关 > API 管理 > 生成代码,下载客户端的 RPC 代码。详细说明参见 注册 API 相关文档。

下载的 RPC 代码结构如下,包括 RPC 配置、request 模型和 response 模型。RPC

调用 RPC

客户端发起 PRC 调用。代码示例如下:

// 获取 client 实例
RpcDemoClient client = MPRpc.getRpcProxy(RpcDemoClient.class);
// 设置请求
GetIdGetReq req = new GetIdGetReq();
req.id = "123";
req.age = 14;
req.isMale = true;
// 发起 RPC 请求
try {
    String response = client.getIdGet(req);
} catch (RpcException e) {
    // 处理 RPC 请求异常
    Log.i("RpcException", "code: " + e.getCode() + " msg: " + e.getMsg());
}

RPC 调用异常会统一通过 RpcException 抛出来,可根据 RpcExceptioncode 结果码做相应处理,错误码详情参见 网关结果码说明

相关链接