本质上,您必须填写 GitHub 上ex3ndr/telegram-api存储库中给出的代码中的空白。如果你有你构建的库 Jar 文件和tl-api-v12.jar
Eclipse 项目的 Java 构建路径上的文件,那么查看 README 的RPC Calls部分和
首先,您需要使用您的API 凭据设置一个AppInfo
对象,然后您还必须创建一些实现和接口的新类。一旦这些可用,您可以创建对象并对 Telegram 服务进行 RPC 调用,如下所示;在这种情况下使用建议的方法:AbsApiState
ApiCallback
TelegramApi
auth.checkPhone
// TODO set up AbsApiState, AppInfo and ApiCallback objects
TelegramApi api = new TelegramApi(state, appInfo, apiCallback);
// Create request
String phoneNumber = "1234567890";
TLRequestAuthCheckPhone checkPhone = new TLRequestAuthCheckPhone(phoneNumber);
// Call service synchronously
TLCheckedPhone checkedPhone = api.doRpcCall(checkPhone);
boolean invited = checkedPhone.getPhoneInvited();
boolean registered = checkedPhone.getPhoneRegistered();
// TODO process response further
该TelegramApi
对象代表您与远程服务的连接,这是一种 API 的请求响应样式。RPC 调用是通过该方法进行的,该方法从包(示例中的类型)中doRpcCall
获取一个请求对象,并填充了适当的参数。然后返回一个响应对象(如上),当它可用时,它会与结果一起返回。org.telegram.api.requests
TLRequestAuthCheckPhone
TLCheckedPhone
在异步调用的情况下,该方法立即返回,并onResult
在结果可用时执行回调方法:
// Call service aynchronously
api.doRpcCall(checkPhone, new RpcCallbackEx<TLCheckedPhone>() {
public void onConfirmed() { }
public void onResult(TLCheckedPhone result) {
boolean invited = checkedPhone.getPhoneInvited();
boolean registered = checkedPhone.getPhoneRegistered();
// TODO process response further
}
public void onError(int errorCode, String message) { }
});