End-to-End-Demonstration für Xamarin

improve this page | report issue

Übersicht

Bei der folgenden Demonstration geht es darum, einen End-to-End-Ablauf zu veranschaulichen:

  1. Ein im Lieferumfang des MobileFirst-Client-SDK für Xamarin enthaltene Beispielanwendung wird in der MobileFirst Operations Console registriert.
  2. Ein neuer oder bereitgestellter Adapter wird über die MobileFirst Operations Console implementiert.
  3. Die Anwendungslogik wird geändert, um eine Ressourcenanforderung zu ermöglichen.

Endergebnis:

  • Erfolgreiches Absetzen eines Pingsignals an MobileFirst Server

Voraussetzungen:

  • Xamarin Studio
  • Optional: Eigenständiger MobileFirst Server (Download)

1. MobileFirst Server starten

Stellen Sie sicher, dass eine Mobile-Foundation-Instanz erstellt wurde oder,
falls Sie das MobileFirst Developer Kit verwenden, navigieren Sie zum Ordner des Servers und führen Sie unter Mac und Linux den Befehl ./run.sh oder unter Windows den Befehl run.cmd aus.

2. Anwendung erstellen

Öffnen Sie in einem Browser die MobileFirst Operations Console. Laden Sie dazu die URL http://Ihr_Server-Host:Serverport/mfpconsole. Wenn Sie die Konsole lokal ausführen, verwenden Sie http://localhost:9080/mfpconsole. Geben Sie für Benutzername/Kennwort die Werte admin/admin an.

  1. Klicken Sie neben Anwendungen auf die Schaltfläche Neu.
    • Wählen Sie die Android-Plattform aus.
    • Geben Sie für die Anwendungs-ID den Wert com.ibm.mfpstarterxamarin ein. (Der Wert hängt vom Anwendungsgerüst ab, das Sie im nächsten Schritt herunterladen werden.)
    • Geben Sie für die Version den Wert 1.0 ein.
    • Klicken Sie auf Anwendung registrieren.

    Anwendung registrieren

3. Anwendungslogik bearbeiten

  • Erstellen Sie ein Xamarin-Projekt.
  • Fügen Sie das Xamarin-SDK hinzu, wie es im Lernprogramm SDK hinzufügen beschrieben ist.
  • Fügen Sie wie unten zu jeder Klassendatei eine Eigenschaft vom Typ IWorklightClient hinzu.

     /// <summary>
     /// Ruft den Worklight-Beispielclient ab oder legt diesen fest
     /// </summary>
     /// <value>Worklight-Client</value>
     public static IWorklightClient WorklightClient {get; set;}
    
  • Wenn Sie für iOS entwickeln, fügen Sie in der Datei AppDelegate.cs den folgenden Code zur Methode FinishedLaunching hinzu:

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

    Ersetzen Sie <Klassenname> durch den Namen Ihrer Klasse.

  • Wenn Sie für Android entwickeln, nehmen Sie in der Datei MainActivity.cs die folgende Codezeile in die Methode OnCreate auf:

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

    Ersetzen Sie <Klassenname> durch den Namen Ihrer Klasse.

  • Definieren Sie eine Methode, um das Zugriffstoken abzurufen und führen Sie wie unten eine Ressourcenanforderung an den MFP Server aus.

    ```csharp 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); } } } }


* Rufen Sie die Methode **ObtainToken** aus einem Klassenkonstruktor heraus oder in Verbindung mit dem Klicken auf eine Schaltfläche auf.

### 4. Adapter implementieren
{: #4-deploy-an-adapter }
Laden Sie [dieses vorbereitete Adapterartefakt](../javaAdapter.adapter) herunter und implementieren Sie
es über die MobileFirst Operations Console, indem Sie **Aktionen → Adapter implementieren** auswählen. 

Alternativ können Sie neben **Adapter** auf die Schaltfläche **Neu** klicken.   

1. Wählen Sie **Aktionen → Beispiel herunterladen** aus. Laden Sie das **Java**-Adapterbeispiel "Hello World" herunter.

   > Wenn Maven und die MobileFirst CLI nicht installiert sind,
folgen Sie den auf dem Bildschirm angezeigten Anweisungen unter **Entwicklungsumgebung einrichten**.



2. Navigieren Sie in einem **Befehlszeilenfenster** zum Stammverzeichnis des Adapter-Maven-Projekts und führen Sie den folgenden Befehl aus:

   ```bash
   mfpdev adapter build
  1. Wenn der Build fertiggestellt ist, implementieren Sie den Adapter über die MobileFirst Operations Console, indem Sie Aktionen → Adapter implementieren auswählen. Sie finden den Adapter im Ordner [adapter]/target.

    Adapter implementieren

5. Anwendung testen

  1. Wählen Sie in Xamarin Studio die Datei mfpclient.properties aus und bearbeiten Sie die Eigenschaften protocol, host und port. Geben Sie die für diese Eigenschaften die entsprechenden Werte für Ihren MobileFirst Server ein.
    • Wenn Sie einen lokalen MobileFirst Server verwenden, lauten die Werte normalerweise http, localhost und 9080.
    • Wenn Sie einen fernen MobileFirst Server (für IBM Cloud) verwenden, lauten die Werte in der Regel https, Ihre_Serveradresse und 443.
    • Wenn Sie einen Kubernetes-Cluster in IBM Cloud Private verwenden und der Implementierungstyp NodePort ist, ist der Portwert in der Regel der NodePort, der vom Service im Kubernetes-Cluster zugänglich gemacht wird.
  2. Klicken Sie auf die Schaltfläche Play.


Ergebnisse

  • Wenn Sie auf die Schaltfläche Ping MobileFirst Server klicken, wird Connected to MobileFirst Server angezeigt.
  • Wenn die Anwendung eine Verbindung zu MobileFirst Server herstellen konnte, findet ein Ressourcenanforderungsaufruf unter Verwendung des implementierten Java-Adapters statt.

Die Antwort des Adapters wird in der Konsole von Xamarin Studio ausgegeben.

Anwendung, die erfolgreich eine Ressource vom MobileFirst Server

Nächste Schritte

Informieren Sie sich über die Verwendung von Adaptern in Anwendungen und über die Integration von zusätzlichen Services wie Push-Benachrichtigungen mithilfe des MobileFirst-Sicherheitsframeworks. Weitere Möglichkeiten sind:

Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.
Last modified on February 27, 2020