2016-12-25 138 views
-1

我通过改造得到了答复。我从response.body()获得一个访问令牌并将其保存到领域。但是,如果我要在另一个活动或类中使用此acces令牌 - 我如何获取字段值?如何从领域获得价值? Java/Android

@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.????) 

如何设置这个值,如果我只知道字段名?我可以在调试中看到价值,但我怎么能得到它?

+0

'结果。得到(0)'? – EpicPandaForce

回答

0

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

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