Пример синхронной и асинхронной работы с фреймворком

Запрос может выполняться синхронно и асинхронно:

Для выполнения аутентификации синхронно или асинхронно на сервере мобильной платформы создайте приложение «AsynchronousRequestActivity», в котором используется метод auth, реализованный в модуле AuthAPI.

Приложение «AsynchronousRequestActivity» состоит из одного экрана и кнопок:

Для просмотра результата работы приложения используйте интерактивный пример:

Нажмите любую кнопку

public class AsynchronousRequestActivity extends AppCompatActivity {
   private static final String MY_URL = "https://testmasterfmp.fsight.cloud/";
   private static final VersionAPI MY_VERSION_API = VersionAPI.V_1;
   private static final String MY_ENVIRONMENT = "Leonid_environment";
   private static final String MY_PROJECT = "Leonid_project";
   private static final String MY_VERSION = "v1";
   private static final String MY_LOGIN = "Leonid";
   private static final String MY_PASSWORD = "123123";
   private static final String TAG = "AsynchronousRequest";
 
   private HyperHive hyperHive;
 
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_asynchronous_request);
 
       Handler uiHandler = new Handler();
 
       hyperHive = new HyperHiveState(getApplicationContext())
               .setHostWithSchema(MY_URL)
               .setApiVersion(MY_VERSION_API)
               .setEnvironmentSlug(MY_ENVIRONMENT)
               .setProjectSlug(MY_PROJECT)
               .setVersionProject(MY_VERSION)
               .setHandler(uiHandler)
               .buildHyperHive();
   }
 
   // Выполним метод аутентификации синхронно
   public void authenticationSynchronous(View view) {
       boolean status = hyperHive.authAPI.auth(MY_LOGIN, MY_PASSWORD, true).execute().isOk();
       showStatus(status);
   }
 
   // Выполним метод аутентификации асинхронно
   public void authenticationAsynchronous(View view) {
       // Реализуем анонимный интерфейс Callback
       hyperHive.authAPI.auth(MY_LOGIN, MY_PASSWORD, true).enqueue(new Callback<basestatus>() {
           @Override
           // Получим статус выполнения
           public void onResponse(Call<basestatus> call, BaseStatus baseStatus) {
               showStatus(baseStatus.isOk());
           }
 
           @Override
           public void onFailure(Call<basestatus> call, Throwable throwable) {
               Log.d(TAG, "onFailure: ");
           }
       });
   }
 
   public void showStatus(boolean status) {
       Log.d(TAG, "auth: " + status);
       Toast.makeText(this, "auth: " + status, Toast.LENGTH_LONG).show();
   }
}

См. также:

Примеры использования Android-фреймворка