Xamarin 엔드-투-엔드 데모

improve this page | report issue

개요

이 데모의 목적은 엔드-투-엔드 플로우를 경험해보는 것입니다.

  1. MobileFirst Xamarin 클라이언트 SDK가 번들된 샘플 애플리케이션을 MobileFirst Operations Console과 등록합니다.
  2. 새 어댑터 또는 제공된 어댑터가 MobileFirst Operations Console에 배치됩니다.
  3. 자원 요청을 하도록 애플리케이션 로직이 변경됩니다.

종료 결과:

  • MobileFirst Server ping을 실행함.

전제조건:

  • Xamarin Studio
  • 선택사항. 독립형 MobileFirst Server (다운로드)

1. MobileFirst Server 시작

Mobile Foundation 인스턴스를 작성했는지 확인하십시오. 또는
MobileFirst Developer Kit를 사용하는 경우, 서버의 폴더로 이동해서 Mac 및 Linux의 경우 ./run.sh 또는 Windows의 경우 run.cmd 명령을 실행하십시오.

2. 애플리케이션 작성

브라우저 창에서 URL http://your-server-host:server-port/mfpconsole을 로드하여 MobileFirst Operations Console을 여십시오. 로컬에서 실행 중인 경우 http://localhost:9080/mfpconsole을 사용하십시오. 사용자 이름/비밀번호는 admin/admin입니다.

  1. 애플리케이션 옆에 있는 새로 작성 단추를 클릭하십시오.
    • Android 플랫폼을 선택하십시오.
    • com.ibm.mfpstarterxamarin애플리케이션 ID로 입력하십시오(다음 단계에서 다운로드할 애플리케이션 발판에 따라서).
    • 1.0버전 값으로 입력하십시오.
    • 애플리케이션 등록을 클릭하십시오.

    애플리케이션 등록

3. 애플리케이션 로직 편집

  • Xamarin 프로젝트를 작성하십시오.
  • SDK 추가 학습서에 언급된 대로 Xamarin SDK를 추가하십시오.
  • 아래와 같이 클래스 파일에서 유형 IWorklightClient의 특성을 추가하십시오.

     /// <summary>
     /// Gets or sets the worklight sample client.
     /// </summary>
     /// <value>The worklight client.</value>
     public static IWorklightClient WorklightClient {get; set;}
    
  • iOS용으로 개발 중인 경우 AppDelegate.cs 파일의 FinishedLaunching 메소드 내부에 다음 코드를 붙여넣으십시오.

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

    <ClassName>을 사용자 코드로 바꾸십시오.

  • Android용으로 개발 중인 경우 MainActivity.cs 파일의 OnCreate 메소드 내부에 코드의 다음 행을 포함시키십시오.

     <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. 조치 → 샘플 다운로드 옵션을 선택하십시오. “Hello World” Java 어댑터 샘플을 다운로드하십시오.

    Maven 및 MobileFirst CLI가 설치되지 않은 경우, 화면상의 개발 환경 설정 지시사항을 따르십시오.

  2. 명령행 창에서 어댑터의 Maven 프로젝트 루트 폴더로 이동해서 다음 명령을 실행하십시오.

    mfpdev adapter build
    
  3. 빌드가 완료되면 조치 → 어댑터 배치 조치를 사용하여 MobileFirst Operations Console에서 배치하십시오. [adapter]/target 폴더에서 어댑터를 찾을 수 있습니다.

    어댑터 배치

5. 애플리케이션 테스트

  1. Xamarin Studio에서 mfpclient.plist 파일을 선택하고 프로토콜, 호스트포트 특성을 사용자의 MobileFirst Server에 올바른 값으로 편집하십시오.
    • 로컬 MobileFirst Server를 사용 중인 경우, 일반적으로 값은 http, localhost9080입니다.
    • 원격 MobileFirst Server를 사용 중인 경우(Bluemix에서), 일반적으로 값은 https, your-server-address443입니다.
  2. 재생 단추를 누르십시오.


결과

  • Ping MobileFirst Server 단추를 클릭하면 Connected to MobileFirst Server가 표시됩니다.
  • 애플리케이션이 MobileFirst Server에 연결할 수 없는 경우, 배치된 Java 어댑터를 사용하는 자원 요청이 발생합니다.

그 후에 어댑터 응답이 Xamarin Studio 콘솔에 출력됩니다.

MobileFirst Server에서 자원을 호출한 애플리케이션의 이미지

다음 단계

애플리케이션에서 어댑터 사용하기 및 MobileFirst 보안 프레임워크를 사용하여 푸시 알림과 같은 추가 서비스를 통합하는 방법에 대해 더 학습합니다.

Last modified on April 24, 2017