Çalışırken yeniden başlatma kullanarak iOS uygulaması dağıtma

Genellikle bir uygulama oluştururken kodunuz derlenip diğer proje kaynaklarıyla birleştirilerek simülatörünüze veya cihazınıza dağıtılan bir uygulama paketi oluşturulur. Bu modelle, uygulamanızda bir değişiklik yaptığınızda yeni bir uygulama paketinin derlenip dağıtılması gerekir. Artımlı derlemeler derleme süresini azaltmaya yardımcı olsa da, dağıtımlar genellikle değişikliğin boyutundan bağımsız olarak aynı süreyi alır.

.NET Çok Platformlu Uygulama Kullanıcı Arabirimi (.NET MAUI) sık erişimli yeniden başlatma, Mac derleme konağı gerektirmeden Visual Studio 2022'den bir .NET MAUI uygulamasını 64 bit yerel iOS cihazına hızla dağıtmanızı sağlar. Değişiklikleri yerel olarak bağlı iOS cihazınızda zaten mevcut olan uygulama paketine göndererek tam uygulama paketinin yeniden oluşturulması gereksinimini ortadan kaldırır. Kod dosyalarında, kaynaklarda ve proje başvurularında yapılan değişiklikleri destekleyerek geliştirme sırasında uygulamanızda yapılan değişiklikleri hızlı bir şekilde test etmenizi sağlar.

Önemli

Sık erişimli yeniden başlatma, Mac derleme konağı tarafından sağlanan tam derleme deneyiminin yerine geçemez. Örneğin, yalnızca hata ayıklama derleme yapılandırmasını kullanan uygulamaları dağıtabilir ve statik kitaplıkları ve çerçeveleri, XCFrameworks'leri veya bağlama kaynak paketlerini desteklemez. Daha fazla bilgi için bkz . Sınırlamalar.

Yerel olarak bağlı bir iOS cihazına .NET MAUI uygulaması dağıtmak için sık erişimli yeniden başlatmayı kullanmak için karşılanması gereken çeşitli gereksinimler vardır:

Ayar

Çalışırken yeniden başlatmayı ayarlamak için aşağıdaki adımları gerçekleştirin:

  1. Visual Studio araç çubuğunda Hata Ayıklama Hedefi açılan listesini kullanarak iOS Yerel Cihazları'nıve ardından Yerel Cihaz girişini seçin:

    Screenshot of choosing the initial debug target for hot restart.

  2. Visual Studio araç çubuğunda Yerel Cihaz'ı seçin:

    Screenshot of the initial debug target chosen for hot restart.

    Sık Erişimli Yeniden Başlatma kurulum sihirbazı görüntülenir ve bu sihirbaz, sık erişimli yeniden başlatma dağıtımı için yerel bir iOS cihazı ayarlama konusunda size yol gösterir.

  3. Kurulum Sık Erişimli Yeniden Başlatma kurulum sihirbazında İleri'yi seçin:

    Screenshot of the first step in the setup hot restart wizard.

  4. iTunes yüklü değilse kurulum sihirbazı yüklemenizi ister. Kurulum Sık Erişimli Yeniden Başlatma kurulum sihirbazında iTunes'u İndir'i seçin:

    Screenshot of the second step in the setup hot restart wizard.

    Dekont

    iTunes, Microsoft Store'dan veya Apple'dan indirilerek yüklenebilir.

    iTunes'un indirmesini bekleyin ve ardından yükleyin. Microsoft Store'dan yüklerseniz, yükleme tamamlandıktan sonra lütfen açın, ardından yerel olarak bağlı cihazları bulmasını sağlamak için ek istemleri izleyin.

  5. Kurulum Çalışırken Yeniden Başlatma kurulum sihirbazında, yerel bir iOS cihazı bağlamanızı isteyecek sihirbazın sonraki adımına geçmek için İleri'yi seçin:

    Screenshot of the initial third step in the setup hot restart wizard.

  6. iOS cihazınızı bir USB kablosuyla geliştirme makinenize Bağlan. Cihazınızda geliştirme makinenize güvenmenizi isteyen bir istem görünebilir. Cihazınızda Güven'e tıklayın ve ek cihaz istemlerini izleyin.

  7. Kurulum Çalışırken Yeniden Başlatma kurulum sihirbazında, yerel iOS cihazınız algılandıktan sonra İleri'yi seçin:

    Screenshot of the completed third step in the setup hot restart wizard.

    Dekont

    Kurulum sihirbazı yerel iOS cihazınızı algılayamazsa bağlantıyı kesin ve ardından yerel iOS cihazınızı geliştirme makinenizden yeniden bağlayın. Ayrıca, iTunes'un yerel iOS cihazınızı tanıdığından emin olun.

  8. Kurulum Sık Erişimli Yeniden Başlatma kurulum sihirbazında, apple geliştirici programı hesabınızı kullanmak üzere sık erişimli yeniden başlatmayı yapılandırmak için Tek bir hesapla oturum aç köprüsüne tıklayın:

    Screenshot of the initial fourth step in the setup hot restart wizard.

    Tek tek hesap iletişim kutusu görüntülenir.

    Dekont

    Alternatif olarak, bir kurumsal Apple Developer hesabı kullanmak üzere sık erişimli yeniden başlatmayı yapılandırmak için Kurumsal hesapla oturum aç köprüsüne tıklayın ve görüntülenen iletişim kutusuna kimlik bilgilerinizi girin. Ardından 12. adıma geçin.

  9. App Store Bağlan API anahtarı oluşturun. Bunun için bir Apple Geliştirici hesabına ve ücretli Apple Geliştirici Programı kaydına sahip olmanız gerekir. App Store Bağlan API anahtarı oluşturma hakkında daha fazla bilgi için bkz. developer.apple.com'de App Store Bağlan API için API Anahtarları Oluşturma.

  10. Bireysel hesap iletişim kutusunda App Store Bağlan API anahtar verilerinizi girin:

    Screenshot of the completed dialog for adding an Apple Individual account.

    Ad, Veren Kimliği ve Anahtar Kimliği verileri App Store Bağlan Kullanıcılar ve Erişim'i ve ardından Anahtarlar sekmesini seçerek bulunabilir. Özel anahtar şu konumdan da indirilebilir:

    Screenshot of Apple App Store Connect API details.

  11. Bireysel hesap iletişim kutusunda Ekle düğmesine tıklayın. Tek tek hesap iletişim kutusu kapatılır.

  12. Kurulum Çalışırken Yeniden Başlatma kurulum sihirbazında Son düğmesine tıklayın:

    Screenshot of the completed fourth step in the setup hot restart wizard.

    Apple Geliştirici Programı hesabınız Visual Studio'ya eklenir ve Kurulum Sık Erişimli Yeniden Başlatma kurulum sihirbazı kapatılır.

  13. Çözüm Gezgini'da projenize sağ tıklayın ve Özellikler'i seçin.

  14. Proje özelliklerinde iOS'yi genişletin ve Paket İmzalama'yı seçin. Şema açılan listesini kullanarak Otomatik Sağlama'yi seçin ve ardından Otomatik Sağlamayı Yapılandır köprüsüne tıklayın:

    Screenshot of automatic provisioning enabled within the iOS property page in Visual Studio.

    Otomatik Sağlamayı Yapılandır iletişim kutusu görüntülenir.

  15. Otomatik Sağlamayı Yapılandır iletişim kutusunda, Bağlan API anahtarınız için ekibi seçin:

    Screenshot of the automatic provisioning dialog when it's correctly configured.

    Visual Studio otomatik sağlama işlemini tamamlar. Ardından Tamam düğmesine tıklayarak Otomatik Sağlamayı Yapılandır iletişim kutusunu kapatın.

    Dekont

    Ek iOS cihazlarının dağıtım için kolayca yapılandırılabilmesi için otomatik sağlama kullanılması önerilir. Ancak makinenizde doğru sağlama profilleri varsa el ile sağlamayı kullanabilirsiniz.

Sık erişimli yeniden başlatma kullanarak dağıtma ve hata ayıklama

İlk kurulumu gerçekleştirdikten sonra, yerel bağlı iOS cihazınız hata ayıklama hedefi açılan menüsünde görünür. Uygulamanızı dağıtmak ve hatalarını ayıklamak için:

  1. Yerel bağlı iOS cihazınızın kilidinin açık olduğundan emin olun.

  2. Visual Studio araç çubuğunda, hata ayıklama hedefi açılan listesinde yerel bağlı iOS cihazınızı seçin ve çalıştır düğmesine tıklayarak uygulamanızı derleyin ve yerel iOS cihazınıza dağıtın:

    Screenshot of the chosen debug target for hot restart.

  3. Uygulamanızı dağıttığınızda Visual Studio Bağlan Hata Ayıklayıcısı iletişim kutusunu görüntüler:

    Screenshot of the dialog asking you to launch the app on your device.

    Uygulamayı cihazınızda başlattığınızda Visual Studio hata ayıklayıcıyı çalışan uygulamanıza bağlar ve Bağlan Hata Ayıklayıcı iletişim kutusu kapatılır.

Uygulamanızda hata ayıklarken C# kodunuzu düzenleyebilir ve visual studio araç çubuğundaki yeniden başlat düğmesine basarak hata ayıklama oturumunuzu yeni değişiklikler uygulanarak yeniden başlatabilirsiniz:

Screenshot of the restart button on the Visual Studio toolbar.

Kodun yürütülmesini engelleme

Önişlemci HOTRESTART simgesi, çalışırken yeniden başlatma ile hata ayıklarken kodun yürütülmesini önlemek için kullanılabilir:

#if !HOTRESTART
  // Code here won't be executed when debugging with hot restart
#endif

Sık erişimli yeniden başlatmayı etkinleştirme

Visual Studio 2022'de etkin yeniden başlatma varsayılan olarak etkindir. Daha önce devre dışı bırakılmışsa, Visual Studio menü çubuğundan Araçlar > Seçenekleri seçilerek etkinleştirilebilir. Ardından, Seçenekler iletişim kutusunda Xamarin'i genişletin ve iOS Ayarlar'ı seçin. Ardından Sık Erişimli Yeniden Başlatmayı Etkinleştir seçeneğinin işaretli olduğundan emin olun:

Screenshot of how to enable hot restart within Visual Studio.

Sınırlamalar

Sık erişimli yeniden başlatma kullanırken sınırlamalar vardır:

  • Yalnızca hata ayıklama derleme yapılandırmasını kullanan uygulamaları dağıtmak için kullanılabilir. Uygulamanızı üretim amacıyla derlemek, imzalamak ve dağıtmak için bir Mac derleme konağına ihtiyacınız olacaktır.
  • Görsel taslak ve XIB dosyaları desteklenmez ve çalışma zamanında bunları yüklemeyi denerse uygulamanız kilitlenebilir.
  • Statik iOS kitaplıkları ve çerçeveleri desteklenmez ve uygulamanız bunları yüklemeyi denerse çalışma zamanı hataları veya kilitlenmeleri görebilirsiniz.
  • XCFrameworks ve bağlama kaynak paketleri desteklenmez.
  • Varlık katalogları desteklenmez. Sık Erişimli Yeniden Başlatma'yı kullanırken, uygulamanız bir .NET simgesi ve başlatma ekranı gösterir.

Sorun giderme

iOS, uygulama başlatma sürelerini ve yanıt verme hızını izleyen ve yanıt vermeyen uygulamaları sonlandıran bir watchdog kullanır. Örneğin, watchdog ana iş parçacığını engelleyen uygulamaları önemli bir süre için sonlandırır. Eski iOS cihazlarında watchdog, hata ayıklayıcı bağlanmadan önce sık erişimli yeniden başlatma kullanılarak dağıtılan bir uygulamayı sonlandırabilir. Geçici çözüm, uygulamanın başlangıç yolunda gerçekleştirilen işlem miktarını azaltmak ve daha yeni bir iOS cihazı kullanmaktır.

Ek sorunları bildirmek için lütfen Geri Bildirim Göndermeye Yardımcı Olun > Sorun Bildirin başlığındaki geri bildirim > aracını kullanın.