【问题标题】:How can I get a value from realm? Java/ Android如何从领域获得价值? Java/安卓
【发布时间】:2016-12-25 18:31:27
【问题描述】:

我得到了改造的回应。我从response.body() 获得访问令牌并将其保存到领域。但是如果我要在另一个活动或类中使用这个访问令牌 - 我怎样才能获得字段值?

@Override
public void onResponse(Call<AccessToken> call, Response<AccessToken> response) {
 int statusCode = response.code();
 if(statusCode == 200) {
 Realm.init(getApplicationContext());
 Realm realm = Realm.getDefaultInstance();
 realm.beginTransaction();
 AccessToken token=realm.createObject(AccessToken.class);  
 token.setAccessToken(response.body().getAccessToken());                        
 token.setRefreshToken(response.body().getRefreshToken());
 token.setTokenType(response.body().getTokenType());
 realm.commitTransaction();

在另一个班级我正在尝试这样的事情:

Realm realm = Realm.getDefaultInstance();
RealmResults<AccessToken> results = realm.where(AccessToken.class).findAll();
AccessToken token = new AccessToken();
token.setAccessToken(result.????)

如果我只知道字段名称,如何设置此值?我可以在调试中看到价值,但我怎样才能得到它呢?

【问题讨论】:

  • results.get(0)?

标签: java realm


【解决方案1】:

如果你希望只使用第一个元素,我建议调用findFirst() 方法而不是findAll()。或者如果你真的想使用所有的 AccessToken,你可以使用 foreach 循环:

for(AccessToken aToken : realm.where(AccessToken.class).findAll())
    // call AccessToken's getters if required

【讨论】:

    【解决方案2】:

    本教程展示了从领域数据库中添加删除和检索数据以及进行改造以获取服务器响应 http://blog.tamanneupane.com/simple-realm-demo-with-retrofit-and-weather-api/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-20
      • 2022-09-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多