Nougat Özellikleri

Android Nougat için uygulama geliştirmek için Xamarin.Android kullanmaya başlama.

Bu makalede, Android Nougat'ta tanıtılan özelliklerin bir ana hattı sağlanır, Android Nougat geliştirmesi için Xamarin.Android'in nasıl hazırlandığı açıklanır ve Xamarin.Android uygulamalarında Android Nougat özelliklerinin nasıl kullanılacağını gösteren örnek uygulamaların bağlantıları sağlanır.

Genel bakış

Android Nougat , Google'ın Android 6.0 Marshmallow'u takip etme özelliğidir. Xamarin.Android, Xamarin Android 7.0 ve sonraki sürümlerde Android 7.x Bağlamaları için destek sağlar. Android Nougat, aşağıda açıklanan Nougat özellikleri için birçok yeni API ekler; bu API'ler, Xamarin.Android 7.0 kullandığınızda Xamarin.Android uygulamalarında kullanılabilir.

Android Nougat çalıştıran Android tablet ve telefonların hero görüntüleri

Android 7.x API'leri hakkında daha fazla bilgi için bkz . Android API Başvurusu. Bilinen Xamarin.Android 7.0 sorunlarının listesi için lütfen sürüm notlarını inceleyin.

Android Nougat, Xamarin.Android geliştiricilerine ilgi çekici birçok yeni özellik sağlar. Bu özellikler şunları içerir:

  • Çoklu pencere desteği – Bu geliştirme, kullanıcıların aynı anda ekranda iki uygulama açmasını mümkün kılar.

  • Bildirim Geliştirmeleri – Android Nougat'taki yeniden tasarlanan bildirim sistemi, kullanıcıların kısa mesajları doğrudan bildirim kullanıcı arabiriminden hızlı bir şekilde yanıtlamasına olanak sağlayan bir Doğrudan Yanıt özelliği içerir. Ayrıca, uygulamanız alınan iletiler için bildirimler oluşturursa, yeni paketlenmiş bildirimler özelliği birden fazla ileti alındığında bildirimleri tek bir grup olarak paketleyebilir.

  • Veri Tasarrufu – Bu özellik, uygulamaların hücresel veri kullanımını azaltmaya yardımcı olan yeni bir sistem hizmetidir; kullanıcılara uygulamaların hücresel verileri nasıl kullandığı üzerinde denetim sağlar.

Buna ek olarak Android Nougat, uygulama geliştiricilerine yeni bir ağ güvenliği yapılandırma özelliği, Doze on the Go, anahtar kanıtlama, yeni Hızlı Ayarlar API'leri, çoklu yerel ayar desteği, ICU4J API'leri, WebView geliştirmeleri, Java 8 dil özelliklerine erişim, kapsamlı dizin erişimi, özel işaretçi API'si, platform VR desteği, sanal dosyalar ve arka plan işleme iyileştirmeleri gibi birçok başka iyileştirme de getirir.

Bu makalede, yeni özellikleri denemek ve yeni Android Nougat platformunu hedeflemek için geçişi veya özellik çalışmasını planlamak için Android Nougat ile uygulama oluşturmaya nasıl başlayıp başlama işlemi açıklanır.

Gereksinimler

Xamarin tabanlı uygulamalarda yeni Android Nougat özelliklerini kullanmak için aşağıdakiler gereklidir:

  • Visual Studio veya Mac için Visual Studio – Visual Studio kullanıyorsanız, Xamarin için Visual Studio Araçları 4.2.0.628 veya sonraki bir sürümü gerekir. Mac için Visual Studio kullanıyorsanız, Mac için Visual Studio 6.1.0 veya sonraki bir sürümü gerekir.

  • Xamarin.Android – Xamarin.Android 7.0 veya üzeri Visual Studio veya Mac için Visual Studio ile yüklenip yapılandırılmalıdır.

  • Android SDK - Android SDK 7.0 (API 24) veya üstü Android SDK Yöneticisi aracılığıyla yüklenmelidir.

  • Java Developer Kit – Xamarin Android 7.0 geliştirmesi, API düzeyi 24 veya üzeri için geliştiriyorsanız JDK 8 veya üzerini gerektirir (JDK 8, 24'ten önceki API düzeylerini de destekler). Özel denetimler veya Form Önizleyicisi kullanıyorsanız JDK 8'in 64 bit sürümü gereklidir.

Önemli

Xamarin.Android, JDK 9'ı desteklemez.

Android Nougat ile güvenilir bir şekilde çalışmak için uygulamaların Xamarin C6SR4 veya üzeri ile yeniden oluşturulması gerektiğini unutmayın. Android Nougat yalnızca NDK tarafından sağlanan yerel kitaplıklara bağlanabildiğinden, Mono.Data.Sqlite.dll gibi kitaplıkları kullanan mevcut uygulamalar düzgün bir şekilde yeniden derlenmedikleri takdirde Android Nougat'ta çalıştırılırken kilitlenebilir.

Kullanmaya Başlama

Android Nougat'ı Xamarin.Android ile kullanmaya başlamak için bir Android Nougat projesi oluşturabilmeniz için önce en son araçları ve SDK paketlerini indirip yüklemeniz gerekir:

  1. Xamarin'den en son Xamarin.Android güncelleştirmelerini yükleyin.

  2. Android 7.0 (API 24) paketlerini ve araçlarını veya üzerini yükleyin.

  3. Android Nougat'ı hedefleyen yeni bir Xamarin.Android projesi oluşturun.

  4. Android Nougat için bir öykünücü veya cihaz yapılandırın.

Bu adımların her biri aşağıdaki bölümlerde açıklanmıştır:

Xamarin Güncelleştirmeler yükleme

Android Nougat için Xamarin desteği eklemek için Visual Studio'daki güncelleştirme kanalını değiştirin veya Mac için Visual Studio Kararlı kanala geçin ve en son güncelleştirmeleri uygulayın. Şu anda yalnızca Alfa veya Beta kanalında kullanılabilen özelliklere de ihtiyacınız varsa, Alfa veya Beta kanalına geçebilirsiniz (Alfa ve Beta kanalları android 7.x için de destek sağlar). Güncelleştirmeler (yayınlar) kanalını değiştirme hakkında bilgi için bkz. Güncelleştirmeler Kanalını Değiştirme.

Android SDK'sını yükleme

Xamarin Android 7.0 ile proje oluşturmak için öncelikle Android SDK Yöneticisi'ni kullanarak SDK Platformu Android N (API 24) veya üzerini yüklemeniz gerekir. Ayrıca en son Android SDK Araçlarını da yüklemeniz gerekir:

  1. Android SDK Yöneticisi'ni başlatın (Mac için Visual Studio Araçlar > Android SDK Yöneticisi'ni aç...; Visual Studio'da Araçlar > Android > SDK Yöneticisi'ni kullanın).

  2. Android 7.0 (API 24) veya üzerini yükleyin:

    Android SDK Yöneticisi'nde Android 7.0 paketlerini seçme

  3. En son Android SDK araçlarını yükleyin:

    Android SDK Yöneticisi'nde en son Android SDK araçlarını seçme

    Android SDK Araçları düzeltmesi 25.2.2 veya üzerini, Android SDK Platform araçları 24.0.3 veya üzerini ve Android SDK Derleme araçları 24.0.2 veya üzerini yüklemeniz gerekir.

  4. Java Geliştirme Seti Konumunun JDK 1.8 için yapılandırıldığını doğrulayın:

    Araçlar seçenekleri altında JDK 8 yolunu yapılandırma

    Bu ayarı Visual Studio'da görüntülemek için Araçlar > Seçenekler Xamarin > Android Ayarlar'ne tıklayın>. Mac için Visual Studio'da Tercihler > Projeleri > SDK Konumları > Android'e tıklayın.

Xamarin.Android Projesi Başlatma

Yeni bir Xamarin.Android projesi oluşturun. Xamarin ile Android geliştirme konusunda yeniyseniz Xamarin.Android projeleri oluşturma hakkında bilgi edinmek için bkz. Merhaba, Android.

Bir Android projesi oluşturduğunuzda sürüm ayarlarını Android 7.0 veya sonraki bir sürümü hedef olacak şekilde yapılandırmanız gerekir. Örneğin, Android 7.0 projenizi hedeflemek için projenizin hedef Android API düzeyini Android 7.0 (API 24 - Nougat) olarak yapılandırmanız gerekir. Hedef çerçeve düzeyinizi API 24 veya üzeri olarak ayarlamanız önerilir. Android API düzeyi düzeylerini yapılandırma hakkında daha fazla bilgi için bkz . Android API Düzeylerini Anlama.

Not

Şu anda uygulamanızı Android Nougat cihazlarına veya öykünücülerine dağıtmak için En Düşük Android sürümünü Android 7.0 (API 24 - Nougat) olarak ayarlamanız gerekir.

Öykünücü veya Cihaz Yapılandırma

Öykünücü kullanıyorsanız, Android AVD Yöneticisi'ni başlatın ve aşağıdaki ayarları kullanarak yeni bir cihaz oluşturun:

  • Cihaz: Nexus 5X, Nexus 6, Nexus 6P, Nexus Player, Nexus 9 veya Pixel C.
  • Hedef: Android 7.0 - API Düzeyi 24
  • ABI: x86 veya x86_64

Örneğin, bu sanal cihaz bir Nexus 6'ya öykünecek şekilde yapılandırılmıştır:

Nexus 6 cihazı, Android 7.0 hedefi ve Intel Atom x86 CPU/ABI kullanarak AVD yapılandırma

Nexus 5X, 6 veya 9 gibi bir fiziksel cihaz kullanıyorsanız, cihazınızı otomatik olarak hava (OTA) güncelleştirmeleri aracılığıyla güncelleştirebilir veya bir sistem görüntüsü indirip cihazınızı doğrudan yanıp sönersiniz. Cihazınızı Android Nougat'a el ile güncelleştirme hakkında daha fazla bilgi için bkz . Nexus Cihazları için OTA Görüntüleri.

Nexus 5 cihazlarının Android Nougat tarafından desteklenmediğini unutmayın.

Yeni Özellikler

Android Nougat, Çok Pencereli Destek, Bildirimler iyileştirmeleri ve Veri Tasarrufu gibi çeşitli yeni özellikler ve özellikler sunar. Aşağıdaki bölümlerde bu özellikler vurgulanır ve bunları uygulamanızda kullanmaya başlamanıza yardımcı olacak bağlantılar sağlanır.

Çoklu Pencere Modu

Çoklu pencere modu, kullanıcıların tam çoklu görev desteğiyle aynı anda iki uygulama açmasını mümkün kılar. Bu uygulamalar bölünmüş ekran modunda yan yana (yatay) veya diğerinin üstünde (dikey) çalışabilir. Kullanıcılar, yeniden boyutlandırmak için uygulamalar arasında bir ayırıcı sürükleyebilir ve uygulamalar arasındaki içeriği kesip yapıştırabilir. birden çok pencere modunda iki uygulama sunulduğunda, seçili etkinlik seçili olmayan etkinlik duraklatılmış ancak hala görünür durumdayken çalışmaya devam eder. Çoklu pencere modu, Android etkinlik yaşam döngüsünü değiştirmez.

Hem dikey hem de yatay olarak çok pencereli modda çalışan örnek uygulamalar

Xamarin.Android uygulamanızın etkinliklerinin çoklu pencere modunu nasıl desteklediğini yapılandırabilirsiniz. Örneğin, uygulamanızın en düşük boyutunu ve varsayılan yüksekliğini ve genişliğini çok pencereli modda ayarlayan öznitelikleri yapılandırabilirsiniz. Etkinliğinizin çok pencereli modda olup olmadığını belirlemek için yeni Activity.IsInMultiWindowMode özelliğini kullanabilirsiniz. Örneğin:

if (!IsInMultiWindowMode) {
    multiDisabledMessage.Visibility = ViewStates.Visible;
} else {
    multiDisabledMessage.Visibility = ViewStates.Gone;
}

Çoklu pencere modu hakkında daha fazla bilgi için bkz . Çoklu Pencere Desteği.

Gelişmiş Bildirimler

Android Nougat, yeniden tasarlanmış bir bildirim sistemi tanıtır. Kullanıcıların gelen kısa mesajlara yönelik bildirimleri doğrudan bildirim kullanıcı arabiriminde hızlı bir şekilde yanıtlamasını sağlayan yeni bir Doğrudan Yanıt özelliğine sahiptir. Android 7.0'dan başlayarak, birden fazla ileti alındığında bildirim iletileri tek bir grup olarak birlikte paketlenebilir. Ayrıca geliştiriciler bildirim görünümlerini özelleştirebilir, bildirimlerdeki sistem süslemelerinden yararlanabilir ve bildirim oluştururken yeni bildirim şablonlarından yararlanabilir.

Doğrudan Yanıt

Bir kullanıcı gelen ileti için bir bildirim aldığında, Android Nougat bildirim içinde iletiyi yanıtlamayı mümkün kılar (yanıt göndermek için mesajlaşma uygulamasını açmak yerine). Bu satır içi yanıt özelliği, kullanıcıların sms veya kısa mesaja doğrudan bildirim arabiriminde hızlı bir şekilde yanıt vermesini sağlar:

Satır içi Doğrudan Yanıt alanı olan bir bildirimin ekran görüntüsü

Uygulamanızda bu özelliği desteklemek için, kullanıcıların doğrudan bildirim kullanıcı arabiriminden metin yoluyla yanıt edebilmesi için remoteInput nesnesi aracılığıyla uygulamanıza satır içi yanıt eylemleri eklemeniz gerekir. Örneğin, aşağıdaki kod metin girişi almak için bir RemoteInput oluşturur, yanıt eylemi için bekleyen bir amaç oluşturur ve uzak giriş özellikli bir eylem oluşturur:

// Build a RemoteInput for receiving text input:
var remoteInput = new Android.Support.V4.App.RemoteInput.Builder (EXTRA_REMOTE_REPLY)
    .SetLabel (GetString (Resource.String.reply))
    .Build ();

// Build a Pending Intent for the reply action to trigger:
PendingIntent replyIntent = PendingIntent.GetBroadcast (ApplicationContext,
                                conversation.ConversationId,
                                GetMessageReplyIntent (conversation.ConversationId),
                                PendingIntentFlags.UpdateCurrent);

// Build an Android 7.0 compatible Remote Input enabled action:
NotificationCompat.Action actionReplyByRemoteInput = new NotificationCompat.Action.Builder (
    Resource.Drawable.notification_icon,
    GetString (Resource.String.reply),
    replyIntent).AddRemoteInput (remoteInput).Build ();

Bu eylem bildirime eklenir:

// Create the notification:
NotificationCompat.Builder builder = new NotificationCompat.Builder (ApplicationContext)
   .SetSmallIcon (Resource.Drawable.notification_icon)
   ...
   .AddAction (actionReplyByRemoteInput);

Android 7.0 veya üzeri için uygulamanıza satır içi yanıt eylemleri ekleme hakkında daha fazla bilgi için Android Bildirimleri Yanıtlama konusuna bakın.

Paketlenmiş Bildirimler

Android Nougat, bildirim iletilerini birlikte gruplandırabilir (örneğin, ileti konusuna göre) ve her ayrı ileti yerine grubu görüntüleyebilir. Bu paketlenmiş bildirimler özelliği, kullanıcıların bir bildirim grubunu tek bir eylemde kapatmasını veya arşivlemesini sağlar. Kullanıcı aşağı kaydırarak bildirim paketini genişleterek her bildirimi ayrıntılı olarak görüntüleyebilir:

Paketlenmiş bildirimlerin ekran görüntüsü örneği

Paketlenmiş bildirimleri desteklemek için uygulamanız Builder.SetGroup yöntemini kullanarak benzer bildirimleri paketleyebilir. Android N'de paketlenmiş bildirim grupları hakkında daha fazla bilgi için Android Paketleme Bildirimleri konusuna bakın.

Özel Görünümler

Android Nougat, sistem bildirim üst bilgileri, eylemler ve genişletilebilir düzenlerle özel bildirim görünümleri oluşturmanızı mümkün kılar. Android Nougat'taki özel bildirim görünümleri hakkında daha fazla bilgi için Android Bildirim Geliştirmeleri konusuna bakın.

Veri Tasarrufu

Android Nougat'ta kullanıcılar arka plan veri kullanımını engelleyen yeni bir Veri Tasarrufu ayarını etkinleştirebilir. Bu ayar, uygulamanızın mümkün olan her yerde ön planda daha az veri kullanması için de sinyal gönderir. Bağlan ivityManager, Android Nougat'ta genişletildi, böylece uygulamanızın Veri Tasarrufu etkinleştirildiğinde veri kullanımını sınırlamak için kullanıcının Veri Tasarrufu'nu etkinleştirip etkinleştirmediğini denetleyebilir.

Android Nougat'taki yeni Veri Tasarrufu özelliği hakkında daha fazla bilgi için Android Ağ Veri Kullanımını İyileştirme konusuna bakın.

Uygulama Kısayolları

Android 7.1, kullanıcıların uygulamanızla sık kullanılan veya önerilen görevleri hızla başlatmasını sağlayan bir Uygulama Kısayolları özelliği kullanıma sunulmuştur. Kısayol menüsünü etkinleştirmek için kullanıcı, uygulama simgesine bir saniye veya daha fazla uzun süre basılır; menü hızlı bir titreşimle görüntülenir. Basının serbest bırakılması menünün kalmasına neden olur:

Mesajlaşma uygulaması için uygulama kısayol menüsünün örnek ekranı

Bu özellik yalnızca API düzeyi 25 veya üzeri kullanılabilir. Android 7.1'deki yeni Uygulama Kısayolları özelliği hakkında daha fazla bilgi için Android Uygulama Kısayolları konusuna bakın.

Özet

Bu makalede Android Nougat tanıtıldı ve Android Nougat'ta Xamarin.Android geliştirme için en son araçları ve paketleri yükleme ve yapılandırma açıklandı. Ayrıca, Android Nougat için uygulama oluşturmaya başlamanıza yardımcı olmak için örnek kaynak koduna bağlantılar içeren Android Nougat'taki temel özelliklere genel bir bakış sağladı.