Android 16 में, डेवलपर के लिए शानदार नई सुविधाएं और एपीआई जोड़े गए हैं. इन सुविधाओं के बारे में खास जानकारी देने के लिए, यहां दिए गए सेक्शन में इनके बारे में बताया गया है. इससे, आपको इनसे जुड़े एपीआई का इस्तेमाल शुरू करने में मदद मिलेगी.
नए, बदले गए, और हटाए गए एपीआई की पूरी सूची के लिए, एपीआई के बीच अंतर की रिपोर्ट पढ़ें. नए एपीआई के बारे में ज़्यादा जानने के लिए, Android एपीआई का रेफ़रंस देखें — नए एपीआई को हाइलाइट किया गया है, ताकि उन्हें आसानी से देखा जा सके.आपको उन जगहों की भी समीक्षा करनी चाहिए जहां प्लैटफ़ॉर्म में हुए बदलावों का आपके ऐप्लिकेशन पर असर पड़ सकता है. ज़्यादा जानकारी के लिए, ये पेज देखें:
- Android 16 को टारगेट करने वाले ऐप्लिकेशन के काम करने के तरीके में होने वाले बदलाव
- ऐसे बदलाव जो
targetSdkVersion
के बावजूद सभी ऐप्लिकेशन पर असर डालते हैं.
मुख्य फ़ंक्शन
Android में नए एपीआई शामिल हैं, जो Android सिस्टम की मुख्य सुविधाओं को बेहतर बनाते हैं.
साल 2025 में Android के दो एपीआई रिलीज़ किए जाएंगे
- यह झलक, Android के अगले मेजर वर्शन के लिए है. इसे 2025 की दूसरी तिमाही में लॉन्च किया जाएगा. यह रिलीज़, एपीआई की पिछली सभी रिलीज़ से मिलती-जुलती है. इसमें, व्यवहार में ऐसे बदलाव किए जा सकते हैं जो अक्सर targetSdkVersion से जुड़े होते हैं.
- हम मेजर रिलीज़ को एक तिमाही पहले रिलीज़ करने जा रहे हैं. पिछले सालों में, यह रिलीज़ तीसरी तिमाही में होती थी, लेकिन अब इसे दूसरी तिमाही में रिलीज़ किया जाएगा. ऐसा इसलिए किया जा रहा है, ताकि हमारे पूरे नेटवर्क में डिवाइस लॉन्च करने के शेड्यूल के साथ बेहतर तरीके से अलाइन किया जा सके. इससे ज़्यादा डिवाइसों पर Android का मेजर वर्शन जल्दी रिलीज़ किया जा सकेगा. साल की दूसरी तिमाही में, Android के नए वर्शन की रिलीज़ होने वाली है. इसलिए, आपको सालाना होने वाली, ऐप्लिकेशन के काम करने की जांच को पिछले सालों की तुलना में कुछ महीने पहले करना होगा. इससे यह पक्का किया जा सकेगा कि आपके ऐप्लिकेशन, नए वर्शन के साथ काम कर रहे हैं.
- हम साल 2025 की चौथी तिमाही में एक और रिलीज़ करने वाले हैं. इसमें नए डेवलपर एपीआई भी शामिल होंगे. साल 2025 में, दूसरी तिमाही में होने वाली मेजर रिलीज़ में ही, व्यवहार से जुड़े ऐसे बदलाव शामिल होंगे जिनका ऐप्लिकेशन पर असर पड़ सकता है.
चौथी तिमाही की मामूली रिलीज़ में, डेवलपर के लिए नए एपीआई के साथ-साथ, सुविधाओं के अपडेट, ऑप्टिमाइज़ेशन, और गड़बड़ियों को ठीक करने की सुविधाएं भी शामिल होंगी. हालांकि, इसमें ऐप्लिकेशन के काम करने के तरीके में कोई बदलाव नहीं किया जाएगा.

हम हर तीन महीने में Android वर्शन रिलीज़ करते रहेंगे. एपीआई रिलीज़ के बीच में, Q1 और Q3 के अपडेट से क्वालिटी को बेहतर बनाने में मदद मिलेगी. हम डिवाइस पार्टनर के साथ मिलकर, Q2 रिलीज़ को ज़्यादा से ज़्यादा डिवाइसों पर उपलब्ध कराने के लिए काम कर रहे हैं.
मुख्य और मामूली रिलीज़ के साथ नए एपीआई का इस्तेमाल करना
एपीआई लेवल की जांच करके, कोड ब्लॉक को सुरक्षित रखने के लिए, अब SDK_INT
कॉन्स्टेंट के साथ VERSION_CODES
का इस्तेमाल किया जाता है. यह सुविधा, Android के मुख्य वर्शन के लिए काम करती रहेगी.
if (SDK_INT >= VERSION_CODES.BAKLAVA) {
// Use APIs introduced in Android 16
}
नए SDK_INT_FULL
कंसटेंट का इस्तेमाल, एपीआई की जांच के लिए किया जा सकता है. यह जांच, नए VERSION_CODES_FULL
एन्यूमरेशन की मदद से, मेजर और माइनर, दोनों वर्शन के लिए की जा सकती है.
if (SDK_INT_FULL >= VERSION_CODES_FULL.[MAJOR or MINOR RELEASE]) {
// Use APIs introduced in a major or minor release
}
SDK टूल का सिर्फ़ मामूली वर्शन पाने के लिए, Build.getMinorSdkVersion()
के तरीके का भी इस्तेमाल किया जा सकता है.
val minorSdkVersion = Build.getMinorSdkVersion(VERSION_CODES_FULL.BAKLAVA)
इन एपीआई को अभी तक फ़ाइनल नहीं किया गया है और इनमें बदलाव हो सकते हैं. इसलिए, अगर आपको कोई समस्या है, तो कृपया हमें सुझाव/राय दें या शिकायत करें.
उपयोगकर्ता अनुभव और सिस्टम यूज़र इंटरफ़ेस (यूआई)
Android 16, ऐप्लिकेशन डेवलपर और उपयोगकर्ताओं को अपने डिवाइस को अपनी ज़रूरतों के हिसाब से कॉन्फ़िगर करने के लिए ज़्यादा कंट्रोल और सुविधाएं देता है.
प्रोग्रेस से जुड़ी सूचनाएं
Android 16 में, प्रोग्रेस पर आधारित सूचनाएं देने की सुविधा जोड़ी गई है. इससे उपयोगकर्ताओं को, शुरू से लेकर आखिर तक की प्रोसेस को आसानी से ट्रैक करने में मदद मिलती है.
Notification.ProgressStyle
, सूचनाओं का एक नया स्टाइल है. इसकी मदद से, प्रोग्रेस के बारे में सूचनाएं बनाई जा सकती हैं. इस्तेमाल के मुख्य उदाहरणों में, राइडशेयर, डिलीवरी, और नेविगेशन शामिल हैं. Notification.ProgressStyle
क्लास में, पॉइंट और सेगमेंट का इस्तेमाल करके, उपयोगकर्ता के सफ़र में स्टेटस और माइलस्टोन दिखाए जा सकते हैं.
ज़्यादा जानने के लिए, प्रगति से जुड़ी सूचनाएं दस्तावेज़ पेज देखें.


पीछे जाने पर झलक दिखाने वाले हाथ के जेस्चर से जुड़े अपडेट
Android 16 添加了新 API,可帮助您在手势导航中启用预测性返回系统动画,例如“返回主屏幕”动画。通过使用新的 PRIORITY_SYSTEM_NAVIGATION_OBSERVER
注册 onBackInvokedCallback
,您的应用可以在系统处理返回导航时接收常规的 onBackInvoked
调用,而不会影响正常的返回导航流程。
Android 16 还添加了 finishAndRemoveTaskCallback()
和 moveTaskToBackCallback
。通过向 OnBackInvokedDispatcher
注册这些回调,系统可以在调用返回手势时触发特定行为并播放相应的提前动画。
बेहतर हैप्टिक
Android ने शुरुआत से ही, हैप्टिक ऐक्चुएटर को कंट्रोल करने की सुविधा दी है.
Android 11 में, ज़्यादा जटिल हैप्टिक इफ़ेक्ट के लिए सहायता जोड़ी गई है. ये इफ़ेक्ट, डिवाइस के लिए तय किए गए सेमैंटिक प्राइमिटिव के VibrationEffect.Compositions
की मदद से, ज़्यादा बेहतर ऐक्चुएटर के साथ काम कर सकते हैं.
Android 16 में हैप्टिक एपीआई जोड़े गए हैं. इनकी मदद से, ऐप्लिकेशन किसी हैप्टिक इफ़ेक्ट के ऐम्प्ल्यट्यूड और फ़्रीक्वेंसी कर्व तय कर सकते हैं. साथ ही, डिवाइस की क्षमताओं के बीच के अंतर को भी हटा सकते हैं.
डेवलपर की प्रोडक्टिविटी और टूल
आपकी प्रॉडक्टिविटी बढ़ाने के लिए, हम Android Studio, Jetpack Compose, और Android Jetpack लाइब्रेरी जैसे टूल पर काम करते हैं. हालांकि, हम हमेशा प्लैटफ़ॉर्म में ऐसे तरीके ढूंढते रहते हैं जिनसे आपको अपने लक्ष्य को हासिल करने में मदद मिल सके.
लाइव वॉलपेपर के लिए कॉन्टेंट मैनेज करना
在 Android 16 中,动态壁纸框架将获得一个新的 content API,以应对由用户驱动的动态壁纸带来的挑战。目前,包含用户提供的内容的实时壁纸需要复杂的服务专用实现。Android 16 引入了 WallpaperDescription
和 WallpaperInstance
。借助 WallpaperDescription,您可以识别同一服务中的动态壁纸的不同实例。例如,如果某张壁纸同时在主屏幕和锁定屏幕上显示,则这两种情况下显示的内容可能各不相同。壁纸选择器和 WallpaperManager
会使用此元数据更好地向用户呈现壁纸,从而简化创建多样化个性化动态壁纸体验的过程。
परफ़ॉर्मेंस और बैटरी
Android 16 में ऐसे एपीआई शामिल किए गए हैं जिनकी मदद से, आपके ऐप्लिकेशन के बारे में अहम जानकारी इकट्ठा की जा सकती है.
सिस्टम से ट्रिगर की गई प्रोफ़ाइलिंग
ProfilingManager
在 Android 15 中添加,让应用能够在现场使用 Perfetto 请求收集性能数据。不过,由于此性能分析必须从应用启动,因此应用很难或根本无法捕获启动或 ANR 等关键流程。
为此,Android 16 向 ProfilingManager
引入了系统触发的性能分析。应用可以注册接收特定触发器(例如冷启动 reportFullyDrawn
或 ANR)轨迹的兴趣,然后系统会代表应用启动和停止轨迹。轨迹完成后,结果会传送到应用的数据目录。
ApplicationStartInfo में कॉम्पोनेंट शुरू करना
ApplicationStartInfo
was added in Android
15, allowing an app to see reasons
for process start, start type, start times, throttling, and other useful
diagnostic data. Android 16 adds
getStartComponent()
to distinguish what component type triggered the start, which can be helpful for
optimizing the startup flow of your app.
नौकरी के बारे में बेहतर तरीके से जानकारी पाना
JobScheduler#getPendingJobReason()
API 会返回作业可能处于待处理状态的原因。不过,作业处于待处理状态的原因可能有多种。
在 Android 16 中,我们引入了一个新 API JobScheduler#getPendingJobReasons(int jobId)
,该 API 会返回作业处于待处理状态的多种原因,包括开发者设置的显式约束条件和系统设置的隐式约束条件。
我们还引入了 JobScheduler#getPendingJobReasonsHistory(int jobId)
,用于返回最新约束条件更改的列表。
我们建议您使用该 API 来调试作业可能无法执行的原因,尤其是在您发现某些任务的成功率降低或某些作业完成延迟存在 bug 时。例如,未能在后台更新微件,或在应用启动之前未能调用预加载作业。
这还有助于您更好地了解某些作业是否因系统定义的约束条件而无法完成,而不是因明确设置的约束条件而无法完成。
अडैप्टिव रीफ़्रेश रेट
Android 15 中引入的自适应刷新率 (ARR) 可让受支持硬件上的显示屏刷新率使用离散的 VSync 步长来适应内容帧速率。这不仅降低了功耗,还无需进行可能导致卡顿的模式切换。
Android 16 引入了 hasArrSupport()
和 getSuggestedFrameRate(int)
,同时恢复了 getSupportedRefreshRates()
,以便您的应用更轻松地利用 ARR。RecyclerView 1.4 在从快速滑动或平滑滚动中稳定下来时会在内部支持 ARR,我们将继续努力,将 ARR 支持添加到更多 Jetpack 库中。这篇帧速率文章介绍了许多可用于设置帧速率的 API,以便您的应用可以直接使用 ARR。
ADPF में Headroom API
SystemHealthManager
引入了 getCpuHeadroom
和 getGpuHeadroom
API,旨在为游戏和资源密集型应用提供可用 CPU 和 GPU 资源的估算值。通过这些方法,您可以评估应用或游戏如何以最佳方式改善系统运行状况,尤其是在与用于检测热节流的其他 Android 动态性能框架 (ADPF) API 搭配使用时。
在受支持的设备上使用 CpuHeadroomParams
和 GpuHeadroomParams
,您可以自定义用于计算余量的时间范围,并在平均资源可用性或最低资源可用性之间进行选择。这有助于您相应地减少 CPU 或 GPU 资源用量,从而提升用户体验并延长电池续航时间。
सुलभता
Android 16 में, ऐक्सेस से जुड़े नए एपीआई और सुविधाएं जोड़ी गई हैं. इनकी मदद से, अपने ऐप्लिकेशन को सभी उपयोगकर्ताओं के लिए उपलब्ध कराया जा सकता है.
सुलभता से जुड़े बेहतर एपीआई
Android 16 में यूज़र इंटरफ़ेस (यूआई) के सेमेटिक्स को बेहतर बनाने के लिए, अतिरिक्त एपीआई जोड़े गए हैं. इससे TalkBack जैसी सुलभता सेवाओं पर निर्भर उपयोगकर्ताओं के लिए, यूज़र इंटरफ़ेस को एक जैसा रखने में मदद मिलती है.
टेक्स्ट का कंट्रास्ट बढ़ाने के लिए, टेक्स्ट को आउटलाइन करना
कम विज़न वाले उपयोगकर्ताओं को अक्सर कंट्रास्ट की संवेदनशीलता कम होती है. इससे, ऑब्जेक्ट को उनके बैकग्राउंड से अलग करना मुश्किल हो जाता है. इन उपयोगकर्ताओं की मदद करने के लिए, Android 16 में आउटलाइन टेक्स्ट की सुविधा जोड़ी गई है. यह ज़्यादा कंट्रास्ट वाले टेक्स्ट की जगह लेती है. यह टेक्स्ट के चारों ओर, कंट्रास्ट वाला बड़ा हिस्सा बनाती है, ताकि टेक्स्ट को आसानी से पढ़ा जा सके.
Android 16 में नए AccessibilityManager
एपीआई शामिल हैं. इनकी मदद से, आपके ऐप्लिकेशन यह जांच कर सकते हैं कि यह मोड चालू है या नहीं. इसके अलावा, किसी लिसनर को रजिस्टर भी किया जा सकता है. यह मुख्य रूप से Compose जैसे यूज़र इंटरफ़ेस टूलकिट के लिए है, ताकि उनमें भी ऐसा ही विज़ुअल अनुभव दिया जा सके. अगर आपके पास यूज़र इंटरफ़ेस टूलकिट लाइब्रेरी है या आपका ऐप्लिकेशन, android.text.Layout
क्लास को बायपास करने वाला कस्टम टेक्स्ट रेंडर करता है, तो इस सुविधा का इस्तेमाल करके यह पता लगाया जा सकता है कि आउटलाइन टेक्स्ट कब चालू है.

TtsSpan में अवधि जोड़ी गई
Android 16 में TtsSpan
को TYPE_DURATION
के साथ जोड़ा गया है. इसमें ARG_HOURS
, ARG_MINUTES
, और ARG_SECONDS
शामिल हैं. इससे, वीडियो के दिखने का कुल समय सीधे तौर पर एनोटेट किया जा सकता है. इससे, TalkBack जैसी सेवाओं की मदद से, लिखाई को बोली में बदलने की सुविधा के सटीक और एक जैसे नतीजे मिलते हैं.
एक से ज़्यादा लेबल वाले एलिमेंट के साथ काम करना
फ़िलहाल, Android में यूज़र इंटरफ़ेस (यूआई) एलिमेंट को एक-दूसरे से, सुलभता लेबल पाने की अनुमति है. साथ ही, अब एक से ज़्यादा लेबल जोड़े जा सकते हैं. यह वेब कॉन्टेंट में आम तौर पर होता है. AccessibilityNodeInfo
में सूची पर आधारित एपीआई को शामिल करके, Android सीधे तौर पर इन कई लेबल वाले संबंधों का इस्तेमाल कर सकता है. इस बदलाव के तहत, हमने AccessibilityNodeInfo#setLabeledBy
और #getLabeledBy
को बंद कर दिया है. अब इनकी जगह #addLabeledBy
, #removeLabeledBy
, और #getLabeledByList
का इस्तेमाल किया जाएगा.
बड़ा किए जा सकने वाले एलिमेंट के लिए बेहतर सहायता
Android 16 में, सुलभता एपीआई जोड़े गए हैं. इनकी मदद से, इंटरैक्टिव एलिमेंट की स्थिति को बड़ा या छोटा किया जा सकता है. जैसे, मेन्यू और बड़ा की जा सकने वाली सूचियां. setExpandedState
का इस्तेमाल करके, बड़ा किया गया स्टेटस सेट करके और CONTENT_CHANGE_TYPE_EXPANDED
कॉन्टेंट में बदलाव के टाइप के साथ TYPE_WINDOW_CONTENT_CHANGED AccessibilityEvents भेजकर, यह पक्का किया जा सकता है कि TalkBack जैसे स्क्रीन रीडर, स्टेटस में हुए बदलावों की सूचना दें. इससे, उपयोगकर्ताओं को बेहतर और आसान अनुभव मिलता है.
प्रोग्रेस बार के लिए तय नहीं किया गया
Android 16 में RANGE_TYPE_INDETERMINATE
जोड़ा गया है. इससे, आपको ProgressBar
विजेट के लिए, RangeInfo
को दिखाने का विकल्प मिलता है. इसकी मदद से, TalkBack जैसी सेवाएं, प्रोग्रेस इंडिकेटर के लिए लगातार सुझाव दे सकती हैं.
तीन स्थितियों वाला चेकबॉक्स
Android 16 में, AccessibilityNodeInfo
getChecked
और setChecked(int)
के नए तरीकों का इस्तेमाल करके, अब "चुनी गई" और "चुनी नहीं गई" के अलावा, "कुछ हिस्से को चुना गया" स्थिति भी सेट की जा सकती है. यह, अब काम न करने वाले बूलियन isChecked
और setChecked(boolean)
फ़ंक्शन की जगह ले लेगा.
अतिरिक्त जानकारी
जब कोई सुलभता सेवा किसी ViewGroup
के बारे में बताती है, तो वह अपने ब्यौरे में उस व्यू के चाइल्ड व्यू के कॉन्टेंट लेबल को भी शामिल कर लेती है. अगर आपने ViewGroup
के लिए कोई contentDescription
दिया है, तो सुलभता सेवाएं यह मान लेती हैं कि आपने फ़ोकस नहीं किए जा सकने वाले चाइल्ड व्यू के ब्यौरे को भी बदल दिया है. अगर आपको सुलभता के लिए चुने गए मौजूदा विकल्प (उदाहरण के लिए, "Roboto") को बनाए रखते हुए, ड्रॉप-डाउन (उदाहरण के लिए, "फ़ॉन्ट फ़ैमिली") जैसी चीज़ों को लेबल करना है, तो समस्या आ सकती है. Android 16 में setSupplementalDescription
जोड़ा गया है, ताकि आप ViewGroup
के बारे में जानकारी देने वाला टेक्स्ट दे सकें. ऐसा करने पर, ViewGroup
के बच्चों की जानकारी बदली नहीं जाएगी.
फ़ॉर्म के ज़रूरी फ़ील्ड
Android 16 में, AccessibilityNodeInfo
में setFieldRequired
जोड़ा गया है, ताकि ऐप्लिकेशन किसी सुलभता सेवा को बता सकें कि फ़ॉर्म फ़ील्ड में इनपुट करना ज़रूरी है. यह कई तरह के फ़ॉर्म भरने वाले उपयोगकर्ताओं के लिए एक अहम स्थिति है. यहां तक कि ज़रूरी शर्तों वाले चेकबॉक्स जैसी आसान चीज़ों के लिए भी यह ज़रूरी है. इससे उपयोगकर्ताओं को ज़रूरी फ़ील्ड की पहचान करने और उनमें तेज़ी से नेविगेट करने में मदद मिलती है.
LEA वाली कान की मशीनों के साथ वॉइस कॉल के लिए, फ़ोन को माइक्रोफ़ोन इनपुट के तौर पर इस्तेमाल करना
Android 16 新增了一项功能,让 LE Audio 助听器用户能够在助听器的内置麦克风和手机上的麦克风之间切换,以进行语音通话。在嘈杂的环境或助听器麦克风可能无法正常工作的其他情况下,这会很有帮助。
LEA कान की मशीनों के लिए, आस-पास की आवाज़ों की वॉल्यूम कंट्रोल करने की सुविधा
Android 16 में, LE Audio की सुविधा वाली कान की मशीन के उपयोगकर्ताओं के लिए, आस-पास की आवाज़ की आवाज़ कम या ज़्यादा करने की सुविधा जोड़ी गई है. यह आवाज़, कान की मशीन के माइक्रोफ़ोन से रिकॉर्ड की जाती है. यह सुविधा, उन स्थितियों में मददगार हो सकती है जहां बैकग्राउंड का शोर बहुत ज़्यादा या बहुत कम हो.
कैमरा
Android 16 में, प्रोफ़ेशनल कैमरे इस्तेमाल करने वाले लोगों के लिए बेहतर सुविधाएं जोड़ी गई हैं. इनमें, कलर टेंपरेचर और टिनट में सटीक बदलाव करने के साथ-साथ, हाइब्रिड ऑटो एक्सपोज़र की सुविधा भी शामिल है. नाइट मोड के नए इंडिकेटर की मदद से, आपके ऐप्लिकेशन को यह पता चलता है कि नाइट मोड वाले कैमरे सेशन पर कब स्विच करना है और कब उससे वापस आना है. Intent
के नए ऐक्शन की मदद से, मोशन फ़ोटो आसानी से कैप्चर की जा सकती हैं. साथ ही, हम HEIC एन्कोडिंग और ISO 21496-1 ड्राफ़्ट स्टैंडर्ड के नए पैरामीटर की मदद से, अल्ट्रा एचडीआर इमेज को बेहतर बना रहे हैं.
हाइब्रिड ऑटो एक्सपोज़र
Android 16 向 Camera2 添加了新的混合自动曝光模式,让您可以手动控制曝光的特定方面,同时让自动曝光 (AE) 算法处理其余部分。您可以控制 ISO + AE 和曝光时间 + AE,与当前方法(您要么完全手动控制,要么完全依赖自动曝光)相比,可提供更大的灵活性。
fun setISOPriority() {
// ... (Your existing code before the snippet) ...
val availablePriorityModes = mStaticInfo.characteristics.get(
CameraCharacteristics.CONTROL_AE_AVAILABLE_PRIORITY_MODES
)
// ... (Your existing code between the snippets) ...
// Turn on AE mode to set priority mode
reqBuilder.set(
CaptureRequest.CONTROL_AE_MODE,
CameraMetadata.CONTROL_AE_MODE_ON
)
reqBuilder.set(
CaptureRequest.CONTROL_AE_PRIORITY_MODE,
CameraMetadata.CONTROL_AE_PRIORITY_MODE_SENSOR_SENSITIVITY_PRIORITY
)
reqBuilder.set(
CaptureRequest.SENSOR_SENSITIVITY,
TEST_SENSITIVITY_VALUE
)
val request: CaptureRequest = reqBuilder.build()
// ... (Your existing code after the snippet) ...
}
कलर टेंपरेचर और टिनट में सटीक बदलाव करना
Android 16 में कैमरे के लिए, कलर टेंपरेचर और टिनट में बदलाव करने की सुविधा जोड़ी गई है. इससे, प्रोफ़ेशनल वीडियो रिकॉर्डिंग ऐप्लिकेशन को बेहतर तरीके से काम करने में मदद मिलेगी. Android के पिछले वर्शन में, CONTROL_AWB_MODE
की मदद से व्हाइट बैलेंस की सेटिंग को कंट्रोल किया जा सकता था. इसमें पहले से तय की गई सूची में मौजूद विकल्प ही उपलब्ध होते थे. जैसे, इंकैंडेसेंट, बादल छाए होने पर, और शाम ढलते समय. COLOR_CORRECTION_MODE_CCT
, COLOR_CORRECTION_COLOR_TEMPERATURE
और COLOR_CORRECTION_COLOR_TINT
का इस्तेमाल करने की सुविधा देता है. इससे, कलर टेंपरेचर के आधार पर, व्हाइट बैलेंस को सटीक तरीके से अडजस्ट किया जा सकता है.
fun setCCT() {
// ... (Your existing code before this point) ...
val colorTemperatureRange: Range<Int> =
mStaticInfo.characteristics[CameraCharacteristics.COLOR_CORRECTION_COLOR_TEMPERATURE_RANGE]
// Set to manual mode to enable CCT mode
reqBuilder[CaptureRequest.CONTROL_AWB_MODE] = CameraMetadata.CONTROL_AWB_MODE_OFF
reqBuilder[CaptureRequest.COLOR_CORRECTION_MODE] = CameraMetadata.COLOR_CORRECTION_MODE_CCT
reqBuilder[CaptureRequest.COLOR_CORRECTION_COLOR_TEMPERATURE] = 5000
reqBuilder[CaptureRequest.COLOR_CORRECTION_COLOR_TINT] = 30
val request: CaptureRequest = reqBuilder.build()
// ... (Your existing code after this point) ...
}
नीचे दिए गए उदाहरणों से पता चलता है कि अलग-अलग रंग के तापमान और रंग में बदलाव करने के बाद, फ़ोटो कैसी दिखेगी:





कैमरे के नाइट मोड में सीन की पहचान करने की सुविधा
为了帮助应用了解何时切换到夜间模式相机会话以及何时从夜间模式相机会话切换出,Android 16 添加了 EXTENSION_NIGHT_MODE_INDICATOR
。如果受支持,则可在 Camera2 内的 CaptureResult
中使用。
这是我们在Instagram 如何让用户拍出令人惊艳的低光照片博文中提到的即将推出的 API。该博文提供了有关如何实现夜间模式的实用指南,并附有一份案例研究,该案例研究将应用内夜间模式照片质量的提升与通过应用内相机分享的照片数量的增加联系起来。
मोशन फ़ोटो कैप्चर करने के लिए इंटेंट ऐक्शन
Android 16 में स्टैंडर्ड इंटेंट ऐक्शन —
ACTION_MOTION_PHOTO_CAPTURE
और
ACTION_MOTION_PHOTO_CAPTURE_SECURE
— जोड़े गए हैं. इनसे कैमरा ऐप्लिकेशन को मोशन फ़ोटो कैप्चर करने और उसे दिखाने का अनुरोध किया जाता है.
इमेज को कहां लिखा जाएगा, यह कंट्रोल करने के लिए आपको एक अतिरिक्त EXTRA_OUTPUT
पास करना होगा या Intent.setClipData(ClipData)
के ज़रिए Uri
पास करना होगा. अगर आपने कोई ClipData
सेट नहीं किया है, तो Context.startActivity(Intent)
को कॉल करते समय वह आपके लिए वहां कॉपी हो जाएगा.
अल्ट्रा एचडीआर की मदद से इमेज को बेहतर बनाना

Android 16 继续致力于通过 UltraHDR 图片提供出色的图片质量。它添加了对 HEIC 文件格式的 UltraHDR 图片的支持。这些图片将获得 ImageFormat
类型 HEIC_ULTRAHDR
,并包含类似于现有 UltraHDR JPEG 格式的嵌入式增益图。我们还在努力为 UltraHDR 添加 AVIF 支持,敬请期待。
此外,Android 16 在 UltraHDR 中实现了 ISO 21496-1 草稿标准中的其他参数,包括能够获取和设置应应用增益图算法的色彩空间,以及支持使用 SDR 增益图的 HDR 编码基础图片。
ग्राफ़िक्स
Android 16 में, ग्राफ़िक से जुड़े नए सुधार शामिल हैं. जैसे, AGSL की मदद से कस्टम ग्राफ़िक इफ़ेक्ट.
AGSL की मदद से, पसंद के मुताबिक ग्राफ़िक इफ़ेक्ट
Android 16 में RuntimeColorFilter
और
RuntimeXfermode
जोड़े गए हैं. इनकी मदद से, थ्रेशोल्ड, सेपिया, और ह्यू सेचुरेशन जैसे जटिल इफ़ेक्ट बनाए जा सकते हैं. साथ ही, इन्हें ड्रॉ कॉल पर लागू किया जा सकता है. Android 13 के बाद से, AGSL का इस्तेमाल करके, Shader
को बढ़ाने वाले कस्टम RuntimeShaders बनाए जा सकते हैं. नया एपीआई, AGSL की मदद से काम करने वाला RuntimeColorFilter
जोड़ता है, जो ColorFilter
को बढ़ाता है. साथ ही, इसमें Xfermode
इफ़ेक्ट भी जोड़ा गया है, जिसकी मदद से सोर्स और डेस्टिनेशन पिक्सल के बीच, AGSL पर आधारित कस्टम कंपोजिटिंग और ब्लेंडिंग लागू की जा सकती है.
private val thresholdEffectString = """
uniform half threshold;
half4 main(half4 c) {
half luminosity = dot(c.rgb, half3(0.2126, 0.7152, 0.0722));
half bw = step(threshold, luminosity);
return bw.xxx1 * c.a;
}"""
fun setCustomColorFilter(paint: Paint) {
val filter = RuntimeColorFilter(thresholdEffectString)
filter.setFloatUniform(0.5);
paint.colorFilter = filter
}
कनेक्टिविटी
Android 16, प्लैटफ़ॉर्म को अपडेट करता है, ताकि आपके ऐप्लिकेशन को कम्यूनिकेशन और वायरलेस टेक्नोलॉजी से जुड़ी नई सुविधाओं का ऐक्सेस मिल सके.
बेहतर सुरक्षा के साथ रेंजिंग
Android 16 में, वाई-फ़ाई 6 के 802.11az वाले डिवाइसों पर, वाई-फ़ाई लोकेशन की सुविधा में बेहतर सुरक्षा सुविधाएं जोड़ी गई हैं. इससे ऐप्लिकेशन, प्रोटोकॉल की ज़्यादा सटीक जानकारी, ज़्यादा स्केलेबलिटी, और डाइनैमिक शेड्यूलिंग के साथ-साथ बेहतर सुरक्षा का फ़ायदा ले सकते हैं. इन सुविधाओं में, AES-256 पर आधारित एन्क्रिप्शन और MITM हमलों से सुरक्षा शामिल है. इससे, इसे लैपटॉप या वाहन के दरवाज़े को अनलॉक करने जैसे कामों के लिए, ज़्यादा सुरक्षित तरीके से इस्तेमाल किया जा सकता है. 802.11az को वाई-फ़ाई 6 स्टैंडर्ड के साथ इंटिग्रेट किया गया है. इससे, इसे आसानी से डिप्लॉय किया जा सकता है और ज़्यादा से ज़्यादा लोग इसका इस्तेमाल कर सकते हैं.
सामान्य रेंजिंग एपीआई
Android 16 includes the new RangingManager
, which provides
ways to determine the distance and angle on supported hardware between the local
device and a remote device. RangingManager
supports the usage of a variety of
ranging technologies such as BLE channel sounding, BLE RSSI-based ranging, Ultra
Wideband, and Wi-Fi round trip time.
कंपैनियन डिवाइस मैनेजर के डिवाइस की मौजूदगी
Android 16 中引入了用于绑定配套应用服务的新 API。当 BLE 在范围内且蓝牙处于连接状态时,系统会绑定服务;当 BLE 不在范围内或蓝牙处于断开连接状态时,系统会解除绑定服务。应用将根据各种 DevicePresenceEvent
收到新的 'onDevicePresenceEvent()' 回调。如需了解详情,请参阅 'startObservingDevicePresence(ObservingDevicePresenceRequest)'。
मीडिया
Android 16 में कई सुविधाएं शामिल हैं, जो मीडिया का अनुभव बेहतर बनाती हैं.
फ़ोटो पिकर में किए गए सुधार
照片选择器为用户提供了一种安全的内置授权方式,让用户可以向应用授予对本地存储空间和云端存储空间中所选图片和视频的访问权限,而不是对整个媒体库的访问权限。通过 Google 系统更新和 Google Play 服务组合使用模块化系统组件,该工具向后支持到 Android 4.4(API 级别 19)。只需几行代码即可与相关的 Android Jetpack 库集成。
Android 16 对照片选择器进行了以下改进:
- 嵌入式照片选择器:新 API,可让应用将照片选择器嵌入其视图层次结构中。这样,它就感觉像是应用中更为集成的一部分,同时仍可利用进程隔离功能,让用户能够选择媒体,而无需应用拥有过于宽泛的权限。为了最大限度地提高跨平台版本的兼容性并简化集成,如果您想集成嵌入式照片选择器,则需要使用即将推出的 Android Jetpack 库。
- 照片选择器中的云搜索:新的 API 可让 Android 照片选择器从云端媒体提供商中进行搜索。照片选择器中的搜索功能即将推出。
बेहतर प्रोफ़ेशनल वीडियो
Android 16 में ऐडवांस प्रोफ़ेशनल वीडियो (एपीवी) कोडेक के लिए सहायता उपलब्ध है. इसे प्रोफ़ेशनल लेवल की अच्छी क्वालिटी वाली वीडियो रिकॉर्डिंग और पोस्ट प्रोडक्शन के लिए डिज़ाइन किया गया है.
APV कोडेक स्टैंडर्ड में ये सुविधाएं शामिल हैं:
- वीडियो की क्वालिटी में कोई बदलाव नहीं होता (रॉ वीडियो की क्वालिटी के करीब)
- एडिट करने के वर्कफ़्लो को बेहतर बनाने के लिए, कम कॉम्प्लेक्सिटी और ज़्यादा थ्रूपुट वाला सिर्फ़ इंट्रा-फ़्रेम कोडिंग (बिना पिक्सल डोमेन का अनुमान लगाए)
- 2K, 4K, और 8K रिज़ॉल्यूशन वाले कॉन्टेंट के लिए, कुछ जीबीपीएस तक की हाई बिटरेट रेंज के साथ काम करता है. यह सुविधा, लाइटवाइट एन्ट्रापी कोडिंग स्कीम की मदद से चालू होती है
- बेहतर अनुभव देने वाले कॉन्टेंट के लिए फ़्रेम टाइल करना. साथ ही, पैरलल एन्कोडिंग और डिकोडिंग की सुविधा चालू करना
- अलग-अलग क्रोम सैंपलिंग फ़ॉर्मैट और बिट-डेप्थ के साथ काम करना
- विज़ुअल क्वालिटी में ज़्यादा गिरावट के बिना, कई बार डिकोड करने और फिर से एन्कोड करने की सुविधा
- मल्टीव्यू वीडियो और सहायक वीडियो के साथ काम करना, जैसे कि डेप्थ, ऐल्फ़ा, और झलक
- HDR10/10+ और उपयोगकर्ता के तय किए गए मेटाडेटा के लिए काम करना
OpenAPV प्रोजेक्ट के ज़रिए, एपीवी को लागू करने का रेफ़रंस दिया जाता है. Android 16 में, APV 422-10 प्रोफ़ाइल के लिए सहायता लागू की जाएगी. यह प्रोफ़ाइल, 10-बिट एन्कोडिंग के साथ-साथ YUV 422 कलर सैंपलिंग की सुविधा देती है. साथ ही, 2 जीबीपीएस तक की टारगेट बिटरेट के लिए भी काम करती है.
निजता
Android 16 में कई सुविधाएं शामिल हैं. इनकी मदद से, ऐप्लिकेशन डेवलपर उपयोगकर्ता की निजता को सुरक्षित रख सकते हैं.
Health Connect से जुड़े अपडेट
Health Connect 添加了 ACTIVITY_INTENSITY
,这是一种根据世界卫生组织关于中等强度和剧烈强度活动的指南定义的数据类型。每个记录都需要提供开始时间、结束时间以及活动强度(中等或剧烈)。
Health Connect 还包含支持医疗记录的更新版 API。这样一来,应用便可在征得用户明确同意的情况下,读取和写入 FHIR 格式的医疗记录。
Android पर Privacy Sandbox
Android 16 中集成了最新版本的 Privacy Sandbox on Android,这是我们持续致力于开发可让用户放心地知道其隐私受到保护的技术的一部分。您可以访问我们的网站,详细了解 Privacy Sandbox on Android 开发者 Beta 版计划,以便顺利上手。不妨了解 SDK 运行时,它可让 SDK 在与其所服务的应用分离的专用运行时环境中运行,从而为用户数据收集和共享提供更强的保护措施。
सुरक्षा
Android 16 में ऐसी सुविधाएं शामिल हैं जिनसे आपको अपने ऐप्लिकेशन की सुरक्षा को बेहतर बनाने और अपने ऐप्लिकेशन के डेटा को सुरक्षित रखने में मदद मिलती है.
पासकोड शेयर करने वाला एपीआई
Android 16 adds APIs that support sharing access to
Android Keystore keys with other apps. The new
KeyStoreManager
class supports
granting and revoking access to keys
by app uid, and includes an API for apps to access shared
keys.
डिवाइस के नाप या आकार
Android 16, आपके ऐप्लिकेशन को Android के फ़ॉर्मैट फ़ैक्टर का ज़्यादा से ज़्यादा फ़ायदा पाने में मदद करता है.
टीवी के लिए, पिक्चर और ऑडियो क्वालिटी का स्टैंडर्ड फ़्रेमवर्क
Android 16 中的新 MediaQuality
软件包公开了一组标准化 API,用于访问音频和图片配置文件以及与硬件相关的设置。这样,在线播放应用就可以查询配置文件并将其动态应用于媒体:
- 使用更大动态范围进行母版制作的电影需要更高的色彩准确度,才能看清阴影中的细微细节并根据环境光线进行调整,因此,最好使用色彩准确度优先于亮度的配置文件。
- 体育赛事直播通常采用较窄的动态范围进行母版制作,但通常是在白天观看,因此偏向亮度而非色彩准确度的配置文件可以获得更好的效果。
- 完全交互式内容需要尽可能减少处理以缩短延迟时间,并且需要更高的帧速率,因此许多电视都附带游戏配置文件。
借助此 API,应用可以在个人资料之间切换,用户可以享受调整支持的电视,以便尽可能适合其内容。
इंटरनैशनलाइज़ेशन
Android 16 में ऐसी सुविधाएं और क्षमताएं जोड़ी गई हैं जिनसे डिवाइस को अलग-अलग भाषाओं में इस्तेमाल करने पर, उपयोगकर्ता अनुभव बेहतर होता है.
वर्टिकल टेक्स्ट
Android 16 添加了对垂直渲染和测量文本的低级支持,以便为库开发者提供基本的垂直书写支持。这对于日语等通常使用竖向书写系统的语言特别有用。Paint
类中添加了一个新标志 VERTICAL_TEXT_FLAG
。使用 Paint.setFlags
设置此标志后,Paint 的文本测量 API 将报告垂直进度,而不是水平进度,并且 Canvas
将垂直绘制文本。
val text = "「春は、曙。」"
Box(
Modifier.padding(innerPadding).background(Color.White).fillMaxSize().drawWithContent {
drawIntoCanvas { canvas ->
val paint = Paint().apply { textSize = 64.sp.toPx() }
// Draw text vertically
paint.flags = paint.flags or VERTICAL_TEXT_FLAG
val height = paint.measureText(text)
canvas.nativeCanvas.drawText(
text,
0,
text.length,
size.width / 2,
(size.height - height) / 2,
paint
)
}
}
) {}
मेज़रमेंट सिस्टम को पसंद के मुताबिक बनाना
用户现在可以在“设置”中的地区偏好设置中自定义测量系统。用户偏好设置包含在语言区域代码中,因此您可以在 ACTION_LOCALE_CHANGED
上注册 BroadcastReceiver
,以便在地区偏好设置发生更改时处理语言区域配置更改。
使用格式设置程序有助于提供符合当地体验的服务。例如,对于将手机设置为英语(丹麦)或将手机设置为英语(美国)并将公制作为首选测量系统的用户,“0.5 in”的英语(美国)对应于“12,7 mm”。
如需找到这些设置,请打开“设置”应用,然后依次前往系统 > 语言和地区。