2016-12-25 137 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