| Dosya türü | APK |
|---|---|
| Sürüm | Preview |
| Yayımcı | |
| Yayın tarihi | 25 Eki 2017 |
| Ekleme Tarihi | 25 Eki 2017 |
| İşletim sistemi gereksinimleri | Android |
| Gereksinimler | Only compatible with the Nexus 5X, Nexus 6P, Pixel C, Pixel, Pixel XL, Pixel 2, and Pixel 2 XL. |
| Toplam indirme | 1.002 |
| Haftalık indirme | 8 |
| Fiyat | Free |
Açıklama
Android O, kullanıcılar ve geliştiriciler için çeşitli yeni özellikler ve yetenekler sunar. Bu belge, geliştiriciler için yenilikleri vurgular.
Platform değişikliklerinin uygulamalarınızı etkileyebileceği alanlar hakkında bilgi edinmek için Android O Davranış Değişikliklerine göz atmayı unutmayın.
Sinir ağları API'sı
Neural Networks API (NNAPI), cihaz üzerinde makine öğrenimi işlemleri için donanım hızlandırmalı uygulamalar sağlar. API, cihaz üzerinde model oluşturma, derleme ve yürütmeyi destekler. Uygulamalar genellikle doğrudan NNAPI kullanmaz; bunun yerine, NNAPI, geliştiricilerin modellerini eğitmesine ve Android cihazlarda dağıtmasına olanak tanıyan makine öğrenimi kitaplıkları, çerçeveler ve araçlar tarafından çağrılmak içindir.
Neural Networks API hakkında daha fazla bilgi edinmek için Neural Networks API referans belgelerine ve Neural Networks API geliştirici kılavuzuna bakın.
Bildirimler
Android 8.1 Developer Preview 1, bildirimlerde aşağıdaki değişiklikleri içerir:
Uygulamalar artık yalnızca saniyede bir bildirim uyarı sesi çıkarabilir. Bu oranı aşan uyarı sesleri sıraya alınmaz ve kaybolur. Bu değişiklik, bildirim davranışının diğer yönlerini etkilemez ve bildirim iletileri beklendiği gibi gönderilmeye devam eder.
NotificationListenerService ve ConditionProviderService,ActivityManager.isLowRamDevice() çağrıldığında true değerini döndüren düşük ram hızına sahip Android destekli cihazlarda desteklenmez.
Düşük RAM'li cihazlar için iyileştirilmiş hedefleme
Android 8.1 (API seviyesi 27), Paket Yöneticisi'ne iki yeni donanım özelliği sabiti, FEATURE_RAM_LOW ve FEATURE_RAM_NORMAL ekler. Bu sabitler, uygulamalarınızın ve APK bölmelerinizin normal veya düşük RAM'li cihazlara dağıtımını hedeflemenize olanak tanır.
Bu sabitler, Play Store'un, özellikle belirli bir cihazın özelliklerine çok uygun uygulamaları vurgulayarak daha iyi bir kullanıcı deneyimi sunmasını sağlar.
Otomatik doldurma çerçevesi güncellemeleri
Android 8.1 Geliştirici Önizlemesi (API seviye 27), uygulamalarınıza dahil edebileceğiniz Otomatik Doldurma Çerçevesinde çeşitli iyileştirmeler sağlar.
Geliştirici Önizlemesi, Android Sisteminin verilerin orijinal temsili yerine otomatik doldurma kaydetme kullanıcı arabiriminde gösterdiği özel açıklamalar için destek ekler. Bu, örneğin bir kredi kartı numarasını maskelemek ve yalnızca son dört haneyi göstermek istediğinizde kullanışlıdır. Daha fazla bilgi edinmek için CustomDescription sınıfına bakın.
Geliştirici Önizlemesi, Android Sisteminin otomatik doldurma kaydetme kullanıcı arabirimini gösterip göstermeyeceğine karar vermek için uygulamanızın kullanabileceği bir Doğrulayıcı nesnesi belirtmenize olanak tanır. Bu işlevsellik, SaveInfo.Builder sınıfının setValidator() yöntemi tarafından sağlanır.
Developer Preview'daki BaseAdapter sınıfı, bir bağdaştırıcıdaki değerlerin dize temsillerini sağlamanıza olanak tanıyan setAutofillOptions() yöntemini içerir. Bu, bağdaştırıcılarında değerleri dinamik olarak oluşturan döndürücü denetimleri için kullanışlıdır. Örneğin, kullanıcıların kredi kartı son kullanma tarihinin bir parçası olarak seçebilecekleri yılların listesinin bir dize temsilini sağlamak için ThesetAutofillOptions() yöntemini kullanabilirsiniz. Otomatik doldurma hizmetleri, verileri gerektiren görünümleri uygun şekilde doldurmak için dize temsilini kullanabilir.
Ayrıca, AutofillManager sınıfı, bir sanal yapıdaki bir görünümün görünürlüğündeki değişiklikler hakkında çerçeveyi bilgilendirmek için çağırabileceğiniz notifyViewVisibilityChanged(View, int, boolean) yöntemini içerir. Ayrıca sanal olmayan yapılar için yöntem aşırı yüklenmiştir. Ancak, yöntem zaten View sınıfı tarafından çağrıldığından, sanal olmayan yapılar genellikle çerçeveyi açıkça bilgilendirmenizi gerektirmez.
EditText güncellemesi
API düzeyi 27'den başlayarak, EditText.getText() yöntemi bir Düzenlenebilir döndürür; daha önce bir CharSequence döndürdü. Editable, CharSequence'ı uyguladığı için bu değişiklik geriye dönük olarak uyumludur.
Düzenlenebilir arayüz, değerli ek işlevsellik sağlar. Örneğin, Editable, Spannable arabirimini de uyguladığı için, bir EditText örneği içindeki içeriğe işaretleme uygulayabilirsiniz.
Programlı Güvenli Tarama işlemleri
Uygulamanız, Güvenli Tarama API'sinin WebView uygulamasını kullanarak, bir WebView örneğinin Google'ın bilinen bir tehdit olarak sınıflandırdığı bir URL'ye gitmeye çalıştığını algılayabilir. Varsayılan olarak, WebView, Şekil 1'de gösterildiği gibi, kullanıcıyı bilinen tehdit konusunda uyaran ve onlara yine de URL'yi yükleme veya güvenli olan önceki bir sayfaya geri dönme seçeneği sunan bir geçiş reklamı gösterir.
Android 8.1 Geliştirici Önizlemesi'nde, uygulamanızın bilinen bir tehdide nasıl yanıt vereceğini programlı olarak tanımlayabilirsiniz:
Uygulamanızın bilinen tehditleri Güvenli Tarama'ya rapor edip etmeyeceğini kontrol edebilirsiniz.
Uygulamanızın, Güvenli Tarama'nın bilinen bir tehdit olarak sınıflandırdığı bir URL ile her karşılaştığında, güvenliğe geri dönmek gibi belirli bir eylemi otomatik olarak gerçekleştirmesini sağlayabilirsiniz.
Not: Bilinen tehditlere karşı en iyi koruma için, bir WebView nesnesinin loadUrl() yöntemini çağırmadan önce Güvenli Tarama'yı başlatana kadar bekleyin.
Video küçük resim çıkarıcı
MediaMetadataRetriever sınıfı, belirli bir zaman konumuna yakın bir kare bulan ve kaynak kareyle aynı en boy oranına sahip, ancak belirli bir genişlik ve yükseklikteki bir dikdörtgene sığacak şekilde ölçeklenen bir bitmap döndüren getScaledFrameAtTime() adlı yeni bir yönteme sahiptir. Bu, videodan küçük resimler oluşturmak için kullanışlıdır.
Kaynak videoyla aynı çözünürlükte bir bitmap döndürdüğü için belleği boşa harcayabilen getFrameAtTime() yerine bu yöntemi kullanmanızı öneririz. Örneğin, bir 4K videodan alınan bir kare, bir küçük resim görüntüsü için ihtiyaç duyacağınızdan çok daha büyük olan 16 MB'lık bir bit eşlem olacaktır.
Paylaşılan bellek API'si
Android 8.1 (API seviyesi 27), yeni bir SharedMemory sınıfı sunar. Bu sınıf, birden çok işlem veya uygulama tarafından kullanılabilen anonim paylaşılan bellek oluşturmanıza, eşlemenize ve yönetmenize olanak tanır.
WallpaperColors API'si
Android 8.1 Geliştirici Önizlemesi (API seviyesi 27), duvar kağıdı renklerini yönetmek için destek ekler. Bu özellik, bir bitmap, bir çizilebilir nesneden veya görsel olarak en temsili ilk üç rengi kullanarak bir WallpaperColors nesnesi oluşturmanıza olanak tanır. Bir duvar kağıdının göze çarpan ilk üç renginin ayrıntılarını da alabilirsiniz.
Bir WallpaperColors nesnesi oluşturmak için aşağıdakilerden birini yapın:
Üç renk kullanarak bir WallpaperColors nesnesi oluşturmak için, birincil, ikincil ve üçüncül rengi geçirerek WallpaperColors sınıfının bir örneğini oluşturun. Birincil renk boş olmamalıdır.
Bir bitmap'ten bir WallpaperColors nesnesi oluşturmak için bitmap kaynağını parametre olarak ileterek fromBitmap() yöntemini çağırın.
Bir çizilebilir nesneden bir WallpaperColors nesnesi oluşturmak için çizilebilir kaynağı parametre olarak ileterek fromDrawable() yöntemini çağırın.
Duvar kağıdından birincil, ikincil veya üçüncül renk ayrıntılarını almak için aşağıdaki yöntemleri arayın:
getPrimaryColor(), duvar kağıdının en dikkat çekici rengini döndürür.
getSecondaryColor(), duvar kağıdının en önemli ikinci rengini döndürür.
getTertiaryColor() yöntemi, duvar kağıdının en önemli üçüncü rengini döndürür
Sistemi önemli renk değişiklikleri hakkında bilgilendirmek için notifyColorsChanged() yöntemini çağırın. Bu yöntem, yeni bir WallpaperColors nesnesi sağlama fırsatınız olan bir onComputeColors() yaşam döngüsü olayını tetikler.
Renk değişiklikleri için bir dinleyici eklemek için addOnColorsChangedListener() yöntemini çağırabilirsiniz. Bir duvar kağıdının ana renklerini almak için getWallpaperColors() yöntemini de çağırabilirsiniz.
Parmak izi güncellemeleri
FingerprintManager sınıfı aşağıdaki hata kodlarını tanıttı:
FINGERPRINT_ERROR_LOCKOUT_PERMANENT - Kullanıcı, parmak izi okuyucuyu kullanarak cihazının kilidini açmayı çok fazla denedi.
FINGERPRINT_ERROR_VENDOR - Satıcıya özel bir parmak izi okuyucu hatası oluştu.