Aracılığıyla paylaş


Xamarin'de tvOS Kaynakları ve Veri Depolama

Bu makale, bir Xamarin.tvOS uygulamasında kaynaklar ve kalıcı veri depolama ile çalışmayı kapsar.

tvOS Kaynak Sınırlamaları

iOS cihazlarından farklı olarak, yeni Apple TV tvOS uygulamaları veya verileri için son derece sınırlı kalıcı, yerel depolama alanı sağlar. Çok küçük öğeler (kullanıcı tercihleri gibi) için tvOS uygulamanızın 500 KB veri sınırıyla erişimi NSUserDefaults hala vardır. Ancak, Xamarin.tvOS uygulamanızın daha büyük miktarda bilgiyi kalıcı hale getirmek için bu verileri iCloud'dan depolaması ve alması gerekir.

Buna ek olarak, tvOS bir Apple TV uygulamasının boyutunu 200 MB ile sınırlar. Uygulamanız bu boyuttan daha fazla kaynak gerektiriyorsa, bunların İsteğe Bağlı Kaynaklar kullanılarak paketlenip yüklenmesi gerekir (ek 2 GB'a kadar). Bu sınırlamalar göz önünde bulundurulduğunda, uygulamanızın kullanıcıları için en iyi deneyimi sağlamak için ek varlıkların indirilmesini doğru zamanlamanız kritik önem taşır. Daha fazla bilgi için lütfen Apple'ın İsteğe Bağlı Kaynaklar Kılavuzu'na bakın.

Kalıcı Olmayan İndirmeler

Her tvOS uygulamasına ek kaynaklarının ve varlıklarının indirilmeye devam ettiği geçici bir önbellek dizini sağlanır. Uygulama çalışmaya devam ettikçe bu dizin korunur. Ancak, Apple TV'nin diğer uygulamalar veya sistem kullanımı için yer açması gerektiğinden, bu önbellek silinebilir.

Sonuç olarak, uygulamanız daha önce indirilmiş içeriğin bir sonraki başlatılışında kullanılabilir olmasına güvenemez. Xamarin.tvOS uygulamanız her zaman gerekli kaynakların var olup olmadığını denetlemeli ve gerektiğinde indirmelidir.

Önemli

Diğer varlıkları ve kaynakları gerektiği gibi indirme olanağınız olsa da Apple, öngörülemeyen sonuçlara yol açabileceği için uygulamanızın önbelleğindeki tüm alanın tüketilmeye karşı uyarır.

Kaynakları Yönetme

Yukarıda belirtildiği gibi, tvOS uygulamalarına sağlanan sınırlı, kalıcı olmayan bilgi depolaması nedeniyle, bu kısıtlamalar Xamarin.tvOS uygulamanız için harika bir kullanıcı deneyimi oluşturmak için dikkatli bir planlama gerektirir.

iCloud Veri Depolama

Apple TV'deki depolama alanı sınırlı olduğundan, yalnızca çok sınırlı kalıcı ve yerel depolama alanı olmadığından, uygulamanızın daha önce indirdiği herhangi bir bilginin bir sonraki çalıştırılışında kullanılabilir olacağını garanti etmemiştir.

Sonuç olarak, Xamarin.tvOS uygulamanızın tüm kullanıcı verilerini bir iCloud Veri Deposu'nda depolaması gerekir. Apple, tvOS uygulamalarınız için iki iCloud tabanlı veri depolama seçeneği sunar:

  • iCloud Anahtar-Değer Depolama (KVS) - Uygulamanızın gerektirebileceği küçük bilgi parçaları (kullanıcı tercihleri gibi) için iCloud KVS Depolama kullanabilirsiniz. iCloud KVS verileri buluta ve aynı uygulamayı çalıştıran tüm kullanıcı cihazlarına otomatik olarak eşitlenir. Daha fazla bilgi için lütfen iCloud'a Giriş belgemizin Anahtar-Değer Depolama bölümüne veya Apple'ın iCloud'da Anahtar-Değer Verileri için Tasarlama belgelerine bakın.
  • CloudKit - Daha büyük bilgi parçalarının depolanması için (1 MB'tan büyük) Apple'ın CloudKit Framework'lerini kullanın. iCloud KVS Depolama aksine, CloudKit verileri uygulamanızın tüm kullanıcıları arasında paylaşılabilir (ayrıca tek bir kullanıcıya özel olabilir). Daha fazla bilgi için lütfen CloudKit'e Giriş belgelerimize veya Apple'ın CloudKit Hızlı Başlangıç bilgilerine bakın.

İsteğe Bağlı Kaynaklar

İsteğe Bağlı Kaynaklar, App Store'da barındırılan ve uygulamanızın gerektirdiği şekilde indirilen uygulama içeriği ve varlıkları (uygulama paketinden ayrı) sağlar. İsteğe Bağlı Kaynaklar kullanılarak 2 GB'a kadar ek veri sağlanabilir. İlk uygulama indirme işleminin daha küçük olmasını sağlar (tvOS uygulamaları en fazla 200 MB ile sınırlıdır) ve gerektiğinde zengin varlıklar sağlamaya devam eder.

Bir tvOS uygulaması İsteğe Bağlı Kaynaklar istediğinde, sistem bu içeriğin indirilmesini ve uygulamanın önbellek dizinine depolanmasını otomatik olarak yönetir. Uygulamanızın devam etmeden önce bu içeriğin indirilip kullanıma sunulmasını beklemesi gerekir.

Bu kaynaklar, uygulamanızın birden çok lansmanı boyunca Apple TV'de önbelleğe alınmaya devam edebilir ve böylece başlatma döngüsü hızlanabilir. Ancak, uygulamanız bir sonraki başlatılışında daha önce indirilmiş hiçbir içeriğin kullanılabilir olmasına güvenemez. Daha fazla ayrıntı için yukarıdaki Kalıcı Olmayan İndirmeler bölümüne bakın.

Bir give Resource Tag ile ilişkili ilgili içerik paketleri (oyun düzeyi 2 için tüm varlıklar gibi) oluşturmak için Xcode kullanırsınız. Daha sonra uygulamanız bu Kaynak Etiketini belirterek İsteğe Bağlı Kaynak ister. Uygulamanız, kullanıcıya içeriğin indirildiğini belirten bir kullanıcı arabirimi sunmalıdır. Daha fazla bilgi için lütfen Apple'ın İsteğe Bağlı Kaynaklar Kılavuzu'na bakın.

Önemli

Uygulamanın İsteğe Bağlı Kaynakları indirme sayısı ile tek tek indirmelerin boyutu arasında doğru dengeyi sağlamak için dikkatli olunmalıdır. Yeni içerik indirmek için oyun sürekli kesintiye uğrarsa veya tek bir indirme işlemi çok uzun sürerse kullanıcı uygulamanızdan rahatsız olabilir.

Özet

Bu makalede, tvOS sistemi tarafından Xamarin.tvOS uygulamasına uygulanan boyut, kaynak ve veri depolama sınırlamaları ele alınmıştır. Uygulamanız için harika bir kullanıcı deneyimi oluşturmak üzere bu sınırlamalara ve önerilere geçici çözüm seçenekleri sundu.