Android 6.0 API'leri

Android 6.0 (M) kullanıcılar ve uygulama geliştiriciler için yeni özellikler sunar. Bu belgede en önemli API'ler tanıtılmaktadır.

Geliştirmeye başlayın

Android 6.0 için uygulama derlemeye başlamak için önce Android SDK'sını edinmeniz gerekir. Ardından SDK Yöneticisi'ni kullanarak Android 6.0 SDK Platformu ve Sistem Görüntülerini indirin.

Hedef API düzeyinizi güncelleyin

Android çalıştıran cihazlar için uygulamanızı daha iyi optimize etmek amacıyla targetSdkVersion özelliğini "23" olarak ayarlayın, uygulamanızı bir Android sistem görüntüsüne yükleyin, test edin, ardından bu değişiklikle güncellenmiş uygulamayı yayınlayın.

minSdkVersion tarafından desteklenmeyen API'leri çalıştırmadan önce kodunuza sistem API düzeyini kontrol eden koşullar ekleyerek eski sürümleri desteklerken Android API'lerini de kullanabilirsiniz. Geriye dönük uyumluluğun sürdürülmesi hakkında daha fazla bilgi edinmek için Farklı Platform Sürümlerini Destekleme bölümünü okuyun.

API düzeylerinin işleyiş şekli hakkında daha fazla bilgi için API Düzeyi nedir? başlıklı makaleyi okuyun.

Parmak İzi ile Kimlik Doğrulama

Bu sürüm, desteklenen cihazlarda parmak izi taramalarını kullanarak kullanıcıların kimliğini doğrulayabilmenizi sağlayan yeni API'ler sunar. Bu API'leri Android Anahtar Deposu sistemi ile birlikte kullanın.

Kullanıcıların kimliğini parmak izi taramasıyla doğrulamak için yeni FingerprintManager sınıfının bir örneğini alın ve authenticate() yöntemini çağırın. Uygulamanız, parmak izi sensörüne sahip uyumlu bir cihazda çalışıyor olmalıdır. Uygulamanızda parmak izi kimlik doğrulama akışı için kullanıcı arayüzünü uygulamanız ve kullanıcı arayüzünüzde standart Android parmak izi simgesini kullanmanız gerekir. Android parmak izi simgesi (c_fp_40px.png), Biyometrik Kimlik Doğrulama örneğine dahil edilmiştir. Parmak iziyle kimlik doğrulama kullanan birden fazla uygulama geliştiriyorsanız her uygulamanın, kullanıcının parmak izinin kimliğini bağımsız olarak doğrulaması gerektiğini unutmayın.

Bu özelliği uygulamanızda kullanmak için önce USE_FINGERPRINT iznini manifest dosyanıza ekleyin.

<uses-permission
        android:name="android.permission.USE_FINGERPRINT" />
Parmak iziyle kimlik doğrulama işlevini gösteren mobil cihaz

Parmak izi kimlik doğrulamasının uygulamada kullanımını görmek için Biyometrik Kimlik Doğrulama örneğine bakın. Bu kimlik doğrulama API'lerini diğer Android API'leriyle birlikte nasıl kullanabileceğinize dair tanıtım için Fingerprint and Payment API'leri videosunu izleyin.

Bu özelliği test ediyorsanız aşağıdaki adımları uygulayın:

  1. Henüz yüklemediyseniz Android SDK Tools Revision 24.3'ü yükleyin.
  2. Ayarlar > Güvenlik > Parmak İzi'ne gidip kayıt talimatlarını uygulayarak emülatörde yeni bir parmak izi kaydedin.
  3. Aşağıdaki komutla parmak izi dokunma etkinliklerini emüle etmek için bir emülatör kullanın. Kilit ekranında veya uygulamanızda parmak izi dokunma etkinliklerini emüle etmek için aynı komutu kullanın.
    adb -e emu finger touch <finger_id>
    

    Windows'da telnet 127.0.0.1 <emulator-id> komutunu ve ardından finger touch <finger_id> komutunu çalıştırmanız gerekebilir.

Kimlik Bilgilerini Onayla

Uygulamanız, cihazlarının kilidini en son ne zaman açtıklarına dayalı olarak kullanıcıların kimliklerini doğrulayabilir. Bu özellik, kullanıcıların uygulamaya özel ek şifreleri hatırlamak zorunda kalmamasını sağlar ve kendi kimlik doğrulama kullanıcı arayüzünüzü uygulama ihtiyacını ortadan kaldırır. Uygulamanız bu özelliği, kullanıcı kimlik doğrulaması için ortak veya gizli anahtar uygulamasıyla birlikte kullanmalıdır.

Kullanıcının kimliği başarıyla doğrulandıktan sonra aynı anahtarın yeniden kullanılabileceği zaman aşımı süresini ayarlamak için KeyGenerator veya KeyPairGenerator ayarlarken yeni setUserAuthenticationValidityDurationSeconds() yöntemini çağırın.

Yeniden kimlik doğrulama iletişim kutusunu çok fazla göstermekten kaçının. Uygulamalarınız önce kriptografik nesneyi kullanmayı denemelidir. Zaman aşımı süresi dolarsa uygulamanızda kullanıcının kimliğini yeniden doğrulamak için createConfirmDeviceCredentialIntent() yöntemini kullanın.

Uygulama Bağlama

Bu sürüm, daha güçlü uygulama bağlantıları sağlayarak Android’in intent sistemini geliştirir. Bu özellik, bir uygulamayı sahip olduğunuz bir web alanıyla ilişkilendirmenize olanak tanır. Platform, bu ilişkilendirmeye göre belirli bir web bağlantısını işlemek için kullanılacak varsayılan uygulamayı belirleyebilir ve kullanıcılardan uygulama seçmelerini istemeyi atlayabilir. Bu özelliğin nasıl uygulanacağını öğrenmek için Uygulama Bağlantılarını Kullanma bölümüne bakın.

Uygulamalar için Otomatik Yedekleme

Sistem artık uygulamalar için otomatik tam veri yedekleme ve geri yükleme işlemi gerçekleştiriyor. Bu davranışın etkinleştirilmesi için uygulamanızın Android 6.0'ı (API düzeyi 23) hedeflemesi gerekir. Başka bir kod eklemeniz gerekmez. Kullanıcılar Google hesaplarını silerse yedek verileri de silinir. Bu özelliğin nasıl çalıştığını ve dosya sisteminde nelerin yedekleneceğini nasıl yapılandıracağınızı öğrenmek için Uygulamalar için Otomatik Yedekleme'yi Yapılandırma sayfasına bakın.

Doğrudan Paylaşım

Doğrudan Paylaşım işlevinin gösterildiği bir cep telefonunun alt kısmı

Bu sürüm, paylaşımı kullanıcılar için sezgisel ve hızlı hale getiren API'ler sağlar. Artık uygulamanızdaki belirli bir etkinliği başlatan doğrudan paylaşım hedefleri tanımlayabilirsiniz. Bu doğrudan paylaşım hedefleri, kullanıcılara Paylaş menüsü aracılığıyla gösterilir. Bu özellik, kullanıcıların başka uygulamalarda hedefler için içerik (ör. kişiler) paylaşmasına olanak tanır. Örneğin, doğrudan paylaşım hedefi, başka bir sosyal ağ uygulamasında bir etkinlik başlatabilir ve bu şekilde, kullanıcının söz konusu uygulamadaki belirli bir arkadaşıyla veya toplulukla doğrudan içerik paylaşmasına izin verilir.

Doğrudan paylaşım hedeflerini etkinleştirmek için ChooserTargetService sınıfını genişleten bir sınıf tanımlamanız gerekir. Manifest dosyasında hizmetinizi tanımlayın. Bu açıklamada, SERVICE_INTERFACE işlemini kullanarak BIND_CHOOSER_TARGET_SERVICE iznini ve bir amaç filtresini belirtin.

Aşağıdaki örnek, manifest dosyanızda ChooserTargetService öğesini nasıl tanımlayabileceğinizi göstermektedir.

<service android:name=".ChooserTargetService"
        android:label="@string/service_name"
        android:permission="android.permission.BIND_CHOOSER_TARGET_SERVICE">
    <intent-filter>
        <action android:name="android.service.chooser.ChooserTargetService" />
    </intent-filter>
</service>

ChooserTargetService ile yayınlamak istediğiniz her etkinlik için uygulama manifestinize "android.service.chooser.chooser_target_service" adlı bir <meta-data> öğesi ekleyin.

<activity android:name=".MyShareActivity”
        android:label="@string/share_activity_label">
    <intent-filter>
        <action android:name="android.intent.action.SEND" />
    </intent-filter>
<meta-data
        android:name="android.service.chooser.chooser_target_service"
        android:value=".ChooserTargetService" />
</activity>

Sesli Etkileşimler

Bu sürümde, Sesli İşlemler ile birlikte uygulamalarınıza sesli sohbet deneyimleri oluşturmanıza olanak tanıyan yeni bir sesli etkileşim API'si sunulmaktadır. Bir sesli işlemin etkinliğinizi tetikleyip tetiklemediğini belirlemek için isVoiceInteraction() yöntemini çağırın. Öyleyse uygulamanız, kullanıcıdan sesli onay istemek, bir seçenek listesinden seçim yapmak ve daha fazlası için VoiceInteractor sınıfını kullanabilir.

Sesli etkileşimlerin çoğu, kullanıcının sesli işleminden kaynaklanır. Bununla birlikte, sesli etkileşim etkinliği kullanıcı girişi olmadan da başlayabilir. Örneğin, sesli etkileşim yoluyla başlatılan başka bir uygulama da sesli etkileşim başlatma isteği gönderebilir. Etkinliğinizin bir kullanıcının sesli sorgusundan mı yoksa başka bir sesli etkileşim uygulamasından mı başlatıldığını belirlemek için isVoiceInteractionRoot() yöntemini çağırın. Etkinliğinizi başka bir uygulama başlatırsa yöntem false değerini döndürür. Uygulamanız daha sonra kullanıcıdan bu işlemi yapmak istediğini onaylamasını isteyebilir.

Sesli işlemleri uygulama hakkında daha fazla bilgi edinmek için Sesli İşlemler geliştirici sitesine bakın.

Destek API'sı

Bu sürüm, kullanıcıların bir asistan üzerinden uygulamalarınızla etkileşimde bulunması için yeni bir yol sunar. Bu özelliği kullanmak için kullanıcının Asistan'ı mevcut bağlamı kullanacak şekilde etkinleştirmesi gerekir. Etkinleştirildiğinde kullanıcı Ana Sayfa düğmesine uzun basarak Asistan'ı herhangi bir uygulamadan çağırabilir.

Uygulamanız, FLAG_SECURE işaretini ayarlayarak mevcut bağlamı asistanla paylaşmamayı seçebilir. Uygulamanız, platformun asistana gönderdiği standart bilgi kümesine ek olarak yeni AssistContent sınıfını kullanarak ek bilgiler paylaşabilir.

Asistana uygulamanızdan ek içerik sağlamak için aşağıdaki adımları uygulayın:

  1. Application.OnProvideAssistDataListener arayüzünü uygulayın.
  2. registerOnProvideAssistDataListener() kullanarak bu işleyiciyi kaydedin.
  3. Etkinliğe özel bağlamsal bilgiler sağlamak için onProvideAssistData() ve isteğe bağlı olarak yeni onProvideAssistContent() geri çağırmasını geçersiz kılın.

Kabul Edilebilir Depolama Cihazları

Bu sürümle kullanıcılar SD kart gibi harici depolama cihazlarını kullanabilir. Harici bir depolama cihazı kullanmak, cihazı dahili depolama gibi davranacak şekilde şifreler ve biçimlendirir. Bu özellik, kullanıcıların hem uygulamaları hem de bu uygulamalara ait gizli verileri depolama cihazları arasında taşımasına olanak tanır. Uygulamaları taşırken sistem, manifest dosyasındaki android:installLocation tercihine uyar.

Uygulamanız aşağıdaki API'lere veya alanlara erişiyorsa bu API'lerin veya alanların döndürdüğü dosya yollarının, uygulama dahili ve harici depolama cihazları arasında taşındığında dinamik olarak değişeceğini unutmayın. Dosya yolları oluştururken bu API'leri her zaman dinamik olarak çağırmanız önemle tavsiye edilir. Sabit kodlu dosya yollarını kullanmayın veya daha önce oluşturulan tam nitelikli dosya yollarını kullanmayın.

Bu özellikte hata ayıklamak için aşağıdaki komutu çalıştırarak Android cihaza USB On-The-Go (OTG) kablosuyla bağlanmış bir USB sürücünün kullanılmasını etkinleştirebilirsiniz:

$ adb shell sm set-force-adoptable true

Bildirimler

Bu sürüm, bildirimler için aşağıdaki API değişikliklerini ekler:

Bluetooth Ekran Kalemi Desteği

Bu sürüm, Bluetooth ekran kalemi kullanarak kullanıcı girişi için iyileştirilmiş destek sağlar. Kullanıcılar telefon veya tabletleriyle uyumlu bir Bluetooth ekran kalemini eşleyip bağlayabilir. Bağlandığında dokunmatik ekrandaki konum bilgileri, yalnızca dokunmatik ekrana göre daha geniş bir ifade aralığı sağlamak için ekran kalemindeki basınç ve düğme bilgileriyle birleştirilir. Uygulamanız, etkinliğinize View.OnContextClickListener ve GestureDetector.OnContextClickListener nesneleri kaydederek ekran kalemi düğmesine basılmasını dinleyip ikincil işlemler gerçekleştirebilir.

Ekran kalemi düğmesi etkileşimlerini algılamak için MotionEvent yöntemlerini ve sabit değerlerini kullanın:

İyileştirilmiş Bluetooth Düşük Enerji Taraması

Uygulamanız Bluetooth Düşük Enerji taramaları yapıyorsa sistemin, ScanFilter grubuyla eşleşen bir reklam paketini ilk bulduğunda veya uzun bir süre sonra gördüğünde geri çağırmaları bilgilendirmesini istediğinizi belirtmek için yeni setCallbackType() yöntemini kullanın. Bu tarama yaklaşımı, önceki platform sürümünde sağlanandan daha fazla güç tasarrufu sağlar.

Hotspot 2.0 Sürüm 1 Desteği

Bu sürüm, Nexus 6 ve Nexus 9 cihazlarda Hotspot 2.0 Sürüm 1 spesifikasyonu için destek sağlar. Uygulamanızda Hotspot 2.0 kimlik bilgileri sağlamak için WifiEnterpriseConfig sınıfının setPlmn() ve setRealm() gibi yeni yöntemlerini kullanın. WifiConfiguration nesnesinde FQDN ve providerFriendlyName alanlarını ayarlayabilirsiniz. Yeni isPasspointNetwork() yöntemi, algılanan ağın bir Hotspot 2.0 erişim noktasını temsil edip etmediğini gösterir.

4K Ekran Modu

Platform artık uygulamaların, uyumlu donanımlarda ekran çözünürlüğünün 4K'ya yükseltilmesini istemesine izin veriyor. Mevcut fiziksel çözünürlüğü sorgulamak için yeni Display.Mode API'lerini kullanın. Kullanıcı arayüzü, daha düşük bir mantıksal çözünürlükte çizilir ve daha yüksek bir fiziksel çözünürlüğe yükseltilirse getPhysicalWidth() yönteminin döndürdüğü fiziksel çözünürlüğün, getSize() tarafından bildirilen mantıksal çözünürlükten farklı olabileceğini unutmayın.

Uygulama penceresinin preferredDisplayModeId özelliğini ayarlayarak, sistemden, uygulamanız çalışırken uygulamanızın fiziksel çözünürlüğünü değiştirmesini isteyebilirsiniz. 4K ekran çözünürlüğüne geçmek istediğinizde bu özellik yararlı olur. 4K ekran modundayken kullanıcı arayüzü, orijinal çözünürlükte (1080p gibi) oluşturulmaya devam eder ve 4K'ya yükseltilir ancak SurfaceView nesneleri yerel çözünürlükte içerik gösterebilir.

Temalı ColorStateLists

Tema özellikleri, artık Android 6.0 (API düzeyi 23) çalıştıran cihazlar için ColorStateList ürününde desteklenmektedir. Resources.getColorStateList() ve Resources.getColor() yöntemleri kullanımdan kaldırıldı. Bu API'leri çağırıyorsanız yeni Context.getColorStateList() veya Context.getColor() yöntemlerini çağırın. Bu yöntemler, ContextCompat aracılığıyla v4 appcompat kitaplığında da bulunabilir.

Ses Özellikleri

Bu sürümde, Android'de ses işlemeyle ilgili iyileştirmeler yapılmıştır. Örneğin:

  • Yeni android.media.midi API'leriyle MIDI protokolü desteği. MIDI etkinlikleri göndermek ve almak için bu API'leri kullanın.
  • Yeni AudioRecord.Builder ve AudioTrack.Builder sınıfları sayesinde sırasıyla dijital ses yakalama ve çalma nesneleri oluşturun, ses kaynağı ve havuz özelliklerini sistem varsayılanlarını geçersiz kılacak şekilde yapılandırın.
  • Ses ve giriş cihazlarını ilişkilendirmek için API kancaları. Bu, özellikle uygulamanız kullanıcıların Android TV'ye bağlı bir oyun kumandasından veya uzaktan kumandadan sesli arama başlatmalarına izin veriyorsa yararlı olur. Kullanıcı bir arama başlattığında sistem yeni onSearchRequested() geri çağırmayı çağırır. Kullanıcının giriş cihazında yerleşik bir mikrofon olup olmadığını belirlemek için bu geri çağırmadan InputDevice nesnesini alın ve yeni hasMicrophone() yöntemini çağırın.
  • Şu anda sisteme bağlı tüm ses cihazlarının listesini almanızı sağlayan yeni getDevices() yöntemi. Bir ses cihazı bağlandığında veya bağlantısı kesildiğinde sistemin uygulamanızı bilgilendirmesini istiyorsanız AudioDeviceCallback nesnesi de kaydedebilirsiniz.

Video Özellikleri

Bu sürüm, video işleme API'lerine aşağıdakiler gibi yeni özellikler ekler:

  • Uygulamaların, ses ve video akışlarını eşzamanlı olarak oluşturmasına yardımcı olan yeni MediaSync sınıfı. Ses arabellekleri engellenmeyecek şekilde gönderilir ve geri arama yoluyla geri gönderilir. Ayrıca dinamik oynatma hızını da destekler.
  • Uygulama tarafından açılan bir oturumun kaynak yöneticisi tarafından geri çekildiğini belirten yeni EVENT_SESSION_RECLAIMED etkinliği. Uygulamanız DRM oturumları kullanıyorsa bu etkinliği işleme almalı ve geri alınan bir oturumu kullanmamaya dikkat etmelisiniz.
  • Kaynak yöneticisinin, codec tarafından kullanılan medya kaynağını geri çektiğini belirten yeni ERROR_RECLAIMED hata kodu. Bu istisna ile, codec terminal durumuna taşındığı için serbest bırakılmalıdır.
  • Desteklenen maksimum eş zamanlı codec örneği sayısıyla ilgili ipucu alabileceğiniz yeni getMaxSupportedInstances() arayüzü.
  • Hızlı veya ağır çekim oynatma için medya oynatma hızını ayarlamak üzere yeni setPlaybackParams() yöntemi. Ayrıca, videoyla birlikte sesin çalınmasını da otomatik olarak uzatır veya hızlandırır.

Kamera Özellikleri

Bu sürüm, kameranın el fenerine erişmek ve resimlerin kamerada yeniden işlenmesi için aşağıdaki yeni API'leri içerir:

El Feneri API'sı

Bir kamera cihazında flaş birimi varsa kamerayı açmadan flaş biriminin fener modunu açmak veya kapatmak için setTorchMode() yöntemini kullanabilirsiniz. Uygulamanın, flaş birimi veya kamera cihazının münhasır sahipliği yoktur. Kamera cihazı kullanılamaz duruma geldiğinde veya feneri açık tutan başka kamera kaynakları kullanılamadığında fener modu kapatılır ve kullanılamaz hale gelir. Flaş modunu kapatmak için diğer uygulamalar da setTorchMode() numarasını arayabilir. Flaş modunu açan son uygulama kapatıldığında flaş modu da kapanır.

registerTorchCallback() yöntemini çağırarak fener modu durumu hakkında bilgilendirilmek için bir geri çağırma kaydedebilirsiniz. Geri arama ilk kez kaydedildiğinde, şu anda bilinen ve flaş üniteli tüm kamera cihazlarının fener modu durumu bildirilerek hemen çağrılır. Flaş modu başarıyla açılır veya kapatılırsa onTorchModeChanged() yöntemi çağrılır.

Yeniden İşleme API'si

Camera2 API, YUV ve özel opak biçimli resim yeniden işlemeyi destekleyecek şekilde genişletilmiştir. Bu yeniden işleme özelliklerinin kullanılabilir olup olmadığını belirlemek için getCameraCharacteristics() yöntemini çağırın ve REPROCESS_MAX_CAPTURE_STALL anahtarını kontrol edin. Bir cihaz, yeniden işlemeyi destekliyorsa createReprocessableCaptureSession() yöntemini çağırarak yeniden işlenebilir bir kamera çekimi oturumu ve giriş arabelleğinin yeniden işlenmesi için istekler oluşturabilirsiniz.

Giriş arabelleği akışını kamera yeniden işleme girişine bağlamak için ImageWriter sınıfını kullanın. Boş bir arabellek almak için şu programlama modelini uygulayın:

  1. dequeueInputImage() yöntemini çağırın.
  2. Verileri giriş arabelleğine doldurun.
  3. queueInputImage() yöntemini çağırarak arabelleği kameraya gönderin.

ImageWriter nesnesini bir PRIVATE görüntüsüyle birlikte kullanıyorsanız uygulamanız resim verilerine doğrudan erişemez. Bunun yerine, herhangi bir arabellek kopyası olmadan queueInputImage() yöntemini çağırarak PRIVATE görüntüsünü doğrudan ImageWriter öğesine iletin.

ImageReader sınıfı artık PRIVATE biçimli resim akışlarını destekliyor. Bu destek, uygulamanızın ImageReader çıkış resminden oluşan dairesel bir resim kuyruğu korumasına, bir veya daha fazla resim seçmesine ve bunları kameranın yeniden işlenmesi için ImageWriter uygulamasına göndermesine olanak tanır.

Android for Work Özellikleri

Bu sürüm Android for Work için aşağıdaki yeni API'ları içerir:

  • Şirkete Ait, Tek Kullanımlık Cihazlar için gelişmiş kontroller: Cihaz Sahibi artık Şirkete Ait, Tek Kullanımlık (COSU) cihazların yönetimini iyileştirmek için aşağıdaki ayarları kontrol edebilir:
    • Tuş koruyucuyu setKeyguardDisabled() yöntemiyle devre dışı bırakın veya yeniden etkinleştirin.
    • setStatusBarDisabled() yöntemini kullanarak durum çubuğunu (hızlı ayarlar, bildirimler ve Google Asistan'ı başlatan yukarı kaydırma hareketi dahil) devre dışı bırakabilir veya yeniden etkinleştirebilirsiniz.
    • UserManager sabit değeri DISALLOW_SAFE_BOOT ile güvenli başlatmayı devre dışı bırakın veya yeniden etkinleştirin.
    • STAY_ON_WHILE_PLUGGED_IN sabit değeri ile fişe takılıyken ekranın kapanmasını önleyin.
  • Cihaz Sahibi tarafından uygulamaların sessiz bir şekilde yüklenmesi ve kaldırılması: Cihaz Sahibi artık Google Play for Work'ten bağımsız olarak, PackageInstaller API'lerini kullanarak uygulamaları sessiz bir şekilde yükleyip kaldırabilir. Artık cihazların temel hazırlığını, kullanıcı etkileşimi olmadan uygulamaları getiren ve yükleyen bir Cihaz Sahibi aracılığıyla yapabilirsiniz. Bu özellik, bir Google hesabını etkinleştirmeden kiosk'ların veya benzer cihazların tek dokunuşla temel hazırlığını yapmak için kullanışlıdır.
  • Sessiz kurumsal sertifika erişimi: Bir uygulama, kullanıcıdan sertifika seçmesi istenmeden önce choosePrivateKeyAlias() çağrısı yaptığında Profil veya Cihaz Sahibi artık takma adı istekte bulunan uygulamaya sessizce sağlamak için onChoosePrivateKeyAlias() yöntemini çağırabilir. Bu özellik, yönetilen uygulamalara kullanıcı etkileşimi olmadan sertifikalara erişim izni vermenizi sağlar.
  • Sistem güncellemelerini otomatik olarak kabul etme. Cihaz Sahibi artık setSystemUpdatePolicy() ile bir sistem güncelleme politikası belirleyerek, sistem güncellemesini otomatik olarak kabul edebilir (örneğin, kiosk cihazlarda) veya güncellemeyi erteleyip 30 güne kadar kullanıcının güncelleme yapmasını engelleyebilir. Ayrıca yönetici, güncellemenin alınacağı günlük bir zaman aralığı belirleyebilir (örneğin, kiosk cihazının kullanılmadığı saatler). Bir sistem güncellemesi mevcut olduğunda sistem, cihaz politikası denetleyici uygulamasının bir sistem güncelleme politikası belirleyip belirlemediğini kontrol eder ve buna göre davranır.
  • Yetki verilmiş sertifika yükleme: Bir Profil veya Cihaz Sahibi artık üçüncü taraf uygulamalarına şu DevicePolicyManager sertifika yönetimi API'lerini çağırma olanağı verebilir:
  • Android for Work içindeki iş durumu bildirim özelliğini gösteren mobil cihaz
  • Veri kullanımını izleme. Bir Profil veya Cihaz Sahibi artık yeni NetworkStatsManager yöntemlerini kullanarak Ayarlar > Veri kullanımı bölümünde gösterilen veri kullanımı istatistiklerini sorgulayabilir. Profil Sahiplerine, yönettikleri profildeki verileri sorgulama izni otomatik olarak verilir. Cihaz Sahipleri ise, yönetilen birincil kullanıcının kullanım verilerine erişebilir.
  • Çalışma zamanı izin yönetimi:

    Bir Profil veya Cihaz Sahibi, setPermissionPolicy() kullanan tüm uygulamaların çalışma zamanı istekleri için izin politikası belirleyebilir. Bu politika, kullanıcıdan izin vermesini istemek veya izni sessizce otomatik olarak vermek ya da reddetmek olabilir. İkinci politika ayarlanırsa kullanıcı, Ayarlar'daki uygulamanın izinler ekranında Profil veya Cihaz Sahibi tarafından yapılan seçimi değiştiremez.

  • Ayarlar'da VPN: VPN uygulamaları artık Ayarlar > Diğer > VPN seçeneğinden görülebilir. Ayrıca, VPN kullanımıyla ilgili bildirimler artık bu VPN'nin yapılandırma şekline de özel. Profil Sahibi için bildirimler, VPN'nin yönetilen bir profil, kişisel bir profil veya her ikisi için mi yapılandırıldığına bağlı olarak farklılık gösterir. Cihaz Sahibi için bildirimler, VPN'nin tüm cihaz için yapılandırılıp yapılandırılmadığına özeldir.
  • İş durumu bildirimi: Yönetilen profildeki bir uygulamanın ön planda bir etkinliği olduğunda artık bir durum çubuğu evrak çantası simgesi görünür. Ayrıca, cihazın kilidi yönetilen profildeki bir uygulamanın etkinliğiyle doğrudan açılırsa kullanıcıya iş profilinde olduğunu bildiren bir kısa mesaj gösterilir.