Tworzenie aplikacji platformy Xamarin.Forms na platformie Azure
Omówienie
W tym samouczku przedstawiono sposób dodawania usługi zaplecza opartej na chmurze do aplikacji mobilnej platformy Xamarin.Forms przy użyciu funkcji Mobile Apps usługi Azure App Service jako zaplecza. Tworzysz nowe zaplecze funkcji Mobile Apps oraz prostą aplikację platformy Xamarin.Forms typu Lista czynności do wykonania, która przechowuje dane aplikacji na platformie Azure.
Wykonanie czynności opisanych w tym samouczku jest wymaganiem wstępnym dla wszystkich innych samouczków usługi Mobile Apps dotyczących aplikacji platformy Xamarin.Forms.
Wymagania wstępne
Do ukończenia tego samouczka są potrzebne są następujące elementy:
Aktywne konto platformy Azure. Jeśli nie masz konta, możesz utworzyć konto wersji próbnej platformy Azure i uzyskać maksymalnie 10 bezpłatnych aplikacji mobilnych, z których możesz korzystać nawet po zakończeniu okresu ważności wersji próbnej. Aby uzyskać więcej informacji, zobacz Bezpłatna wersja próbna platformy Azure.
Visual Studio Tools for Xamarin w programie Visual Studio 2017 lub nowszym lub Visual Studio dla komputerów Mac. Instrukcje znajdują się na stronie z opisem instalacji platformy Xamarin.
(opcjonalnie) Aby móc tworzyć aplikacje dla systemu iOS, wymagany jest komputer Mac z programem Xcode 9.0 lub nowszym. Visual Studio dla komputerów Mac można użyć do tworzenia aplikacji systemu iOS lub programu Visual Studio 2017 lub nowszego (tak długo, jak komputer Mac jest dostępny w sieci).
Tworzenie nowego zaplecza funkcji Mobile Apps
Zaloguj się w witrynie Azure Portal.
Kliknij pozycję Utwórz zasób.
W polu wyszukiwania wpisz Web App.
Na liście wyników wybierz pozycję Aplikacja internetowa z witryny Marketplace.
Wybierz subskrypcję igrupę zasobów (wybierz istniejącą grupę zasobów lub utwórz nową (używając tej samej nazwy co aplikacja)).
Wybierz unikatową nazwę aplikacji internetowej.
Wybierz domyślną opcję Publikuj jako Kod.
W stosie Środowisko uruchomieniowe należy wybrać wersję w obszarze ASP.NET lub Node. Jeśli tworzysz zaplecze platformy .NET, wybierz wersję w obszarze ASP.NET. W przeciwnym razie, jeśli jest przeznaczona dla aplikacji opartej na węźle, wybierz jedną z wersji z węzła.
Wybierz odpowiedni system operacyjny, Linux lub Windows.
Wybierz region , w którym chcesz wdrożyć tę aplikację.
Wybierz odpowiedni App Service plan i wybierz pozycję Przejrzyj i utwórz.
W obszarze Grupa zasobów wybierz istniejącą grupę zasobów lub utwórz nową (używając tej samej nazwy, co aplikacja).
Kliknij pozycję Utwórz. Zanim przejdziesz do kolejnych kroków, odczekaj kilka minut, aby usługa została wdrożona pomyślnie. Obserwuj ikonę powiadomień (dzwonek) w nagłówku portalu, pokazującą aktualizacje stanu.
Po zakończeniu wdrażania kliknij sekcję Szczegóły wdrożenia , a następnie kliknij pozycję Zasób typu Microsoft.Web/sites. Spowoduje to przejście do właśnie utworzonej aplikacji internetowej App Service.
Kliknij blok Konfiguracja w obszarze Ustawienia i w ustawieniach aplikacji kliknij przycisk Nowe ustawienie aplikacji .
Na stronie ustawienia Dodaj/Edytuj aplikację wprowadź ciąg Nazwa jako MobileAppsManagement_EXTENSION_VERSION i Wartość jako najnowsza i naciśnij przycisk OK.
Wszystko jest ustawione na użycie tej nowo utworzonej aplikacji internetowej App Service jako aplikacji mobilnej.
Tworzenie połączenia z bazą danych i konfigurowanie projektu klienta i serwera
Pobierz przewodniki Szybki start zestawu SDK klienta dla następujących platform:
iOS (Objective-C)
iOS (Swift)
Android (Java)
Xamarin.iOS
Xamarin.Android
Xamarin.Forms
Cordova
Windows (C#)Uwaga
Jeśli używasz projektu systemu iOS, musisz pobrać plik "azuresdk-iOS-*.zip" z najnowszej wersji usługi GitHub. Rozpakuj
MicrosoftAzureMobile.framework
i dodaj plik do katalogu głównego projektu.Musisz dodać połączenie z bazą danych lub nawiązać połączenie z istniejącym połączeniem. Najpierw określ, czy utworzysz magazyn danych, czy użyjesz istniejącego magazynu danych.
Utwórz nowy magazyn danych: jeśli zamierzasz utworzyć magazyn danych, skorzystaj z następującego przewodnika Szybki start:
Szybki start: wprowadzenie do pojedynczych baz danych w usłudze Azure SQL Database
Istniejące źródło danych: postępuj zgodnie z poniższymi instrukcjami, jeśli chcesz użyć istniejącego połączenia z bazą danych
format parametrów połączenia SQL Database —
Data Source=tcp:{your_SQLServer},{port};Initial Catalog={your_catalogue};User ID={your_username};Password={your_password}
{your_SQLServer} Nazwa serwera, można go znaleźć na stronie przeglądu bazy danych i jest zwykle w postaci "server_name.database.windows.net". {port} zwykle 1433. {your_catalogue} Nazwa bazy danych. {your_username} Nazwa użytkownika w celu uzyskania dostępu do bazy danych. {your_password} Hasło dostępu do bazy danych.
Dodaj parametry połączenia do aplikacji mobilnej W App Service możesz zarządzać parametrami połączenia dla aplikacji przy użyciu opcji Konfiguracja w menu.
Aby dodać parametry połączenia:
Kliknij kartę Ustawienia aplikacji .
Kliknij pozycję [+] Nowe parametry połączenia.
Musisz podać nazwę, wartość i typ parametrów połączenia.
Wpisz nazwę jako
MS_TableConnectionString
Wartość powinna być ciągiem łączenia utworzonym w kroku przed.
W przypadku dodawania parametrów połączenia do bazy danych Usługi SQL Azure wybierz pozycję SQLAzure w obszarze typ.
Usługa Azure Mobile Apps ma zestawy SDK dla platformy .NET i Node.js zapleczy.
zapleczeNode.js
Jeśli zamierzasz użyć Node.js aplikacji Szybki start, postępuj zgodnie z poniższymi instrukcjami.
W Azure Portal przejdź do pozycji Łatwe tabele, zobaczysz ten ekran.
Upewnij się, że parametry połączenia SQL zostały już dodane na karcie Konfiguracja . Następnie zaznacz pole wyboru Potwierdzam, że spowoduje to zastąpienie całej zawartości witryny i kliknij przycisk Utwórz tabelę TodoItem .
W obszarze Łatwe tabele kliknij przycisk + Dodaj .
Utwórz tabelę z dostępem
TodoItem
anonimowym.
Zaplecze .NET
Jeśli zamierzasz korzystać z aplikacji Szybki start platformy .NET, postępuj zgodnie z poniższymi instrukcjami.
Pobierz projekt serwera .NET usługi Azure Mobile Apps z repozytorium azure-mobile-apps-quickstarts.
Skompiluj projekt serwera .NET lokalnie w programie Visual Studio.
W programie Visual Studio otwórz Eksplorator rozwiązań, kliknij prawym przyciskiem myszy projekt, kliknij pozycję
ZUMOAPPNAMEService
Publikuj, zostanie wyświetlonePublish to App Service
okno. Jeśli pracujesz na komputerze Mac, zapoznaj się z innymi sposobami wdrażania aplikacji tutaj.Wybierz pozycję App Service jako element docelowy publikowania, a następnie kliknij pozycję Wybierz istniejącą, a następnie kliknij przycisk Publikuj w dolnej części okna.
Najpierw musisz zalogować się do programu Visual Studio przy użyciu subskrypcji platformy Azure. Wybierz element
Subscription
,Resource Group
, a następnie wybierz nazwę aplikacji. Gdy wszystko będzie gotowe, kliknij przycisk OK, spowoduje to wdrożenie lokalnego projektu serwera .NET w zapleczu App Service. Po zakończeniu wdrażania nastąpi przekierowanie dohttp://{zumoappname}.azurewebsites.net/
witryny w przeglądarce.
Uruchamianie rozwiązania Xamarin.Forms
Do otwierania rozwiązania wymagane są narzędzia Visual Studio Tools for Xamarin. Zobacz instrukcje dotyczące instalacji platformy Xamarin. Jeśli te narzędzia zostały już zainstalowane, wykonaj następujące kroki, aby pobrać i otwórz rozwiązanie:
Visual Studio (Windows i Mac)
Przejdź do Azure Portal i przejdź do utworzonej aplikacji mobilnej.
Overview
W bloku wyszukaj adres URL, który jest publicznym punktem końcowym aplikacji mobilnej. Przykład — nazwa witryny dla nazwy mojej aplikacji "test123" będzie mieć wartość https://test123.azurewebsites.net.Otwórz plik
Constants.cs
w tym folderze — xamarin.forms/ZUMOAPPNAME. Nazwa aplikacji toZUMOAPPNAME
.W
Constants.cs
klasie zastąpZUMOAPPURL
zmienną publicznym punktem końcowym powyżej.public static string ApplicationURL = @"ZUMOAPPURL";
Staje się
public static string ApplicationURL = @"https://test123.azurewebsites.net";
Wykonaj poniższe instrukcje, aby uruchomić projekty systemu Android lub Windows, a jeśli w sieci jest dostępny komputer Mac, również projekty systemu iOS.
(Opcjonalnie) Uruchamianie projektu systemu Android
W tej sekcji uruchamiasz projekt platformy Xamarin.Android. Jeśli nie pracujesz z urządzeniami z systemem Android, możesz pominąć tę sekcję.
Visual Studio
Kliknij prawym przyciskiem myszy projekt Android (Droid), a następnie wybierz pozycję Ustaw jako projekt startowy.
W menu Kompilacja wybierz pozycję Configuration Manager.
W oknie dialogowym Configuration Manager zaznacz pola wyboru Kompiluj i Wdróż obok projektu systemu Android oraz upewnij się, że zaznaczono pole Kompiluj obok projektu współużytkowanego kodu.
Aby skompilować projekt i uruchomić aplikację w emulatorze systemu Android, naciśnij klawisz F5 lub kliknij przycisk Uruchom.
Visual Studio dla komputerów Mac
Kliknij prawym przyciskiem myszy projekt Android, a następnie wybierz pozycję Ustaw jako projekt startowy.
W celu skompilowania projektu i uruchomienia aplikacji w emulatorze systemu Android wybierz menu Uruchom, a następnie pozycję Rozpocznij debugowanie.
W aplikacji wpisz znaczący tekst, na przykład Poznaj program Xamarin, a wybierz znak plusa (+).
Ta akcja spowoduje wysłanie żądania POST do nowego zaplecza funkcji Mobile Apps, które jest hostowane na platformie Azure. Dane z żądania zostaną wstawione do tabeli czynności do wykonania. Elementy przechowywane w tabeli są zwracane przez zaplecze funkcji Mobile Apps, a dane są wyświetlane na liście.
Uwaga
Kod uzyskujący dostęp do zaplecza funkcji Mobile Apps znajduje się w pliku C# TodoItemManager.cs projektu współużytkowanego kodu w rozwiązaniu.
(Opcjonalnie) Uruchamianie projektu iOS
W tej sekcji uruchamiasz projekt Xamarin.iOS dla urządzeń z systemem iOS. Jeśli nie pracujesz z urządzeniami z systemem iOS, możesz pominąć tę sekcję.
Visual Studio
Kliknij prawym przyciskiem myszy projekt iOS, a następnie wybierz pozycję Ustaw jako projekt startowy.
W menu Kompilacja wybierz pozycję Configuration Manager.
W oknie dialogowym Configuration Manager zaznacz pola wyboru Kompiluj i Wdróż obok projektu systemu iOS oraz upewnij się, że zaznaczono pole Kompiluj obok projektu współużytkowanego kodu.
Aby skompilować projekt i uruchomić aplikację w emulatorze urządzenia iPhone, naciśnij klawisz F5.
Visual Studio dla komputerów Mac
Kliknij prawym przyciskiem myszy projekt systemu iOS, a następnie wybierz polecenie Ustaw jako projekt startowy.
W menu Uruchom wybierz pozycję Rozpocznij debugowanie w celu skompilowania projektu i uruchomienia aplikacji w emulatorze urządzenia iPhone.
W aplikacji wpisz znaczący tekst, na przykład Poznaj program Xamarin, a wybierz znak plusa (+).
Ta akcja spowoduje wysłanie żądania POST do nowego zaplecza funkcji Mobile Apps, które jest hostowane na platformie Azure. Dane z żądania zostaną wstawione do tabeli czynności do wykonania. Elementy przechowywane w tabeli są zwracane przez zaplecze funkcji Mobile Apps, a dane są wyświetlane na liście.
Uwaga
Kod uzyskujący dostęp do zaplecza funkcji Mobile Apps można znaleźć w pliku C# TodoItemManager.cs projektu współużytkowanego kodu w rozwiązaniu.
(Opcjonalnie) Uruchamianie projektu Windows
W tej sekcji uruchomisz projekt platformy uniwersalnej systemu Windows Xamarin.Forms dla urządzeń z systemem Windows. Jeśli nie pracujesz z urządzeniami z systemem Windows, możesz pominąć tę sekcję.
Visual Studio
Kliknij prawym przyciskiem myszy dowolny projekt platformy uniwersalnej systemu Windows, a następnie wybierz pozycję Ustaw jako projekt startowy.
W menu Kompilacja wybierz pozycję Configuration Manager.
W oknie dialogowym Configuration Manager zaznacz pola wyboru Kompiluj i Wdróż obok wybranego projektu systemu Windows oraz upewnij się, że zaznaczono pole Kompiluj obok projektu współużytkowanego kodu.
Aby skompilować projekt i uruchomić aplikację w emulatorze systemu Windows, naciśnij klawisz F5 lub kliknij przycisk Uruchom (z napisem Komputer lokalny).
Uwaga
Projektów dla systemu Windows nie można uruchamiać w systemie macOS.
W aplikacji wpisz znaczący tekst, na przykład Poznaj program Xamarin, a wybierz znak plusa (+).
Ta akcja spowoduje wysłanie żądania POST do nowego zaplecza funkcji Mobile Apps, które jest hostowane na platformie Azure. Dane z żądania zostaną wstawione do tabeli czynności do wykonania. Elementy przechowywane w tabeli są zwracane przez zaplecze funkcji Mobile Apps, a dane są wyświetlane na liście.
Uwaga
Kod, który uzyskuje dostęp do zaplecza usługi Mobile Apps, znajduje się w pliku C# TodoItemManager.cs projektu biblioteki klas przenośnych rozwiązania.
Rozwiązywanie problemów
Jeśli masz problemy z kompilowaniem rozwiązania, uruchom menedżera pakietów NuGet i przeprowadź aktualizację rozszerzenia Xamarin.Forms
do najnowszej wersji, a w projekcie systemu Android zaktualizuj pakiety obsługi rozszerzenia Xamarin.Android
. Projekty typu Szybki start nie zawsze zawierają najnowsze wersje.
Pamiętaj, że wszystkie pakiety dla pomocy technicznej, do których odwołuje się projekt systemu Android, muszą mieć tę samą wersję.
Pakiet NuGet usługi Azure Mobile Apps ma zależność Xamarin.Android.Support.CustomTabs
dla platformy Android, więc jeśli projekt używa nowszych pakietów dla pomocy technicznej, musisz bezpośrednio zainstalować ten pakiet w wymaganej wersji w celu uniknięcia konfliktów.