我需要序列化一个Retrofit Call实例,以便稍后执行。
以下是一个电话示例:
Calls calls = NetworkHelper.getRetrofit().create(Calls.class);
Call<JsonResponse> call = calls.checkInAtEvent(user.getTokenID());
我需要序列化它并存储在OrmLite中,这样当用户再次打开应用程序时,就会执行此调用。
我想到的唯一方法是将方法checkInAtEvent
和参数user.getTokenID()
存储在一个对象中,这样我就可以识别出来并执行它。但是,由于我有几个调用,我需要使用Reflect来实例化给定字符串名称的对象。
是否有更简单的方法,可能使用OkHttp或其他东西?
感谢。
答案 0 :(得分:0)
如果我理解正确,那么重点是存储将在应用程序恢复时执行的命令。事实上,这是一个改装电话是IMO的一个侧面问题。我只会在SharedPreferences
中存储一个标志并在启动时检查它。如果它在那里,请进行呼叫并删除标志。您可以存储ID等所需的任何信息,也可以存储键值对的值。如果您在启动时可能需要做多个不同的事情,那么也可以处理,但可能会有所不同。