Aracılığıyla paylaş


Hello, tvOS Hızlı Başlangıç Kılavuzu

Bu kılavuz, ilk Xamarin.tvOS uygulamanızı ve geliştirme araç zincirini oluşturma işleminde size yol gösterir. Ayrıca kullanıcı arabirimi denetimlerini koda sunan ve Xamarin.tvOS uygulamasının nasıl derlendiği, çalıştırıldığı ve test edilen Xamarin Tasarım Aracı tanıtılır.

Uyarı

iOS Tasarım Aracı, Mac için Visual Studio 2019 sürüm 16.8 ve Visual Studio 2019 sürüm 8.8'de kullanım dışı bırakıldı ve Visual Studio 2019 sürüm 16.9 ve Mac için Visual Studio sürüm 8.9'da kaldırıldı. iOS kullanıcı arabirimleri oluşturmanın önerilen yolu doğrudan Xcode'un Interface Builder'ını çalıştıran bir Mac'tedir. Daha fazla bilgi için bkz . Xcode ile kullanıcı arabirimleri tasarlama.

Apple, tvOS 11 çalıştıran Apple TV 4K'nın 5. neslini yayınladı.

Apple TV platformu, geliştiricilere açık olup zengin, çevreleyici uygulamalar oluşturmalarına ve Apple TV'nin yerleşik App Store'u aracılığıyla yayınlamalarına olanak sağlar.

Xamarin.iOS geliştirme hakkında bilgi sahibiyseniz tvOS'a geçişi oldukça basit bulmalısınız. API'lerin ve özelliklerin çoğu aynıdır, ancak birçok yaygın API kullanılamaz (WebKit gibi). Buna ek olarak, Siri Remote ile çalışmak, dokunmatik ekran tabanlı iOS cihazlarda bulunmayan bazı tasarım zorluklarına neden olur.

Bu kılavuz, Xamarin uygulamasında tvOS ile çalışmaya giriş niteliğindedir. tvOS hakkında daha fazla bilgi için lütfen Apple'ın Apple TV 4K için hazırlanma belgelerine bakın.

Genel bakış

Xamarin.tvOS, Swift (veya Objective-C) ve Xcode'da geliştirme yaparken kullanılan aynı OS X kitaplıklarını ve arabirim denetimlerini kullanarak C# ve .NET'te tamamen yerel Apple TV uygulamaları geliştirmenizi sağlar.

Ayrıca, Xamarin.tvOS uygulamaları C# ve .NET ile yazıldığından, yaygın olarak kullanılan arka uç kodu Xamarin.iOS, Xamarin.Android ve Xamarin.Mac uygulamalarıyla paylaşılabilir; her platformda yerel bir deneyim sunarken.

Bu makalede, bir düğmeye kaç kez tıklandığını sayan temel bir Hello, tvOS uygulaması oluşturma işleminde size yol göstererek Xamarin.tvOS ve Visual Studio kullanarak Bir Apple TV Uygulaması oluşturmak için gereken temel kavramlar tanıtılacaktır:

Örnek uygulama çalıştırması

Aşağıdaki kavramları ele alacağız:

  • Mac için Visual Studio – Mac için Visual Studio giriş ve onunla Xamarin.tvOS uygulamaları oluşturma.
  • Xamarin.tvOS Uygulamasının Anatomisi – Bir Xamarin.tvOS uygulaması nelerden oluşur?
  • Kullanıcı Arabirimi Oluşturma – Kullanıcı arabirimi oluşturmak için iOS için Xamarin Tasarım Aracı kullanma.
  • Dağıtım ve Test – uygulamanızı tvOS Simülatöründe ve gerçek tvOS donanımında çalıştırma ve test etme.

Mac için Visual Studio'da yeni bir Xamarin.tvOS Uygulaması başlatma

Yukarıda belirtildiği gibi, ana ekrana tek bir düğme ve etiket ekleyen adlı Hello-tvOS bir Apple TV uygulaması oluşturacağız. Düğmeye tıklandığında etiket tıklandığında kaç kez tıklandığını gösterir.

Başlamak için aşağıdakileri yapalım:

  1. Başlangıç Mac için Visual Studio:

    Mac için Visual Studio

  2. Yeni Proje iletişim kutusunu açmak için ekranın sol üst köşesindeki Yeni Çözüm... bağlantısına tıklayın.

  3. tvOS>Uygulaması>Tek Görünüm Uygulaması'nıseçin ve İleri düğmesine tıklayın:

    Tek Görünüm Uygulaması Seç

  4. Uygulama Adı için girin, Kuruluş Tanımlayıcınızı girin ve İleri düğmesine tıklayın:Hello, tvOS

    Merhaba, tvOS girin

  5. Proje Adı için girin Hello_tvOS ve Oluştur düğmesine tıklayın:

    HellotvOS girin

Mac için Visual Studio yeni Xamarin.tvOS uygulamasını oluşturur ve uygulamanızın çözümüne eklenen varsayılan dosyaları görüntüler:

Varsayılan dosyalar görünümü

Mac için Visual Studio kullanımları Çözümler ve Projeler, Visual Studio ile tam olarak aynı şekilde. Çözüm, bir veya daha fazla proje barındırabilen bir kapsayıcıdır; projeler arasında uygulamalar, destekleyici kitaplıklar, test uygulamaları vb. bulunabilir. Bu durumda, Mac için Visual Studio sizin için hem bir çözüm hem de bir uygulama projesi oluşturmuştur.

İsterseniz ortak, paylaşılan kod içeren bir veya daha fazla kod kitaplığı projesi oluşturabilirsiniz. Bu kitaplık projeleri, standart bir .NET uygulaması oluştururken yaptığınız gibi uygulama projesi tarafından kullanılabilir veya diğer Xamarin.tvOS uygulama projeleriyle (veya kod türüne göre Xamarin.iOS, Xamarin.Android ve Xamarin.Mac) kullanılabilir.

Xamarin.tvOS Uygulamasının Anatomisi

iOS programlama hakkında bilgi sahibiyseniz burada birçok benzerlik göreceksiniz. Aslında, tvOS 9, iOS 9'un bir alt kümesidir, bu nedenle birçok kavram buradan geçer.

Şimdi projedeki dosyalara göz atalım:

  • Main.cs – Bu, uygulamanın ana giriş noktasını içerir. Uygulama başlatıldığında, bu, çalıştırılan ilk sınıfı ve yöntemi içerir.
  • AppDelegate.cs – Bu dosya, işletim sisteminden olayları dinlemekten sorumlu olan ana uygulama sınıfını içerir.
  • Info.plist – Bu dosya uygulama adı, simgeler vb. gibi uygulama özelliklerini içerir.
  • ViewController.cs – Bu, ana pencereyi temsil eden ve yaşam döngüsünü denetleen sınıftır.
  • ViewController.designer.cs – Bu dosya, ana ekranın kullanıcı arabirimiyle tümleştirmenize yardımcı olan tesisat kodu içerir.
  • Main.storyboard – Ana pencere için kullanıcı arabirimi. Bu dosya iOS için Xamarin Tasarım Aracı tarafından oluşturulabilir ve korunabilir.

Aşağıdaki bölümlerde bu dosyalardan bazılarına hızlıca göz atacağız. Bunları daha sonra daha ayrıntılı olarak inceleyeceğiz, ancak şimdi temellerini anlamak iyi bir fikirdir.

Main.cs

Dosya, Main.cs yeni bir Xamarin.tvOS uygulama örneği oluşturan ve bizim örneğimizde sınıfı olan işletim sistemi olaylarını işleyecek sınıfın AppDelegate adını geçiren statik Main bir yöntem içerir:

using UIKit;

namespace Hello_tvOS
{
    public class Application
    {
        // This is the main entry point of the application.
        static void Main (string[] args)
        {
            // if you want to use a different Application Delegate class from "AppDelegate"
            // you can specify it here.
            UIApplication.Main (args, null, "AppDelegate");
        }
    }
}

AppDelegate.cs

dosyası AppDelegate.cs , penceremizi oluşturmak ve işletim sistemi olaylarını dinlemekten sorumlu olan sınıfımızı AppDelegate içerir:

using Foundation;
using UIKit;

namespace Hello_tvOS
{
    // The UIApplicationDelegate for the application. This class is responsible for launching the
    // User Interface of the application, as well as listening (and optionally responding) to application events from iOS.
    [Register ("AppDelegate")]
    public class AppDelegate : UIApplicationDelegate
    {
        // class-level declarations

        public override UIWindow Window {
            get;
            set;
        }

        public override bool FinishedLaunching (UIApplication application, NSDictionary launchOptions)
        {
            // Override point for customization after application launch.
            // If not required for your application you can safely delete this method

            return true;
        }

        public override void OnResignActivation (UIApplication application)
        {
            // Invoked when the application is about to move from active to inactive state.
            // This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message)
            // or when the user quits the application and it begins the transition to the background state.
            // Games should use this method to pause the game.
        }

        public override void DidEnterBackground (UIApplication application)
        {
            // Use this method to release shared resources, save user data, invalidate timers and store the application state.
            // If your application supports background execution this method is called instead of WillTerminate when the user quits.
        }

        public override void WillEnterForeground (UIApplication application)
        {
            // Called as part of the transition from background to active state.
            // Here you can undo many of the changes made on entering the background.
        }

        public override void OnActivated (UIApplication application)
        {
            // Restart any tasks that were paused (or not yet started) while the application was inactive.
            // If the application was previously in the background, optionally refresh the user interface.
        }

        public override void WillTerminate (UIApplication application)
        {
            // Called when the application is about to terminate. Save data, if needed. See also DidEnterBackground.
        }
    }
}

Bu kod, daha önce bir iOS uygulaması oluşturmadığınız sürece büyük olasılıkla tanıdık değildir, ancak oldukça basittir. Şimdi önemli satırları inceleyelim.

İlk olarak sınıf düzeyi değişken bildirimine göz atalım:

public override UIWindow Window {
            get;
            set;
        }

Window özelliği ana pencereye erişim sağlar. tvOS, Model Görünüm Denetleyicisi (MVC) deseni olarak bilinen düzeni kullanır. Genel olarak, oluşturduğunuz her pencere için (ve pencere içindeki diğer birçok şey için), pencerenin yaşam döngüsünden sorumlu olan bir denetleyici vardır; örneğin bunu göstermek, yeni görünümler (denetimler) eklemek vb.

Şimdi yöntemimiz var FinishedLaunching . Bu yöntem, uygulama örneği oluşturulduktan sonra çalışır ve uygulama penceresinin oluşturulmasından ve görünüm görüntüleme işleminin başlamasından sorumludur. Uygulamamız kullanıcı arabirimini tanımlamak için görsel taslak kullandığından, burada ek kod gerekmez.

şablonda ve WillEnterForegroundgibi DidEnterBackground birçok farklı yöntem sağlanır. Uygulama olayları uygulamanızda kullanılmıyorsa bunlar güvenle kaldırılabilir.

ViewController.cs

Sınıfı ViewController , ana penceremizin denetleyicisidir. Bu, ana pencerenin yaşam döngüsünden sorumlu olduğu anlamına gelir. Bunu daha sonra ayrıntılı bir şekilde inceleyeceğiz, şimdilik kısaca göz atalım:

using System;
using Foundation;
using UIKit;

namespace Hello_tvOS
{
    public partial class ViewController : UIViewController
    {
        public ViewController (IntPtr handle) : base (handle)
        {
        }

        public override void ViewDidLoad ()
        {
            base.ViewDidLoad ();
            // Perform any additional setup after loading the view, typically from a nib.
        }

        public override void DidReceiveMemoryWarning ()
        {
            base.DidReceiveMemoryWarning ();
            // Release any cached data, images, etc that aren't in use.
        }
    }
}

ViewController. Tasarım Aracı.cs

Ana Pencere sınıfının tasarımcı dosyası şu anda boş, ancak iOS Tasarım Aracı kullanıcı arabirimimizi oluşturduğumuzda otomatik olarak Mac için Visual Studio tarafından doldurulacak:

using Foundation;

namespace HellotvOS
{
    [Register ("ViewController")]
    partial class ViewController
    {
        void ReleaseDesignerOutlets ()
        {
        }
    }
}

Genellikle tasarımcı dosyalarıyla ilgilenmeyiz çünkü bunlar yalnızca Mac için Visual Studio tarafından otomatik olarak yönetilir ve uygulamamızdaki herhangi bir pencereye veya görünüme eklediğimiz denetimlere erişim sağlayan gerekli tesisat kodunu sağlar.

Artık Xamarin.tvOS uygulamamızı oluşturduğumuza ve bileşenleri hakkında temel bilgilere sahip olduğumuza göre, kullanıcı arabirimini oluşturmaya göz atalım.

Kullanıcı Arabirimi Oluşturma

Xamarin.tvOS uygulamanız için Kullanıcı Arabirimi oluşturmak üzere iOS için Xamarin Tasarım Aracı kullanmanız gerekmez; kullanıcı arabirimi doğrudan C# kodundan oluşturulabilir ancak bu makalenin kapsamı dışındadır. Kolaylık sağlamak için, bu öğreticinin geri kalanında kullanıcı arabirimimizi oluşturmak için iOS Tasarım Aracı kullanacağız.

Kullanıcı arabiriminizi oluşturmaya başlamak için Çözüm Gezgini dosyaya Main.storyboardçift tıklayarak iOS Tasarım Aracı düzenlemek üzere açalım:

Çözüm Gezgini main.storyboard dosyası

Bu, Tasarım Aracı başlatmalı ve aşağıdaki gibi görünmelidir:

Tasarım Aracı

iOS Tasarım Aracı ve nasıl çalıştığı hakkında daha fazla bilgi için iOS için Xamarin Tasarım Aracı giriş kılavuzuna bakın.

Artık Xamarin.tvOS uygulamamızın tasarım yüzeyine denetim eklemeye başlayabiliriz.

Aşağıdakileri yapın:

  1. Tasarım yüzeyinin sağındaki Araç Kutusu'nu bulun:

    Araç Kutusu

    Burada bulamıyorsanız, görüntülemek için Bölme Bölmelerini > Görüntüle > Araç Kutusu'na göz atın.

  2. Araç Kutusu'ndan bir Etiketi tasarım yüzeyine sürükleyin:

    Araç Kutusundan Etiket Sürükleme

  3. Özellik panelinde Başlık özelliğine tıklayın ve düğmenin başlığını Hello, tvOS olarak değiştirin ve Yazı Tipi Boyutu'nu 128 olarak ayarlayın:

    Başlığı Hello, tvOS olarak ayarlayın ve Yazı Tipi Boyutu'nu 128 olarak ayarlayın

  4. Tüm sözcüklerin görünür olması için etiketi yeniden boyutlandırın ve pencerenin üst kısmına yakın ortalayın:

    Etiketi yeniden boyutlandırma ve ortalama

  5. Etiketin artık hedeflendiği gibi görünmesi için konumunun kısıtlanması gerekir. ekran boyutundan bağımsız olarak. Bunu yapmak için, T şeklindeki tutamaç görünene kadar etikete tıklayın:

    T şeklindeki tutamaç

  6. Etiketi yatay olarak kısıtlamak için orta kareyi seçin ve dikey kesikli çizgiye sürükleyin:

    Orta kareyi seçin

    Etiket turuncuya dönüşmelidir.

  7. Etiketin üst kısmındaki T tutamacını seçin ve pencerenin üst kenarına sürükleyin:

    Tutamacı pencerenin üst kenarına sürükleyin

  8. Ardından, aşağıda gösterildiği gibi genişliğe ve ardından yükseklik kemik tutamacını tıklatın:

    Genişlik ve yükseklik kemik tutamaçları

    Her kemik tutamacı tıklandığında, sabit boyutları ayarlamak için sırasıyla Hem Genişlik hem de Yükseklik'i seçin.

  9. Tamamlandığında, Kısıtlamalarınız Özellikler panelinin Düzen sekmesindekilere benzer olmalıdır:

    Örnek Kısıtlamalar

  10. Araç Kutusu'ndanbir Düğmeyi sürükleyin ve Etiketin altına yerleştirin.

  11. Özellik panelinde Title özelliğine tıklayın ve düğmenin başlığını olarak Click Medeğiştirin:

    Düğmelerin başlığını Bana Tıkla olarak değiştirme

  12. tvOS penceresindeki düğmeyi kısıtlamak için yukarıdaki 5 ile 8 arasındaki adımları yineleyin. Ancak, T tutamacını pencerenin en üstüne sürüklemek yerine (7. adımda olduğu gibi) etiketin altına sürükleyin:

    Düğmeyi kısıtla

  13. Düğmenin altına başka bir etiket sürükleyin, ilk etiketle aynı genişlikte olacak şekilde boyutlandırın ve Hizalama'yı Ortala olarak ayarlayın:

    Düğmenin altına başka bir etiket sürükleyin, ilk etiketle aynı genişlikte olacak şekilde boyutlandırın ve Ortala'yı ayarlayın

  14. İlk etiket ve düğme gibi, bu etiketi ortalayıp konuma ve boyuta sabitleyin:

    Etiketi konuma ve boyuta sabitleme

  15. Değişikliklerinizi Kullanıcı Arabirimine kaydedin.

Denetimleri yeniden boyutlandırırken ve taşırken, tasarımcının Size Apple TV İnsan Arabirimi Yönergelerini temel alan yararlı anlık ipuçları verdiğini fark etmiş olmalısınız. Bu yönergeler, Apple TV kullanıcıları için tanıdık bir görünüme sahip olacak yüksek kaliteli uygulamalar oluşturmanıza yardımcı olacaktır.

Belge Ana Hattı bölümüne bakarsanız, kullanıcı Arabirimimizi oluşturan öğelerin düzeninin ve hiyerarşisinin nasıl gösterildiğine dikkat edin:

Belge Ana Hattı bölümü

Burada, gerekirse kullanıcı arabirimi öğelerini yeniden sıralamak için düzenleyebileceğiniz öğeleri seçebilir veya sürükleyebilirsiniz. Örneğin, bir kullanıcı arabirimi öğesi başka bir öğe tarafından kapsanıyorsa, pencerenin en üst öğesi yapmak için öğeyi listenin en altına sürükleyebilirsiniz.

Artık Kullanıcı Arabirimimizi oluşturduğumuza göre, Xamarin.tvOS'un C# kodunda bunlara erişebilmesi ve bunlarla etkileşim kurabilmesi için kullanıcı arabirimi öğelerini kullanıma sunmamız gerekir.

Arkadaki koddaki denetimlere erişme

iOS tasarımcısına eklediğiniz denetimlere koddan erişmenin iki ana yolu vardır:

  • Denetimde olay işleyicisi oluşturma.
  • Denetime daha sonra başvurabilmemiz için bir ad verin.

Bunlardan herhangi biri eklendiğinde içindeki kısmi sınıf ViewController.designer.cs değişiklikleri yansıtacak şekilde güncelleştirilir. Böylece Görünüm Denetleyicisi'ndeki denetimlere erişebilirsiniz.

Olay işleyicisi oluşturma

Bu örnek uygulamada, düğmeye tıklandığında bir şey olmasını isteriz, bu nedenle düğmedeki belirli bir olaya bir olay işleyicisi eklenmesi gerekir. Bunu ayarlamak için aşağıdakileri yapın:

  1. Xamarin iOS Tasarım Aracı Görünüm Denetleyicisi'ndeki düğmeyi seçin.

  2. Özellikler panelinde Olaylar sekmesini seçin:

    Olaylar sekmesi

  3. TouchUpInside olayını bulun ve adlı Clickedbir olay işleyicisi verin:

    TouchUpInside olayı

  4. Enter tuşuna bastığınızda ViewController.cs dosyası açılır ve kodda olay işleyiciniz için konumlar önerilir. Konumu ayarlamak için klavyenizdeki ok tuşlarını kullanın:

    Konumu ayarlama

  5. Bu, aşağıda gösterildiği gibi kısmi bir yöntem oluşturur:

    Kısmi yöntem

Artık düğmenin çalışmasına izin vermek için bazı kodlar eklemeye hazırız.

Denetimi adlandırma

Düğmeye tıklandığında, etiket tıklama sayısına göre güncelleştirilmelidir. Bunu yapmak için koddaki etikete erişmemiz gerekir. Bu, ona bir ad vererek yapılır. Aşağıdakileri yapın:

  1. Görsel Taslak'ı açın ve Görünüm Denetleyicisi'nin altındaki Etiket'i seçin.

  2. Özellikler panelinde Pencere Öğesi sekmesini seçin:

    Pencere Öğesi sekmesini seçin

  3. Kimlik > Adı'nın altında ekleyinClickedLabel:

    ClickedLabel Ayarla

Artık etiketi güncelleştirmeye hazırız!

Denetimlere nasıl erişilir?

Çözüm Gezgini öğesini seçerseniz ViewController.designer.cs etiketin ve olay işleyicisinin ClickedClickedLabel C# dilinde bir Çıkış ve Eylem ile nasıl eşlendiğini görebilirsiniz:

Çıkışlar ve Eylemler

Bunun kısmi bir sınıf olduğunu ViewController.designer.cs da fark edebilirsiniz, böylece Mac için Visual Studio sınıfına yaptığımız değişikliklerin üzerine yazacak şekilde değişiklik ViewController.cs yapmak zorunda değildir.

Kullanıcı arabirimi öğelerini bu şekilde açığa çıkarmak, bunlara Görünüm Denetleyicisi'nde erişmenizi sağlar.

Normalde kendinizi asla açmanıza ViewController.designer.cs gerek kalmaz, sadece eğitim amaçlı olarak burada sunulmuştur.

Kodu Yazma

Kullanıcı Arabirimimiz oluşturulduktan ve Çıkışlar ve Eylemler aracılığıyla koda sunulan kullanıcı arabirimi öğeleriyle, sonunda programa işlevsellik kazandırmak için kodu yazmaya hazırız.

Uygulamamızda, ilk düğmeye her tıklandığında, düğmeye kaç kez tıklandığını göstermek için etiketimizi güncelleştireceğiz. Bunu başarmak için, dosyayı Çözüm Bölmesi'nde çift tıklayarak düzenlemek üzere açmamız ViewController.cs gerekir:

Çözüm Bölmesi

İlk olarak, gerçekleşen tıklama sayısını izlemek için sınıfımızda ViewController sınıf düzeyinde bir değişken oluşturmamız gerekir. Sınıf tanımını düzenleyin ve aşağıdaki gibi görünmesini sağlayın:

using System;
using Foundation;
using UIKit;

namespace Hello_tvOS
{
    public partial class ViewController : UIViewController
    {
        private int numberOfTimesClicked = 0;
        ...

Ardından, aynı sınıfta ()ViewController ViewDidLoad yöntemini geçersiz kılmamız ve etiketimizin ilk iletisini ayarlamak için bazı kodlar eklememiz gerekir:

public override void ViewDidLoad ()
{
    base.ViewDidLoad ();

    // Set the initial value for the label
    ClickedLabel.Text = "Button has not been clicked yet.";
}

İşletim sistemi dosyadan .storyboard Kullanıcı Arabirimi yüklendikten ve örneği başlatıldıktan sonra çağrıldığından gibi ViewDidLoadInitializebaşka bir yöntem yerine komutunu kullanmalıyızViewDidLoad. Dosya tam olarak yüklenmeden ve örneği oluşturulmadan önce .storyboard etiket denetimine erişmeyi deneseydik, etiket denetimi henüz oluşturulmayacağından bir NullReferenceException hatayla karşılaşırdık.

Ardından, düğmeye tıklayan kullanıcıya yanıt vermek için kodu eklememiz gerekir. Oluşturduğumuz kısmi sınıfa aşağıdakileri ekleyin:

partial void Clicked (UIButton sender)
{
    ClickedLabel.Text = string.Format("The button has been clicked {0} time{1}.", ++numberOfTimesClicked, (numberOfTimesClicked

Bu kod, kullanıcı düğmemize her tıklayışında çağrılır.

Her şey hazır olduğunda artık Xamarin.tvOS uygulamamızı derlemeye ve test etmeye hazırız.

Uygulamayı Test Etme

Beklendiği gibi çalıştığından emin olmak için uygulamamızı derlemenin ve çalıştırmanın zamanı geldi. Tümünü tek adımda derleyebilir ve çalıştırabilir veya çalıştırmadan oluşturabiliriz.

Bir uygulama her derlediğimizde, ne tür bir derleme istediğimizi seçebiliriz:

  • Hata ayıklama – Hata ayıklama derlemesi, uygulama çalışırken gerçekleşenlerin hatalarını ayıklamamıza olanak tanıyan ek meta veriler içeren bir '' (uygulama) dosyasında derlenmiş.
  • Release : Yayın derlemesi bir '' dosyası da oluşturur, ancak hata ayıklama bilgilerini içermez, bu nedenle daha küçüktür ve daha hızlı yürütülür.

Mac için Visual Studio ekranının sol üst köşesindeki Yapılandırma Seçici'den derleme türünü seçebilirsiniz:

Derleme türünü seçin

Uygulama Oluşturma

Bizim örneğimizde yalnızca bir hata ayıklama derlemesi istiyoruz, bu nedenle Hata Ayıklama'nın seçili olduğundan emin olalım . Önce ⌘B tuşlarına basarak uygulamamızı derleyelim veya Derleme menüsünden Tümünü Derle'yi seçin.

Herhangi bir hata yoksa, Mac için Visual Studio durum çubuğunda Derleme Başarılı iletisini görürsünüz. Hatalar varsa projenizi gözden geçirin ve adımları doğru izlediğinizden emin olun. Kodunuzun (hem Xcode'da hem de Mac için Visual Studio) öğreticideki kodla eşleşip eşleşmediğini onaylayarak başlayın.

Uygulamayı Çalıştırma

Uygulamayı çalıştırmak için üç seçeneğiniz vardır:

  • ⌘+Enter tuşlarına basın.
  • Çalıştır menüsünden Hata Ayıkla'yı seçin.
  • Mac için Visual Studio araç çubuğundaki Yürüt düğmesine tıklayın (Çözüm Gezgini hemen üstünde).

Uygulama derlenir (henüz derlenmemişse), hata ayıklama modunda başlatılır, tvOS Simülatörü başlatılır ve uygulama başlatılır ve ana arabirim penceresini görüntüler:

Örnek uygulama giriş ekranı

Donanım menüsünden Apple TV Remote'ı göster'i seçerek simülatörü kontrol edebilirsiniz.

Apple TV Remote'ı Göster'i seçin

Simülatör'ün uzak ayarını kullanarak düğmeye birkaç kez tıklarsanız etiket şu sayıyla güncelleştirilmelidir:

Güncelleştirilmiş sayıyla etiket

Tebrikler! Burada birçok konuyu ele aldık, ancak bu öğreticiyi baştan sona takip ettiyseniz, artık Xamarin.tvOS uygulamasının bileşenlerini ve bunları oluşturmak için kullanılan araçları iyice anlamanız gerekir.

Nereden sonrakine?

Apple TV uygulamalarının geliştirilmesi, kullanıcı ile arabirim arasındaki bağlantının kesilmesi (odanın karşısında kullanıcının elinde yer almaması) ve tvOS'un uygulama boyutu ve depolama alanına getirdiği sınırlamalar nedeniyle birkaç zorluk sunar.

Sonuç olarak, Xamarin.tvOS uygulamasının tasarımına geçmeden önce aşağıdaki belgeleri okumanızı kesinlikle öneririz:

  • tvOS 9'a giriş – Bu makalede Xamarin.tvOS geliştiricileri için tvOS 9'da bulunan tüm yeni ve değiştirilmiş API'ler ve özellikler tanıtılır.
  • Gezinti ve Odak ile Çalışma – Xamarin.tvOS uygulamanızın kullanıcıları, cihazın ekranındaki resimlere dokunduğu iOS'ta olduğu gibi doğrudan arabirimiyle etkileşime girmez, siri uzaktan kumandasını kullanarak dolaylı olarak odanın her yanından etkileşim kurar. Bu makale, Odak kavramını ve Xamarin.tvOS uygulamasının Kullanıcı Arabiriminde Gezintiyi işlemek için nasıl kullanıldığını kapsar.
  • Siri Remote ve Bluetooth Denetleyicileri – Kullanıcıların Apple TV ile ve Xamarin.tvOS uygulamanızla etkileşim kurmalarının ana yolu, dahil edilen Siri Remote üzerinden yapılır. Uygulamanız bir oyunsa, isteğe bağlı olarak uygulamanızda 3. taraf, Made For iOS (MFI) Bluetooth Oyun Kumandaları için destek oluşturabilirsiniz. Bu makale, Xamarin.tvOS uygulamalarınızdaki yeni Siri Remote ve Bluetooth oyun kumandalarını desteklemeyi kapsar.
  • Kaynaklar ve Veri Depolama – Yeni Apple TV, iOS cihazlardan farklı olarak tvOS uygulamaları için kalıcı ve yerel depolama alanı sağlamaz. Sonuç olarak, Xamarin.tvOS uygulamanızın bilgileri (kullanıcı tercihleri gibi) kalıcı hale getirmek gerekiyorsa, bu verileri iCloud'dan depolaması ve alması gerekir. Bu makale, bir Xamarin.tvOS uygulamasında kaynaklar ve kalıcı veri depolama ile çalışmayı kapsar.
  • Simgeler ve Görüntülerle Çalışma – Büyüleyici simgeler ve görüntüler oluşturmak, Apple TV uygulamalarınız için çevreleyici bir kullanıcı deneyimi geliştirmenin kritik bir parçasıdır. Bu kılavuzda, Xamarin.tvOS uygulamalarınız için gerekli grafik varlıklarını oluşturmak ve eklemek için gereken adımlar ele alınacaktır.
  • Kullanıcı Arabirimi – Kullanıcı Arabirimi (UI) denetimleri de dahil olmak üzere Genel Kullanıcı Deneyimi (UX) kapsamı, Xamarin.tvOS ile çalışırken Xcode'un Arabirim Oluşturucusu ve UX tasarım ilkelerini kullanın.
  • Dağıtım ve Test – Bu bölüm, bir uygulamayı test etmek için kullanılan konuları ve uygulamayı dağıtmayı kapsar. Buradaki konular arasında hata ayıklama için kullanılan araçlar, test edicilere dağıtım ve Apple TV App Store'da uygulama yayımlama gibi konular yer alır.

Xamarin.tvOS ile çalışırken herhangi bir sorunla karşılaşırsanız, bilinen sorunlar ve çözümlerin listesi için sorun giderme belgelerimize bakın.

Özet

Bu makale, basit bir Hello, tvOS uygulaması oluşturarak Mac için Visual Studio ile tvOS için uygulama geliştirmeye hızlı bir başlangıç sağladı. TvOS cihaz sağlama, arabirim oluşturma, tvOS için kodlama ve tvOS simülatöründe test etme ile ilgili temel bilgileri ele aldı.