Подробная демонстрация для Xamarin

improve this page | report issue

Обзор

В этой демонстрации рассматриваются все этапы потока:

  1. Пример приложения, поставляемый вместе с SDK клиента Xamarin MobileFirst, регистрируется с помощью MobileFirst Operations Console.
  2. В MobileFirst Operations Console развертывается новый или предоставленный адаптер.
  3. В логику приложения вносятся изменения для запроса ресурса.

Конечный результат:

  • Проверка связи с MobileFirst Server.

Предварительные требования:

  • Xamarin Studio
  • Необязательно. Автономный экземпляр MobileFirst Server (загрузить)

1. Запуск MobileFirst Server

Убедитесь, что создан экземпляр Mobile Foundation либо
В случае применения MobileFirst Developer Kit перейдите в папку сервера и выполните следующую команду: ./run.sh (Mac и Linux) или run.cmd (Windows).

2. Создание приложения

В браузере откройте MobileFirst Operations Console с помощью следующего URL: http://your-server-host:server-port/mfpconsole. В локальном режиме введите следующий адрес: http://localhost:9080/mfpconsole. Идентификационные данные пользователя: admin/admin.

  1. Нажмите кнопку Создать рядом с разделом Приложения
    • Выберите платформу Android
    • Введите com.ibm.mfpstarterxamarin в качестве идентификатора приложения (в зависимости от заготовки приложения, которая будет загружена на следующем шаге)
    • Введите 1.0 в качестве версии
    • Нажмите кнопку Зарегистрировать приложение

    Регистрация приложения

3. Изменение логики приложения

  • Создайте проект Xamarin.
  • Добавьте SDK Xamarin в соответствии с инструкциями из учебника Добавление SDK.
  • Добавьте свойство типа IWorklightClient во все файлы классов.

     /// <summary>
     /// Получает или задает пример клиента worklight.
     /// </summary>
     /// <value>Клиент worklight.</value>
     public static IWorklightClient WorklightClient {get; set;}
    
  • В случае разработки для iOS вставьте следующий код в метод FinishedLaunching из файла AppDelegate.cs:

     <ClassName>.WorklightClient = WorklightClient.CreateInstance();
    

    Вместо <ClassName> укажите имя класса.

  • В случае разработки для Android добавьте следующую строку в метод OnCreate из файла MainActivity.cs:

     <ClassName>.WorklightClient = WorklightClient.CreateInstance(this);
    

    Вместо <ClassName> укажите имя класса.

  • Создайте метод для получения маркера доступа и запроса ресурса на сервере MFP.

      public async void ObtainToken()
             {
              try
                     {
    
                         IWorklightClient _newClient = App.WorklightClient;
                         WorklightAccessToken accessToken = await _newClient.AuthorizationManager.ObtainAccessToken("");
    
                         if (accessToken.Value != null && accessToken.Value != "")
                         {
                             System.Diagnostics.Debug.WriteLine("Received the following access token value: " + accessToken.Value);
                             StringBuilder uriBuilder = new StringBuilder().Append("/adapters/javaAdapter/resource/greet");
    
                             WorklightResourceRequest request = _newClient.ResourceRequest(new Uri(uriBuilder.ToString(), UriKind.Relative), "GET");
                             request.SetQueryParameter("name", "world");
                             WorklightResponse response = await request.Send();
    
                             System.Diagnostics.Debug.WriteLine("Success: " + response.ResponseText);
                         }
                     }
                     catch (Exception e)
                     {
                         System.Diagnostics.Debug.WriteLine("An error occurred: '{0}'", e);
                     }
                 }
             }
      }
    
  • Вызовите метод ObtainToken из конструктора класса или при нажатии кнопки.

4. Развертывание адаптера

Загрузите этот подготовленный артефакт .adapter и разверните его с помощью MobileFirst Operations Console. Для этого выберите Действия → Развернуть адаптер.

Кроме того, можно нажать кнопку Создать рядом с разделом Адаптеры.

  1. Выберите Действия → Загрузить пример. Загрузите пример адаптера Java “Hello World”.

    Если Maven и MobileFirst CLI не установлены, выполните инструкции по настройке среды разработки.

  2. В окне Командная строка перейдите в корневую папку проекта Maven адаптера и выполните следующую команду:

    mfpdev adapter build
    
  3. После завершения компоновки разверните адаптер с помощью MobileFirst Operations Console. Для этого выберите Действия → Развернуть адаптер. Адаптер расположен в папке [adapter]/target.

    Развертывание адаптера

5. Тестирование приложения

  1. В Xamarin Studio выберите файл mfpclient.plist и укажите значения свойств protocol, host и port с учетом параметров сервера MobileFirst Server.
    • Обычные значения в случае применения локального экземпляра MobileFirst Server: http, localhost и 9080.
    • Обычные значения в случае применения удаленного экземпляра MobileFirst Server (в Bluemix): https, your-server-address и 443.
  2. Нажмите кнопку Воспроизвести.


Результаты

  • При нажатии кнопки Проверить связь с сервером MobileFirst выдается сообщение Установлено соединение с сервером MobileFirst.
  • Если приложению удалось подключиться к MobileFirst Server, ресурс запрашивается с помощью развернутого адаптера Java.

Ответ адаптера отображается в консоли Xamarin Studio.

Изображение приложения, успешно вызвавшего ресурс из MobileFirst Server

Дальнейшие действия

Узнайте больше об использовании адаптеров в приложениях, интеграции дополнительных служб, таких как Push-уведомления, с помощью среды защиты MobileFirst и других вопросах:

Last modified on April 10, 2017