Visual Studio — zintegrowane środowisko programistyczne od Microsoft, obsługujące tworzenie aplikacji mobilnych przez Xamarin i .NET MAUI. IDE zawiera edytor C#/F#/VB.NET, debugger, profiler, projektant XAML, emulatory Android/iOS oraz integrację z Azure DevOps. Visual Studio na Microsoft.com — portal dla edycji Community, Professional i Enterprise.
Najważniejsze
Visual Studio — flagowe IDE Microsoft, wydane w 1997 roku. Do tworzenia aplikacji mobilnych Visual Studio oferuje dwa główne frameworki: Xamarin (legacy, wsparcie do 2028) i .NET MAUI (aktualny, od .NET 6 w 2021). IDE jest dostępne w edycjach Community (bezpłatnie dla małych zespołów), Professional i Enterprise.
Aktualna wersja — Visual Studio 2025 (v18.0) z .NET 10 SDK. IDE obsługuje wszystkie platformy: Android (emulator + urządzenia fizyczne), iOS (przez Mac build host), Windows (natywne debugowanie), macOS (przez Parallels lub Mac Agent). Według Stack Overflow 2025, Visual Studio jest używane przez 32% programistów mobilnych pracujących ze stosem .NET.
Kluczowe cechy VS Mobile: projekty w formacie .sln/.csproj w stylu SDK (MSBuild), zarządzanie pakietami przez NuGet, XAML Designer do wizualnego edytowania UI, IntelliCode (AI code completion oparty na GPT-4), Live Share do zdalnego programowania w parze.
.NET MAUI (Multi-platform App UI) — framework Microsoft do tworzenia natywnych UI z jednej bazy kodu C#. W przeciwieństwie do Xamarin.Forms, MAUI używa jednego projektu (single project) dla wszystkich platform, a nie osobnych projektów Android/iOS. Zasoby są rozmieszczone w folderach Platforms/Android, Platforms/iOS, Platforms/Windows.
<!-- MainPage.xaml — .NET MAUI UI —>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="MyApp.MainPage">
<VerticalStackLayout Spacing="12" Padding="16">
<Label Text="Hello, .NET MAUI!"
FontSize="24"
HorizontalOptions="Center" />
<Button Text="Load Data"
Clicked="OnLoadClicked"
BackgroundColor="#512BD4" />
<CollectionView x:Name="ItemsList" />
</VerticalStackLayout>
</ContentPage>MVVM i DI w MAUI: framework zawiera wbudowany kontener DI (Microsoft.Extensions.DependencyInjection), Shell do nawigacji (TabBar, Flyout, Routing) oraz CommunityToolkit.Mvvm do generowania INotifyPropertyChanged. BindableLayout obsługuje wiązanie danych do elementów nie-ItemsView przez BindableLayout.ItemsSource.
// MainPage.xaml.cs — code-behind z DI
public partial class MainPage : ContentPage
{
private readonly IApiService _api;
public MainPage(IApiService api)
{
InitializeComponent();
_api = api;
}
private async void OnLoadClicked(object sender, EventArgs e)
{
var items = await _api.GetItemsAsync();
ItemsList.ItemsSource = items;
}
}Xamarin.Essentials → MAUI Essentials: dostęp do natywnych API: geolokalizacja, akcelerometr, system plików, bezpieczne przechowywanie (SecureStorage), biometria, wibracja, Make Phone Call. API są wywoływane z wspólnego kodu C# — MAUI sam tłumaczy je na Android (Java/Kotlin bindings) i iOS (Objective-C/Swift bindings).
Xamarin — poprzednik .NET MAUI, wydany w 2011 roku i kupiony przez Microsoft w 2016. Xamarin używa osobnych projektów: Xamarin.Android (C# + Android bindings), Xamarin.iOS (C# + iOS bindings) i Xamarin.Forms (wspólny UI przez XAML). Microsoft ogłosił Xamarin SDK przestarzałym w 2023, ale wsparcie trwa do maja 2028.
Migracja z Xamarin na MAUI — zautomatyzowany proces przez .NET Upgrade Assistant. Główne zmiany: styl SDK .csproj zamiast old-style, jeden projekt zamiast osobnych, Shell zamiast NavigationPage, WinUI zamiast UWP. Microsoft udostępnia przewodnik migracji dla Xamarin.Forms → .NET MAUI z instrukcjami krok po kroku i analizatorem zgodności.
Xamarin.Android vs Xamarin.iOS różnią się architekturą: Xamarin.Android używa JNI Bridge do wywoływania kodu Java, Xamarin.iOS — kompilacji Ahead-of-Time (AOT) C# do natywnego ARM. Xamarin.iOS nie obsługuje JIT — wszystkie aplikacje dla iOS przechodzą kompilację AOT ze względu na ograniczenia Apple.
XAML Designer w Visual Studio — wizualny edytor interfejsów XAML z panelem Toolbox (komponenty), Properties (właściwości zaznaczonego elementu) i Document Outline (drzewo elementów). Designer obsługuje podgląd Data Binding (d:DataContext dla danych w czasie projektowania) i różne motywy.
XAML Hot Reload — zmiana kodu XAML bez zatrzymywania aplikacji. Hot Reload aktualizuje UI na uruchomionym emulatorze lub urządzeniu w ciągu sekundy. W Visual Studio 2025 Hot Reload obsługuje wszystkie elementy MAUI: ContentPage, ContentView, ResourceDictionary, Styles, DataTemplates. Dla C# code-behind dostępny jest .NET Hot Reload (zmiana metod bez restartu).
Live Visual Tree — inspektor uruchomionego UI: pokazuje hierarchię elementów, ich właściwości i bieżący stan. W połączeniu z Hot Reload Live Visual Tree pozwala zmieniać właściwości elementów w runtime i natychmiast widzieć wynik na ekranie urządzenia.
Tworzenie aplikacji iOS w Visual Studio wymaga połączenia z Mac build host — komputerem macOS z Xcode i Apple SDK. Visual Studio łączy się przez SSH z Mac Agent, przesyła kod źródłowy, Mac kompiluje binarkę iOS i zwraca wynik. Bez Mac build host niemożliwa jest nawet kompilacja projektów iOS w Visual Studio.
Konfiguracja Mac build host: instalacja Xcode i Visual Studio for Mac Agent na macOS, włączenie Remote Login w System Settings, parowanie w Visual Studio przez Tools → iOS → Pair to Mac. Do kompilacji w chmurze można użyć MacStadium lub MacinCloud. Microsoft Azure Pipelines również obsługuje macOS hosted agents.
iOS Simulator z Visual Studio uruchamia się na Mac i jest transmitowany do Windows przez Remote Simulator. Visual Studio 2025 używa Xcode 16 Simulator na Mac do wyświetlania emulatora iOS bezpośrednio na pulpicie Windows.
Android SDK Manager w Visual Studio zarządza instalacją Android SDK, build-tools, platform (API 34, 35, 36) i obrazów systemowych emulatora. Visual Studio automatycznie pobiera niezbędne komponenty przy pierwszym otwarciu projektu Android. Alternatywnie można użyć zainstalowanego Android Studio SDK.
Android Emulator wbudowany w Visual Studio: uruchomienie emulatora z menu Debug → Start Without Debugging, wybór AVD z listy, debugowanie z punktami przerwania, profilowanie przez Android Profiler. Visual Studio obsługuje Hyper-V (Windows 11) i WSL2 do przyspieszenia emulacji. Android Debug Bridge (ADB) jest dostępny przez wiersz poleceń Developer PowerShell.
Google Play Services są podłączane przez NuGet (Xamarin.GooglePlayServices.* lub MAUI.GooglePlayServices.*). Visual Studio automatycznie konfiguruje Google Services JSON/XML dla Firebase i Maps. IntelliCode sugeruje poprawne dyrektywy using i wersje pakietów na podstawie .NET TFM twojego projektu.
Często zadawane pytania
.NET MAUI — ewolucja Xamarin.Forms z jednym projektem (single project), wbudowanym DI, Shell, obsługą WinUI i nowoczesnym stylem SDK .csproj. Xamarin.Forms wymaga osobnych projektów dla każdej platformy i nie obsługuje natywnie Windows 11. MAUI kompiluje się również szybciej dzięki .NET 8/10 SDK.
Tak, przez Native References i Binding Projects. Dla Android — Xamarin/MAUI Binding Library (.jar → .dll). Dla iOS — .xcframework → Static Library Binding. Biblioteki Kotlin/Swift są opakowywane w klasy proxy C#. .NET MAUI obsługuje kod specyficzny dla platformy przez folder Platforms/Android/*.java lub Platforms/iOS/*.swift.
Użyj .NET Upgrade Assistant w Visual Studio: Project → Upgrade. Narzędzie konwertuje .csproj, przestrzenie nazw XAML (Xamarin.Forms → MAUI), zastępuje przestarzałe API. Dla osobnych projektów Xamarin.Android/iOS — najpierw połącz w Xamarin.Forms, następnie migruj. Microsoft szacuje typową migrację na 2–4 tygodnie dla średniego projektu.
Tak, .NET MAUI obsługuje watchOS i tvOS przez dodatkowe Target Framework Monikers (TFM). Dla watchOS wymagany jest układ w XAML z elementami kompatybilnymi z watchOS (WKInterfaceLabel itp.) oraz obowiązkowe posiadanie Mac build host z tvOS/watchOS SDK w Xcode.
Główne alternatywy: Visual Studio Code z C# Dev Kit (lekka wersja, bez XAML Designer), JetBrains Rider (wieloplatformowe IDE z obsługą MAUI), Rider + Unity (dla gier). Rider jest popularny wśród programistów .NET na macOS, ponieważ Visual Studio for Mac zostało zakończone w 2025.
Podsumowanie
Opracujemy aplikację mobilną pod klucz
IT Sectr tworzy aplikacje na iOS i Androida dla startupów i firm od 2017 roku. Doradzimy Ci i zaproponujemy najlepsze rozwiązanie.
Przeczytaj również