Загрузка, сохранение и использование данных аутентификации в Box Android API

Недавно я пытался внедрить Box в мое приложение для Android. Я знаю, как запустить действие аутентификации и получить готовый к работе объект BoxAndroidClient, но я не знаю, как сохранить токены (SharedPreferences?), Загрузить их, а затем выполнить аутентификацию с использованием загруженных токенов, чтобы у пользователя не было входить в свою учетную запись box каждый раз, когда он хотел бы получить доступ к своим файлам в облаке.

Я попытался обновить ранее сохраненные токены (из-за исключения, которое сообщало мне, что мой AccessToken неверен).

BoxAndroidOAuthData data = new BoxAndroidOAuthData(new HashMap<String, Object>(){
    private static final long serialVersionUID = 1L;
    {
        put(BoxAndroidOAuthData.FIELD_ACCESS_TOKEN, prefs.acc);
        put(BoxAndroidOAuthData.FIELD_REFRESH_TOKEN, prefs.ref);
        put(BoxAndroidOAuthData.FIELD_EXPIRES_IN, prefs.exp);
        put(BoxAndroidOAuthData.FIELD_TOKEN_TYPE, prefs.typ);
    }
});
data = new BoxAndroidOAuthData(client.getOAuthManager().refreshOAuth(BoxOAuthRequestObject.refreshOAuthRequestObject(data.getRefreshToken(), C, S)));

И у меня есть еще одно исключение:

07-02 22:07:16.433: W/System.err(4684): com.box.restclientv2.exceptions.BoxRestException: Unexpected token (END_OBJECT), expected FIELD_NAME: missing property 'type' that is to contain type id  (for class com.box.boxjavalibv2.dao.BoxServerError)
07-02 22:07:16.433: W/System.err(4684):  at [Source: java.io.StringReader@b55b2c78; line: 1, column: 69]
07-02 22:07:16.433: W/System.err(4684):     at com.box.restclientv2.responseparsers.DefaultBoxJSONResponseParser.parse(DefaultBoxJSONResponseParser.java:75)
07-02 22:07:16.433: W/System.err(4684):     at com.box.boxjavalibv2.responseparsers.ErrorResponseParser.parse(ErrorResponseParser.java:31)
07-02 22:07:16.433: W/System.err(4684):     at com.box.restclientv2.responses.DefaultBoxResponse.parseResponse(DefaultBoxResponse.java:51)
07-02 22:07:16.433: W/System.err(4684):     at com.box.boxjavalibv2.resourcemanagers.BoxResourceManager.getResponseAndParse(BoxResourceManager.java:168)
07-02 22:07:16.433: W/System.err(4684):     at com.box.boxjavalibv2.resourcemanagers.BoxResourceManager.getResponseAndParseAndTryCast(BoxResourceManager.java:143)
07-02 22:07:16.433: W/System.err(4684):     at com.box.boxjavalibv2.resourcemanagers.BoxOAuthManager.refreshOAuth(BoxOAuthManager.java:68)


Поскольку я не нашел ни одного учебного пособия о том, как правильно выполнять аутентификацию в Java (примеры, включенные в SDK, не охватывают какой-либо метод сохранения токенов), кто-нибудь может дать хороший пример для этого?

Ответы на вопрос(2)

Ваш ответ на вопрос