Android 14, geliştiriciler için muhteşem özellikler ve API'ler sunar. Aşağıdaki yardım uygulamalarınızın özellikleri hakkında bilgi edinir ve ilgili API'leri kullanmaya başlarsınız.
Eklenen, değiştirilen ve kaldırılan API'lerin ayrıntılı listesi için API karşılaştırma raporunu okuyun. Eklenen API'ler hakkında ayrıntılı bilgi için Android API referansı sayfasını ziyaret edin. Android 14 için API düzeyi 34'te eklenen API'leri arayın. Bölgeler hakkında bilgi edinmek için Uygulamalarınızı etkileyebilecek platform değişiklikleri hakkında daha fazla bilgi edinmek için Android 14'e göz atmayı unutmayın. Android 14'ü hedefleyen uygulamalarda ve tüm uygulamalarda davranış değişiklikleri.
Uluslararası hale getirme
Uygulamaya özgü dil tercihleri
Android 14 扩展了 Android 13(API 级别 33)中引入的按应用设定语言功能,并包含以下额外功能:
自动生成应用的
localeConfig
:从 Android Studio Giraffe Canary 7 和 AGP 8.1.0-alpha07 开始,您可以将应用配置为自动支持各应用语言偏好设定。Android Gradle 插件会根据您的项目资源生成LocaleConfig
文件,并在最终清单文件中添加对该文件的引用,这样您就不再需要手动创建或更新该文件。AGP 使用应用模块的res
文件夹中的资源以及任何库模块依赖项来确定要在LocaleConfig
文件中添加的语言区域。动态更新应用的
localeConfig
:使用LocaleManager
方法中的setOverrideLocaleConfig()
和getOverrideLocaleConfig()
可以在设备的系统设置中动态更新应用的受支持语言列表。有了这种灵活性,您可以按区域自定义支持的语言列表、运行 A/B 实验,或者如果您的应用通过服务器端推送进行本地化,则可以提供更新后的语言区域列表。输入法 (IME) 的应用语言可见性:IME 可以利用
getApplicationLocales()
方法查看当前应用的语言,并将 IME 语言与该语言进行匹配。
Grammatal Inflection API'si
3 milyar insan cinsiyete dayalı diller konuşuyor: İsim, fiil, sıfat ve edat gibi dil bilgisi kategorilerinin, konuştuğunuz veya bahsettiğiniz kişilerin ve nesnelerin cinsiyetine göre değiştiği diller. Cinsiyetli dillerin çoğunda, geleneksel olarak varsayılan veya genel cinsiyet olarak eril dil bilgisi cinsiyeti kullanılır.
Kullanıcılara yanlış dil bilgisi cinsiyetiyle hitap etmek (ör. kadınları eril dil bilgisi cinsiyetiyle hitap etmek) performanslarını ve tutumlarını olumsuz yönde etkileyebilir. Buna karşılık, kullanıcının dil bilgisi açısından cinsiyetini doğru yansıtan bir kullanıcı arayüzü, kullanıcı etkileşimini artırabilir ve daha kişiselleştirilmiş ve doğal bir kullanıcı deneyimi sunabilir.
Android 14, cinsiyetli diller için kullanıcı odaklı bir kullanıcı arayüzü oluşturmanıza yardımcı olmak amacıyla Gramatik Eğim API'yi kullanıma sunar. Bu API, uygulamanızı yeniden düzenlemeden dil bilgisi cinsiyeti desteği eklemenize olanak tanır.
Bölgeye özgü tercihler
Regional preferences enable users to personalize temperature units, the first day of the week, and numbering systems. A European living in the United States might prefer temperature units to be in Celsius rather than Fahrenheit and for apps to treat Monday as the beginning of the week instead of the US default of Sunday.
New Android Settings menus for these preferences provide users with a
discoverable and centralized location to change app preferences. These
preferences also persist through backup and restore. Several APIs and
intents—such as
getTemperatureUnit
and
getFirstDayOfWeek
—
grant your app read access to user preferences, so your app can adjust how it
displays information. You can also register a
BroadcastReceiver
on
ACTION_LOCALE_CHANGED
to handle locale configuration changes when regional preferences change.
To find these settings, open the Settings app and navigate to System > Languages & input > Regional preferences.


Erişilebilirlik
%200'e kadar doğrusal olmayan yazı tipi ölçeklendirme
Sistem, Android 14'ten itibaren %200'e kadar yazı tipi ölçeklendirmesini destekleyerek az gören kullanıcılara Web İçeriği Erişilebilirlik Yönergeleri (WCAG) ile uyumlu ek erişilebilirlik seçenekleri sağlar.
Sistem, ekrandaki büyük metin öğelerinin çok büyük ölçeklenmesini önlemek için doğrusal olmayan bir ölçeklendirme eğrisi uygular. Bu ölçeklendirme stratejisi, büyük metinlerin daha küçük metinlerle aynı hızda ölçeklendirilmeyeceği anlamına gelir. Doğrusal olmayan yazı tipi ölçeklendirme, farklı boyutlardaki öğeler arasındaki orantısal hiyerarşinin korunmasına yardımcı olurken yüksek derecelerde doğrusal metin ölçeklendirmeyle (metinlerin kesilmesi veya çok büyük ekran boyutları nedeniyle metnin okunması zorlaşması gibi) sorunları da azaltır.
Doğrusal olmayan yazı tipi ölçeklendirme ile uygulamanızı test etme

Metin boyutlandırmasını tanımlamak için zaten ölçeklendirilmiş piksel (sp) birimleri kullanıyorsanız, bu ek seçenekler ve ölçeklendirme iyileştirmeleri uygulamanızdaki metne otomatik olarak uygulanır. Ancak, uygulamanızın yazı tipi boyutlarını doğru bir şekilde uyguladığından ve daha büyük yazı tipi boyutlarının kullanılabilirliği etkilemeden kullanabilmesini sağlamak için yine de maksimum yazı tipi boyutunu (%200) etkinleştirerek kullanıcı arayüzü testleri gerçekleştirmeniz gerekir.
Yazı tipi boyutunu% 200 etkinleştirmek için aşağıdaki adımları uygulayın:
- Ayarlar uygulamasını açın ve Erişilebilirlik > Görüntü boyutu ve metin'e gidin.
- Yazı tipi boyutu seçeneği için bu bölüme eşlik eden resimde gösterildiği gibi maksimum yazı tipi boyutu ayarı etkinleştirilene kadar artı (+) simgesine dokunun.
Metin boyutları için ölçeklendirilmiş piksel (sp) birimleri kullanma
Metin boyutlarını her zaman sp birimleri cinsinden belirtmeyi unutmayın. Uygulamanız sp birimleri kullandığında, Android kullanıcının tercih ettiği metin boyutunu uygulayabilir ve uygun şekilde ölçeklendirebilir.
Dolgu için sp birimleri kullanmayın veya örtülü dolgunun varsayıldığında görünüm yüksekliklerini tanımlamayın: Doğrusal olmayan yazı tipi ölçeklendirme sp boyutları orantılı olmayabilir. Bu nedenle 4 sp + 20 sp, 24 sp'ye eşit olmayabilir.
Ölçeklendirilmiş piksel (sp) birimlerini dönüştürme
sp birimlerinden piksele dönüştürmek için TypedValue.applyDimension()
, pikselleri sp'ye dönüştürmek için TypedValue.deriveDimension()
kullanın. Bu yöntemler, uygun doğrusal olmayan ölçeklendirme eğrisini otomatik olarak uygular.
Configuration.fontScale
veya DisplayMetrics.scaledDensity
kullanarak denklemleri tek tek girmekten kaçının. Yazı tipi ölçeklendirme doğrusal olmadığından scaledDensity
alanı artık doğru değildir. Yazı tipleri artık tek bir skaler değerle ölçeklendirilmediğinden, fontScale
alanı yalnızca bilgi amaçlı kullanılmalıdır.
lineHeight için sp birimleri kullan
android:lineHeight
öğesini her zaman dp yerine sp birimleri kullanarak tanımlayın. Böylece satır yüksekliği metninizle birlikte ölçeklenir. Aksi takdirde, metniniz sp ancak lineHeight
öğeniz dp veya px biçimindeyse ölçeklendirilmez ve sıkışık görünür.
TextView, istediğiniz oranların korunması için lineHeight
öğesini otomatik olarak düzeltir, ancak bunun için hem textSize
hem de lineHeight
sp birimlerinde tanımlanmışsa geçerlidir.
Kamera ve medya içerikleri
Resimler için ultra HDR

Android 14, fotoğraf çekerken sensörden daha fazla bilginin korunmasını sağlayan ve canlı renkler ile daha yüksek kontrast sağlayan Yüksek Dinamik Aralık (HDR) resimleri için destek ekler. Android, JPEG resimleriyle tamamen geriye dönük uyumlu olan Ultra HDR biçimini kullanır. Bu biçim, uygulamaların HDR resimlerle sorunsuz bir şekilde birlikte çalışmasını sağlar ve gerektiğinde resimleri Standart Dinamik Aralık (SDR) olarak gösterir.
Uygulamanız, etkinlik aralığı için HDR kullanıcı arayüzünü kullanmayı bir manifest girişi aracılığıyla veya çalışma zamanında Window.setColorMode()
çağrısı yaparak etkinleştirdiğinde bu resimlerin kullanıcı arayüzünde HDR olarak oluşturulması çerçeve tarafından otomatik olarak yapılır. Desteklenen cihazlarda sıkıştırılmış Ultra HDR fotoğraflar da çekebilirsiniz. Sensörden daha fazla renk elde edildiğinde, düzenleme işlemi daha esnek olabilir. Ultra HDR resimlerle ilişkili Gainmap
, OpenGL veya Vulkan kullanılarak oluşturulmak için kullanılabilir.
Kamera uzantılarında yakınlaştırma, odaklama, son görüntüleme ve daha fazlası
Android 14, kamera uzantılarını yükselterek ve iyileştirerek uygulamaların daha uzun işlem sürelerini yönetmesine olanak tanır. Bu sayede, desteklenen cihazlarda düşük ışıkta fotoğrafçılık gibi yoğun bilgi işlem gerektiren algoritmalar kullanılarak daha iyi görüntüler elde edilebilir. Bu özellikler, kamera uzantısı özelliklerini kullanırken kullanıcılara daha da güçlü bir deneyim sunar. Bu iyileştirmelere örnek olarak aşağıdakiler verilebilir:
- Dinamik fotoğraf çekme işlemi gecikmesi tahmini, mevcut sahneye ve çevre koşullarına göre çok daha doğru fotoğraf çekme işlemi gecikmesi tahminleri sağlar. İki gecikme tahmini yöntemi olan bir
StillCaptureLatency
nesnesi almak içinCameraExtensionSession.getRealtimeStillCaptureLatency()
işlevini çağırın.getCaptureLatency()
yöntemi,onCaptureStarted
ileonCaptureProcessStarted()
arasındaki tahmini gecikmeyi döndürür.getProcessingLatency()
yöntemi iseonCaptureProcessStarted()
ile işlenmiş son karenin kullanılabilir hale gelmesi arasındaki tahmini gecikmeyi döndürür. - Uygulamaların uzun süren, hareketsiz görüntü yakalama işlemlerinin mevcut ilerleme durumunu gösterebilmesi için yakalama ilerleme durumu geri çağırma işlevi desteği. Bu özelliğin
CameraExtensionCharacteristics.isCaptureProcessProgressAvailable
ile kullanılıp kullanılamayacağını kontrol edebilirsiniz. Kullanılabilirse ilerleme durumunun (0 ila 100 arasında) parametre olarak iletildiğionCaptureProcessProgressed()
geri çağırma işlevini uygulayabilirsiniz. Uzantılara özel meta veriler (ör.
EXTENSION_BOKEH
ile arka plan bulanıklaştırma miktarı gibi bir uzantı efektinin miktarını ayarlamak içinCaptureRequest.EXTENSION_STRENGTH
).Kamera uzantılarında sabit resim çekme için son görüntüden daha hızlı ve daha az işlenmiş bir görüntü sağlayan son görüntü özelliği. Bir uzantı, işleme gecikmesini artırdıysa kullanıcı deneyimini iyileştirmek için yer tutucu olarak bir görüntü sonrası resim sağlanabilir ve daha sonra nihai resimle değiştirilebilir. Bu özelliğin
CameraExtensionCharacteristics.isPostviewAvailable
ile kullanılıp kullanılamadığını kontrol edebilirsiniz. ArdındanExtensionSessionConfiguration.setPostviewOutputConfiguration
'e birOutputConfiguration
iletebilirsiniz.Daha optimize ve enerji tasarruflu bir önizleme oluşturma yolu sağlayan
SurfaceView
desteği.Uzantı kullanımı sırasında dokunarak odaklama ve yakınlaştırma desteği.
Sensör içi yakınlaştırma
当 CameraCharacteristics
中的 REQUEST_AVAILABLE_CAPABILITIES_STREAM_USE_CASE
包含 SCALER_AVAILABLE_STREAM_USE_CASES_CROPPED_RAW
时,您的应用可以使用高级传感器功能,将剪裁后的 RAW 数据流的像素与全视野范围相同,方法是将 CaptureRequest
与将数据流用例设置为 CameraMetadata.SCALER_AVAILABLE_STREAM_USE_CASES_CROPPED_RAW
的 RAW 目标搭配使用。通过实现请求替换控件,更新后的相机可让用户在其他相机控件准备就绪之前使用缩放控件。
USB'de kayıpsız ses
Android 14, USB kablolu kulaklıklarda ses kalitesini artıran kayıpsız ses biçimlerini destekler. USB cihazı tercih edilen karıştırıcı özellikleri için sorgulayabilir, tercih edilen karıştırıcı özelliklerindeki değişiklikler için bir dinleyici kaydedebilir ve AudioMixerAttributes
sınıfını kullanarak karıştırıcı özelliklerini yapılandırabilirsiniz. Bu sınıf, ses karıştırıcının kanal maskesi, örnekleme hızı ve davranışı gibi biçimi temsil eder. Sınıf, karıştırma, ses seviyesi ayarı veya işleme efektleri olmadan seslerin doğrudan gönderilmesine olanak tanır.
Geliştirici verimliliği ve araçları
Kimlik Bilgisi Yöneticisi
Android 14, platform API'si olarak Kimlik Bilgisi Yöneticisi'ni ekler. Google Play Hizmetleri'ni kullanan bir Jetpack Kitaplığı aracılığıyla Android 4.4 (API düzeyi 19) cihazlara ek destek sağlanır. Kimlik Bilgisi Yöneticisi, kimlik bilgilerini kullanıcı tarafından yapılandırılmış kimlik bilgisi sağlayıcılarla alan ve depolayan API'lerle kullanıcıların oturum açmasını kolaylaştırmayı amaçlar. Kimlik Bilgisi Yöneticisi, tek bir API'de kullanıcı adı ve şifre, geçiş anahtarları ve birleşik oturum açma çözümleri (ör. Google ile oturum açma) gibi birden fazla oturum açma yöntemini destekler.
Geçiş anahtarları birçok avantaj sağlar. Örneğin, geçiş anahtarları endüstri standartlarına göre tasarlanmıştır, farklı işletim sistemlerinde ve tarayıcı ekosistemlerinde çalışabilir, hem web sitelerinde hem de uygulamalarda kullanılabilir.
Daha fazla bilgi için Kimlik Bilgisi Yöneticisi ve geçiş anahtarları belgelerine ve Kimlik Bilgisi Yöneticisi ve geçiş anahtarları hakkındaki blog yayınına göz atın.
Health Connect
Health Connect 是用户健康与健身数据的设备端仓库。借助该功能,用户可以在一个位置控制要与这些应用共享哪些数据,并在自己喜爱的应用之间共享数据。
在搭载 Android 14 之前的 Android 版本的设备上,Health Connect 可作为应用从 Google Play 商店下载。从 Android 14 开始,Health Connect 将成为 Android 平台的一部分,并通过 Google Play 系统更新接收更新,而无需单独下载。这样一来,Health Connect 就可以频繁更新,您的应用可以依赖于搭载 Android 14 或更高版本的设备上提供的 Health Connect。用户可以通过设备的“设置”访问 Health Connect,隐私控制功能集成到系统设置中。


Health Connect 在 Android 14 中包含多项新功能,例如锻炼路线,可让用户分享可在地图上直观呈现的锻炼路线。路线定义为在一定时间范围内保存的位置列表,您的应用可以将路线插入锻炼时段,将它们关联起来。为确保用户能够完全控制此类敏感数据,用户必须允许与其他应用共享单个路线。
如需了解详情,请参阅 Health Connect 文档以及有关 Android Health 中的新功能的博文。
OpenJDK 17 güncellemeleri
Android 14 将继续更新 Android 的核心库,以与最新 OpenJDK LTS 版本中的功能保持一致,包括适合应用和平台开发者的库更新和 Java 17 语言支持。
其中包含以下功能和改进:
- 将大约 300 个
java.base
类更新为支持 Java 17。 - 文本块 - 为 Java 编程语言引入了多行字符串字面量。
- instanceof 模式匹配:可让对象在
instanceof
中被视为具有特定类型,而无需任何额外的变量。 - 密封类:允许您限制哪些类和接口可以扩展或实现它们。
得益于 Google Play 系统更新 (Project Mainline),6 亿多台设备能够接收包含这些更改的最新 Android 运行时 (ART) 更新。我们致力于为应用提供更加一致、安全的跨设备环境,并为用户提供独立于平台版本的新功能。
Java 和 OpenJDK 是 Oracle 及/或其关联公司的商标或注册商标。
Uygulama mağazalarında yapılan iyileştirmeler
Android 14 引入了多个 PackageInstaller
API,可帮助应用商店改善其用户体验。
下载之前请求批准安装
安装或更新应用可能需要用户批准。例如,当使用 REQUEST_INSTALL_PACKAGES
权限的安装程序尝试安装新应用时。在之前的 Android 版本中,只有在将 APK 写入安装会话并且提交会话后,应用商店才能请求用户批准。
从 Android 14 开始,requestUserPreapproval()
方法可让安装程序在提交安装会话之前请求用户批准。此项改进可让应用商店将任何 APK 的下载操作推迟到用户批准安装之后。此外,用户批准安装后,应用商店可以在后台下载并安装应用,而不会干扰用户。
承担未来更新的责任
借助 setRequestUpdateOwnership()
方法,安装程序可以向系统表明它打算负责将被安装的应用未来的更新。此 capability 可实现更新所有权强制执行,即仅允许更新所有者为应用安装自动更新。更新所有权强制执行有助于确保用户仅收到来自预期应用商店的更新。
任何其他安装程序(包括使用 INSTALL_PACKAGES
权限的安装程序)都必须获得用户的明确批准,才能安装更新。如果用户决定继续从其他来源安装更新,则会失去更新所有权。
在干扰较少的时段更新应用
应用商店通常希望避免更新正在使用的应用,因为这会导致应用正在运行的进程被终止,而这可能会中断用户正在执行的操作。
从 Android 14 开始,InstallConstraints
API 让安装程序可以确保其应用更新在适当的时机进行。例如,应用商店可以调用 commitSessionAfterInstallConstraintsAreMet()
方法来确保仅在用户不再与相应应用互动时才进行更新。
无缝安装可选拆分
借助拆分 APK,应用的功能可以通过单独的 APK 文件提供,而不是以单体式 APK 的形式提供。借助拆分 APK,应用商店可以优化不同应用组件的提供。例如,应用商店可能会根据目标设备的属性进行优化。自在 API 级别 22 中引入以来,PackageInstaller
API 一直支持拆分。
在 Android 14 中,setDontKillApp()
方法可让安装程序指明在安装新的拆分项时应用的运行进程不应终止。应用商店可以使用此功能,在用户使用应用时无缝安装应用的新功能。
Uygulama meta veri paketleri
Starting in Android 14, the Android package installer lets you specify app metadata, such as data safety practices, to include on app store pages such as Google Play.
Kullanıcılar cihaz ekran görüntüsü aldığında bunu algılar
Android 14, ekran görüntülerini algılamayla ilgili daha standart bir deneyim oluşturmak için gizliliği korumaya yönelik bir ekran görüntüsü algılama API'si sunar. Bu API, uygulamaların geri çağırma işlevlerini etkinlik bazında kaydetmesine olanak tanır. Bu Geri çağırmalar çağrılır ve kullanıcı bir arama yaptığında kullanıcı bilgilendirilir. ekran görüntüsü almalısınız.
Kullanıcı deneyimi
Sharesheet'te özel işlemler ve iyileştirilmiş sıralama
Android 14, sistem paylaşım sayfasını özel uygulama işlemlerini ve kullanıcılar için daha bilgilendirici önizleme sonuçlarını destekleyecek şekilde günceller.
Özel işlem ekleme
Android 14 ile uygulamanız, çağırdığı sistem paylaşım sayfasına özel işlemler ekleyebilir.

Doğrudan Paylaşım hedeflerinin sıralamasını iyileştirme
Android 14, kullanıcıya daha faydalı sonuçlar sunmak için doğrudan paylaşım hedeflerinin sıralamasını belirlemek amacıyla uygulamalardan daha fazla sinyal kullanır. Sıralama için en faydalı sinyali sağlamak üzere doğrudan paylaşım hedeflerinizin sıralamalarına ilişkin yönergeleri uygulayın. İletişim uygulamaları, giden ve gelen mesajlar için kısayol kullanımını da bildirebilir.

Tahmine Dayalı Geri Dönme özelliği için yerleşik ve özel animasyonlar için destek
Android 13 在开发者选项背后引入了预测性“返回主屏幕”动画。在已启用开发者选项的受支持应用中使用时,滑回手势会显示动画,表明返回手势会使应用退回到主屏幕。
Android 14 包含针对“预测性返回”的多项改进和新指南:
- 您可设置
android:enableOnBackInvokedCallback=true
,以便为每个 activity 选择启用预测性返回系统动画,而不是为整个应用选择启用。 - 我们添加了新的系统动画,以配合 Android 13 中的“返回主屏幕”动画。新的系统动画是跨 activity 和跨任务的,您可在迁移到预测性返回后自动获得该动画。
- 我们为底部动作条、侧边动作条和搜索添加了新的 Material 组件动画。
- 我们制作了有关如何创建自定义应用内动画和转换的设计指南。
- 我们添加了许多新 API 来支持自定义的应用内转换动画:
在此 Android 14 预览版中,所有预测性返回功能都是位于开发者选项背后。请参阅与将您的应用迁移到预测性返回有关的开发者指南,以及与创建自定义应用内转换有关的开发者指南。
Büyük ekranlı cihaz üreticisinin uygulama bazında geçersiz kılmaları
Uygulama başına geçersiz kılma, cihaz üreticilerinin büyük ekranlı cihazlardaki uygulamaların davranışını değiştirmesine olanak tanır. Örneğin, FORCE_RESIZE_APP
geçersiz kılması, uygulama manifest'inde resizeableActivity="false"
ayarlanmış olsa bile sisteme uygulamayı ekran boyutlarına sığacak şekilde yeniden boyutlandırması (boyut uyumluluk modundan kaçınarak) talimatını verir.
Geçersiz kılma işlemleri, büyük ekranlarda kullanıcı deneyimini iyileştirmeyi amaçlar.
Yeni manifest özellikleri, uygulamanız için bazı cihaz üreticisi geçersiz kılma işlemlerini devre dışı bırakmanızı sağlar.
Büyük ekran kullanıcı başına uygulama başına geçersiz kılmalar
Uygulama başına geçersiz kılmalar, büyük ekranlı cihazlardaki uygulamaların davranışını değiştirir. Örneğin, OVERRIDE_MIN_ASPECT_RATIO_LARGE
cihaz üreticisi geçersiz kılma, uygulamanın yapılandırmasından bağımsız olarak uygulamanın en-boy oranını 16:9 olarak ayarlar.
Android 14 QPR1, kullanıcıların büyük ekranlı cihazlarda yeni bir ayarlar menüsü aracılığıyla uygulama başına geçersiz kılma işlemleri uygulamasını sağlar.
Uygulama ekran paylaşımı
Uygulama ekran paylaşımı, kullanıcıların ekran içeriği kaydı sırasında cihaz ekranının tamamı yerine bir uygulama penceresini paylaşmasını sağlar.
Uygulama ekranı paylaşımında durum çubuğu, gezinme çubuğu, bildirimler ve diğer sistem kullanıcı arayüzü öğeleri paylaşılan ekrandan hariç tutulur. Yalnızca seçilen uygulamanın içeriği paylaşılır.
Uygulama ekranı paylaşımı, kullanıcıların birden fazla uygulamayı çalıştırmasına olanak tanır ancak içerik paylaşımını tek bir uygulamayla sınırlandırır. Bu sayede üretkenliği ve gizliliği artırır.
Pixel 8 Pro'daki Gboard'da LLM destekli Akıllı Yanıt
Aralık ayı özellik güncellemesini alan Pixel 8 Pro cihazlarda geliştiriciler, Google Tensor'da çalışan cihaz üzerinde büyük dil modelleri (LLM) tarafından desteklenen Gboard'da daha yüksek kaliteli akıllı yanıtları deneyebilir.
Bu özellik, WhatsApp, Line ve KakaoTalk'ta ABD İngilizcesi için sınırlı bir önizleme olarak sunulmaktadır. Klavyeniz olarak Gboard'u kullanan bir Pixel 8 Pro cihaz kullanmanız gerekir.
Bu özelliği denemek için önce Ayarlar > Geliştirici Seçenekleri > AICore Ayarları > Aicore Kalıcı'yı Etkinleştir'i seçerek özelliği etkinleştirin.
Ardından, desteklenen bir uygulamada bir ileti dizisi açın. Gboard'un öneri şeridinde, gelen iletilere yanıt olarak LLM destekli Akıllı Yanıt'ı görebilirsiniz.
Grafik
Yollar sorgulanabilir ve birlikte kullanılabilir
Android 的 Path
API 是一种强大且灵活的机制,可用于创建和渲染矢量图形,能够描边或填充路径、根据线段或二次曲线或立方曲线构建路径、执行布尔运算以获取更复杂的形状,或同时执行所有这些操作。但有一个限制是,您无法了解 Path 对象中实际包含的内容;该对象的内部信息在创建后对调用方是不透明的。
如需创建 Path
,您可以调用 moveTo()
、lineTo()
和 cubicTo()
等方法来添加路径段。但是,无法询问该路径有哪些片段,因此您必须在创建时保留该信息。
从 Android 14 开始,您可以查询路径以了解其内部内容。首先,您需要使用 Path.getPathIterator
API 获取 PathIterator
对象:
Kotlin
val path = Path().apply { moveTo(1.0f, 1.0f) lineTo(2.0f, 2.0f) close() } val pathIterator = path.pathIterator
Java
Path path = new Path(); path.moveTo(1.0F, 1.0F); path.lineTo(2.0F, 2.0F); path.close(); PathIterator pathIterator = path.getPathIterator();
接下来,您可以调用 PathIterator
逐个遍历片段,并检索每个片段的所有必要数据。以下示例使用了 PathIterator.Segment
对象,它会为您打包数据:
Kotlin
for (segment in pathIterator) { println("segment: ${segment.verb}, ${segment.points}") }
Java
while (pathIterator.hasNext()) { PathIterator.Segment segment = pathIterator.next(); Log.i(LOG_TAG, "segment: " + segment.getVerb() + ", " + segment.getPoints()); }
PathIterator
还有一个非分配版 next()
,您可以在其中传入缓冲区来保存点数据。
查询 Path
数据的一个重要用例是插值。例如,您可能想在两个不同的路径之间添加动画(或变形)。为了进一步简化该用例,Android 14 针对 Path
还包含 interpolate()
方法。假设两个路径具有相同的内部结构,interpolate()
方法会使用该插值结果创建一个新的 Path
。以下示例返回了一个形状介于 path
和 otherPath
之间的一半(线性插值为 0.5)的路径:
Kotlin
val interpolatedResult = Path() if (path.isInterpolatable(otherPath)) { path.interpolate(otherPath, .5f, interpolatedResult) }
Java
Path interpolatedResult = new Path(); if (path.isInterpolatable(otherPath)) { path.interpolate(otherPath, 0.5F, interpolatedResult); }
Jetpack graphics-path 库也为早期版本的 Android 启用了类似的 API。
Köşe ve parça gölgelendiricileri olan özel örgüler
Android, özel gölgelemeyle üçgen ağ çizmeyi uzun süredir destekliyordu ancak giriş ağı biçimi, önceden tanımlanmış birkaç özellik kombinasyonuyla sınırlıydı. Android 14, üçgenler veya üçgen şeritler olarak tanımlanabilen ve isteğe bağlı olarak dizine eklenebilen özel ağlar için destek ekler. Bu ağlar, özel özellikler, köşe adımları, değişken ve AGSL'de yazılmış köşe ve parçacık gölgelendiricileriyle belirtilir.
Köşe noktası gölgelendirici, konum ve renk gibi değişkenleri tanımlar. Öte yandan, parçacık gölgelendirici, isteğe bağlı olarak pikselin rengini tanımlayabilir. Bu işlem genellikle köşe noktası gölgelendirici tarafından oluşturulan değişkenleri kullanarak yapılır. Renk, parçacık gölgelendirici tarafından sağlanırsa örgeyi çizerken seçilen karışım modu kullanılarak mevcut Paint
rengiyle karıştırılır. Üniformalar, ek esneklik için parça ve köşe üstü gölgelendiricilere iletilebilir.
Tuval için donanım arabelleği oluşturma aracı
协助使用 Android 的 Canvas
API 通过
硬件加速至 HardwareBuffer
、Android 14
引入了 HardwareBufferRenderer
。如果您的用例涉及通过 SurfaceControl
与系统合成器通信以实现低延迟绘制,此 API 特别有用。