Android 16 mang đến cho nhà phát triển các tính năng và API mới tuyệt vời. Các phần sau đây tóm tắt những tính năng này để giúp bạn làm quen với các API liên quan.
Để biết danh sách chi tiết về các API mới, đã được sửa đổi, cũng như đã bị xoá, hãy đọc báo cáo điểm khác biệt về API. Để biết thông tin chi tiết về các API mới, hãy truy cập vào tài liệu tham khảo về API cho Android (các API mới được trình bày nổi bật).Bạn cũng nên xem xét những khía cạnh mà các thay đổi của nền tảng có thể ảnh hưởng đến ứng dụng của bạn. Để biết thêm thông tin, hãy xem các trang sau:
- Các thay đổi về hành vi ảnh hưởng đến ứng dụng khi ứng dụng nhắm đến Android 16
- Các thay đổi về hành vi ảnh hưởng đến tất cả ứng dụng bất kể
targetSdkVersion.
Chức năng cốt lõi
Android có các API mới giúp mở rộng các chức năng cốt lõi của hệ thống Android.
Hai bản phát hành API Android vào năm 2025
- Bản xem trước này dành cho bản phát hành chính tiếp theo của Android, dự kiến sẽ ra mắt vào quý 2 năm 2025. Bản phát hành này tương tự như tất cả các bản phát hành API trước đây của chúng tôi, trong đó chúng tôi có thể có các thay đổi về hành vi theo kế hoạch thường liên kết với targetSdkVersion.
- Chúng tôi dự định phát hành bản phát hành lớn sớm hơn một quý (quý 2 thay vì quý 3 như các năm trước) để phù hợp hơn với lịch phát hành thiết bị trên hệ sinh thái của chúng tôi, nhờ đó, nhiều thiết bị có thể nhận được bản phát hành lớn của Android sớm hơn. Với bản phát hành chính sắp ra mắt vào quý 2, bạn cần tiến hành kiểm thử khả năng tương thích hằng năm sớm hơn vài tháng so với những năm trước để đảm bảo ứng dụng của bạn đã sẵn sàng.
- Chúng tôi dự định phát hành một bản phát hành khác vào Quý 4 năm 2025, trong đó cũng sẽ có các API mới dành cho nhà phát triển. Bản phát hành lớn quý 2 sẽ là bản phát hành duy nhất trong năm 2025 có chứa các thay đổi về hành vi theo kế hoạch có thể ảnh hưởng đến ứng dụng.
Ngoài các API mới dành cho nhà phát triển, bản phát hành nhỏ quý 4 sẽ bao gồm các bản cập nhật tính năng, bản tối ưu hoá và bản sửa lỗi; bản phát hành này sẽ không bao gồm bất kỳ thay đổi nào về hành vi ảnh hưởng đến ứng dụng.
Chúng tôi sẽ tiếp tục phát hành Android theo quý. Các bản cập nhật vào Quý 1 và Quý 3 giữa các bản phát hành API sẽ cung cấp các bản cập nhật gia tăng để giúp đảm bảo chất lượng liên tục. Chúng tôi đang tích cực làm việc với các đối tác thiết bị để đưa bản phát hành quý 2 đến với nhiều thiết bị nhất có thể.
Sử dụng API mới với các bản phát hành chính và phụ
Ngày nay, bạn có thể bảo vệ một khối mã bằng cách kiểm tra cấp độ API bằng hằng số SDK_INT với VERSION_CODES. Chúng tôi sẽ tiếp tục hỗ trợ tính năng này cho các bản phát hành Android chính.
if (SDK_INT >= VERSION_CODES.BAKLAVA) {
// Use APIs introduced in Android 16
}
Bạn có thể sử dụng hằng số SDK_INT_FULL mới để kiểm tra API dựa trên cả phiên bản chính và phiên bản phụ bằng cách liệt kê VERSION_CODES_FULL mới.
if (SDK_INT_FULL >= VERSION_CODES_FULL.[MAJOR or MINOR RELEASE]) {
// Use APIs introduced in a major or minor release
}
Bạn cũng có thể sử dụng phương thức Build.getMinorSdkVersion() để chỉ nhận phiên bản SDK nhỏ.
val minorSdkVersion = Build.getMinorSdkVersion(VERSION_CODES_FULL.BAKLAVA)
Các API này chưa được hoàn thiện và có thể thay đổi. Vì vậy, vui lòng gửi ý kiến phản hồi cho chúng tôi nếu bạn có bất kỳ mối lo ngại nào.
Trải nghiệm người dùng và giao diện người dùng hệ thống
Android 16 mang đến cho nhà phát triển ứng dụng và người dùng nhiều quyền kiểm soát và tính linh hoạt hơn khi định cấu hình thiết bị cho phù hợp với nhu cầu của họ.
Thông báo tập trung vào tiến trình
Android 16 ra mắt thông báo tập trung vào tiến trình để giúp người dùng theo dõi liền mạch hành trình từ đầu đến cuối do người dùng khởi tạo.
Notification.ProgressStyle là một kiểu thông báo mới cho phép bạn tạo thông báo tập trung vào tiến trình. Các trường hợp sử dụng chính bao gồm đi chung xe, giao hàng và chỉ đường. Trong lớp Notification.ProgressStyle, bạn có thể biểu thị các trạng thái và mốc quan trọng trong hành trình của người dùng bằng cách sử dụng điểm và phân đoạn.
如需了解详情,请参阅以进度为中心的通知文档页面。
Thông tin cập nhật về tính năng xem trước thao tác quay lại
Android 16 添加了新 API,可帮助您在手势导航中启用预测性返回系统动画,例如“返回主屏幕”动画。通过使用新的 PRIORITY_SYSTEM_NAVIGATION_OBSERVER 注册 onBackInvokedCallback,您的应用可以在系统处理返回导航时接收常规的 onBackInvoked 调用,而不会影响正常的返回导航流程。
Android 16 还添加了 finishAndRemoveTaskCallback() 和 moveTaskToBackCallback。通过向 OnBackInvokedDispatcher 注册这些回调,系统可以在调用返回手势时触发特定行为并播放相应的提前动画。
Phản hồi xúc giác phong phú hơn
自诞生之日起,Android 就提供了对触感反馈致动器的控制。
Android 11 添加了对更复杂的触感反馈效果的支持,更高级的致动器可以通过设备定义的语义基元 VibrationEffect.Compositions 支持这些效果。
Android 16 添加了触感反馈 API,让应用能够定义触感反馈效果的振幅和频率曲线,同时抽象出设备功能之间的差异。
Năng suất và công cụ dành cho nhà phát triển
Mặc dù hầu hết công việc của chúng tôi nhằm cải thiện hiệu suất của bạn đều tập trung vào các công cụ như Android Studio, Jetpack Compose và các thư viện Android Jetpack, nhưng chúng tôi luôn tìm cách giúp bạn hiện thực hoá ý tưởng của mình trên nền tảng này.
Xử lý nội dung cho hình nền động
在 Android 16 中,动态壁纸框架将获得一个新的 content API,以应对由用户驱动的动态壁纸带来的挑战。目前,包含用户提供的内容的实时壁纸需要复杂的服务专用实现。Android 16 引入了 WallpaperDescription 和 WallpaperInstance。借助 WallpaperDescription,您可以识别同一服务中的动态壁纸的不同实例。例如,如果某张壁纸同时在主屏幕和锁定屏幕上显示,则这两种情况下显示的内容可能各不相同。壁纸选择器和 WallpaperManager 会使用此元数据更好地向用户呈现壁纸,从而简化创建多样化个性化动态壁纸体验的过程。
Hiệu suất và pin
Android 16 giới thiệu các API giúp thu thập thông tin chi tiết về ứng dụng của bạn.
Lập hồ sơ do hệ thống kích hoạt
ProfilingManager 在 Android 15 中添加,让应用能够在现场使用 Perfetto 请求收集性能数据。不过,由于此性能分析必须从应用启动,因此应用很难或根本无法捕获启动或 ANR 等关键流程。
为此,Android 16 向 ProfilingManager 引入了系统触发的性能分析。应用可以注册接收特定触发器(例如冷启动 reportFullyDrawn 或 ANR)轨迹的兴趣,然后系统会代表应用启动和停止轨迹。轨迹完成后,结果会传送到应用的数据目录。
Thành phần khởi động trong ApplicationStartInfo
ApplicationStartInfo 在 Android 15 中添加,可让应用查看进程启动原因、启动类型、启动时间、节流和其他实用诊断数据。Android 16 添加了 getStartComponent(),用于区分触发启动的组件类型,这有助于优化应用的启动流程。
Khả năng tự xem xét công việc hiệu quả hơn
JobScheduler#getPendingJobReason() API 会返回作业可能处于待处理状态的原因。不过,作业处于待处理状态的原因可能有多种。
在 Android 16 中,我们引入了一个新 API JobScheduler#getPendingJobReasons(int jobId),该 API 会返回作业处于待处理状态的多种原因,包括开发者设置的显式约束条件和系统设置的隐式约束条件。
我们还引入了 JobScheduler#getPendingJobReasonsHistory(int jobId),用于返回最新约束条件更改的列表。
我们建议您使用该 API 来调试作业可能无法执行的原因,尤其是在您发现某些任务的成功率降低或某些作业完成延迟存在 bug 时。例如,未能在后台更新微件,或在应用启动之前未能调用预加载作业。
这还有助于您更好地了解某些作业是否因系统定义的约束条件而无法完成,而不是因明确设置的约束条件而无法完成。
Tốc độ làm mới thích ứng
Tốc độ làm mới thích ứng (ARR), được giới thiệu trong Android 15, cho phép tốc độ làm mới màn hình trên phần cứng được hỗ trợ để thích ứng với tốc độ khung hình nội dung bằng cách sử dụng các bước VSync riêng biệt. Điều này giúp giảm mức tiêu thụ điện năng trong khi không cần phải chuyển đổi chế độ có thể gây ra hiện tượng giật.
Android 16 giới thiệu hasArrSupport() và getSuggestedFrameRate(int) trong khi khôi phục getSupportedRefreshRates() để giúp ứng dụng của bạn dễ dàng tận dụng ARR hơn. RecyclerView
1.4 hỗ trợ ARR nội bộ khi định vị từ một thao tác hất hoặc
cuộn mượt mà. Chúng tôi đang tiếp tục nỗ lực để thêm tính năng hỗ trợ
ARR vào nhiều thư viện Jetpack hơn. Bài viết về tốc độ khung hình này đề cập đến nhiều API mà bạn có thể sử dụng để đặt tốc độ khung hình để ứng dụng của bạn có thể trực tiếp sử dụng ARR.
Headroom API trong ADPF
SystemHealthManager 引入了 getCpuHeadroom 和 getGpuHeadroom API,旨在为游戏和资源密集型应用提供可用 CPU 和 GPU 资源的估算值。通过这些方法,您可以评估应用或游戏如何以最佳方式改善系统运行状况,尤其是在与用于检测热节流的其他 Android 动态性能框架 (ADPF) API 搭配使用时。
在受支持的设备上使用 CpuHeadroomParams 和 GpuHeadroomParams,您可以自定义用于计算余量的时间范围,并在平均资源可用性或最低资源可用性之间进行选择。这有助于您相应地减少 CPU 或 GPU 资源用量,从而提升用户体验并延长电池续航时间。
Hỗ trợ tiếp cận
Android 16 bổ sung các API và tính năng hỗ trợ tiếp cận mới có thể giúp bạn đưa ứng dụng của mình đến với mọi người dùng.
API hỗ trợ tiếp cận được cải thiện
Android 16 添加了其他 API 来增强界面语义,这有助于为依赖于无障碍服务(例如 TalkBack)的用户提高一致性。
为文字添加轮廓,以最大限度地提高文字对比度
视力较低的用户对对比度的敏感度通常较低,因此很难将对象与背景区分开来。为了帮助这些用户,Android 16 引入了轮廓文本,取代了高对比度文本,后者会在文本周围绘制较大的对比度区域,以大大提高可辨性。
Android 16 包含新的 AccessibilityManager API,可让您的应用检查或注册监听器,以查看此模式是否已启用。这主要适用于 Compose 等界面工具包,以提供类似的视觉体验。如果您维护界面工具包库,或者您的应用执行绕过 android.text.Layout 类的自定义文本渲染,则可以使用此方法来了解何时启用轮廓文本。
向 TtsSpan 添加了时长
Android 16 使用 TYPE_DURATION 扩展了 TtsSpan,其中包含 ARG_HOURS、ARG_MINUTES 和 ARG_SECONDS。这样,您就可以直接为时长添加注释,确保通过 TalkBack 等服务获得准确且一致的文本转语音输出。
支持具有多个标签的元素
Android 目前允许界面元素从其他元素派生其无障碍功能标签,现在还支持关联多个标签,这是 Web 内容中常见的情况。通过在 AccessibilityNodeInfo 中引入基于列表的 API,Android 可以直接支持这些多标签关系。在进行这项更改的过程中,我们已弃用 AccessibilityNodeInfo#setLabeledBy 和 #getLabeledBy,改用 #addLabeledBy、#removeLabeledBy 和 #getLabeledByList。
改进了对可展开元素的支持
Android 16 添加了无障碍功能 API,可让您传达互动元素(例如菜单和展开式列表)的展开或收起状态。通过使用 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 相关信息的文本,而不会覆盖其子项中的信息。
必填表单字段
Android 16 向 AccessibilityNodeInfo 添加了 setFieldRequired,以便应用可以告知无障碍服务需要输入表单字段。对于填写各种类型表单的用户而言,这是一个重要的场景,即使是简单的必填条款及条件复选框,也能帮助用户始终如一地识别必填字段并在必填字段之间快速导航。
Điện thoại làm nguồn đầu vào micrô cho cuộc gọi thoại bằng thiết bị trợ thính LEA
Android 16 新增了一项功能,让 LE Audio 助听器用户能够在助听器的内置麦克风和手机上的麦克风之间切换,以进行语音通话。在嘈杂的环境或助听器麦克风可能无法正常工作的其他情况下,这会很有帮助。
Các nút điều chỉnh âm lượng môi trường xung quanh cho thiết bị trợ thính LEA
Android 16 新增了一项功能,可让 LE Audio 助听器用户调节助听器麦克风接收的环境声音的音量。在背景噪音过大或过小的情况下,这可能会很有用。
Camera
Android 16 tăng cường hỗ trợ cho người dùng camera chuyên nghiệp, cho phép tự động phơi sáng kết hợp cùng với chế độ điều chỉnh nhiệt độ màu và sắc thái chính xác. Chỉ báo chế độ ban đêm mới giúp ứng dụng của bạn biết thời điểm chuyển đổi sang và từ phiên máy ảnh ở chế độ ban đêm. Các thao tác Intent mới giúp bạn dễ dàng chụp ảnh động hơn, đồng thời chúng tôi sẽ tiếp tục cải thiện hình ảnh UltraHDR bằng cách hỗ trợ mã hoá HEIC và các thông số mới theo tiêu chuẩn dự thảo ISO 21496-1.
Chế độ tự động phơi sáng kết hợp
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) ...
}
Điều chỉnh chính xác nhiệt độ màu và sắc độ
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) ...
}
以下示例展示了应用不同色温和色调调整后的照片效果:
Tính năng phát hiện cảnh ở chế độ ban đêm của camera
Để giúp ứng dụng của bạn biết thời điểm chuyển sang và thoát khỏi phiên máy ảnh ở chế độ ban đêm, Android 16 sẽ thêm EXTENSION_NIGHT_MODE_INDICATOR. Nếu được hỗ trợ, bạn có thể sử dụng tính năng này trong CaptureResult trong Camera2.
Đây là API mà chúng tôi đã đề cập ngắn gọn trong bài đăng trên blog Cách Instagram giúp người dùng chụp những bức ảnh tuyệt đẹp trong điều kiện thiếu sáng. Bài đăng đó là một hướng dẫn thực tế về cách triển khai chế độ ban đêm cùng với một nghiên cứu điển hình liên kết ảnh chất lượng cao hơn ở chế độ ban đêm trong ứng dụng với việc tăng số lượng ảnh được chia sẻ từ máy ảnh trong ứng dụng.
Thao tác theo ý định chụp ảnh chuyển động
Android 16 添加了标准 intent 操作 ACTION_MOTION_PHOTO_CAPTURE 和 ACTION_MOTION_PHOTO_CAPTURE_SECURE,用于请求相机应用拍摄动态照片并将其返回。
您必须传递额外的 EXTRA_OUTPUT 来控制将图片写入的位置,或者通过 Intent.setClipData(ClipData) 传递 Uri。如果您未设置 ClipData,系统会在调用 Context.startActivity(Intent) 时将其复制到该位置。
Các tính năng nâng cao hình ảnh Ultra HDR
Android 16 继续致力于通过 UltraHDR 图片提供出色的图片质量。它添加了对 HEIC 文件格式的 UltraHDR 图片的支持。这些图片将获得 ImageFormat 类型 HEIC_ULTRAHDR,并包含类似于现有 UltraHDR JPEG 格式的嵌入式增益图。我们还在努力为 UltraHDR 添加 AVIF 支持,敬请期待。
此外,Android 16 在 UltraHDR 中实现了 ISO 21496-1 草稿标准中的其他参数,包括能够获取和设置应应用增益图算法的色彩空间,以及支持使用 SDR 增益图的 HDR 编码基础图片。
Đồ hoạ
Android 16 có các điểm cải tiến mới nhất về đồ hoạ, chẳng hạn như hiệu ứng đồ hoạ tuỳ chỉnh bằng AGSL.
Hiệu ứng đồ hoạ tuỳ chỉnh bằng AGSL
Android 16 adds RuntimeColorFilter and
RuntimeXfermode, allowing you to author complex effects like
Threshold, Sepia, and Hue Saturation and apply them to draw calls. Since Android
13, you've been able to use AGSL to create custom
RuntimeShaders that extend Shader. The new API
mirrors this, adding an AGSL-powered RuntimeColorFilter that
extends ColorFilter, and a Xfermode effect that
lets you implement AGSL-based custom compositing and blending between source and
destination pixels.
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
}
Khả năng kết nối
Android 16 cập nhật nền tảng để cho phép ứng dụng của bạn sử dụng những tiến bộ mới nhất về công nghệ truyền thông và không dây.
Đo khoảng cách với tính năng bảo mật nâng cao
Android 16 hỗ trợ thêm các tính năng bảo mật mạnh mẽ trong vị trí Wi-Fi trên các thiết bị được hỗ trợ bằng 802.11az của Wi-Fi 6, cho phép các ứng dụng kết hợp độ chính xác cao hơn, khả năng mở rộng lớn hơn và lập lịch biểu động của giao thức với các tính năng bảo mật nâng cao, bao gồm cả tính năng mã hoá dựa trên AES-256 và bảo vệ chống lại các cuộc tấn công MITM. Điều này cho phép sử dụng chip một cách an toàn hơn trong các trường hợp sử dụng ở cự ly gần, chẳng hạn như mở khoá máy tính xách tay hoặc cửa xe. 802.11az được tích hợp với tiêu chuẩn Wi-Fi 6, tận dụng cơ sở hạ tầng và các tính năng của tiêu chuẩn này để được áp dụng rộng rãi hơn và triển khai dễ dàng hơn.
API đo khoảng cách chung
Android 16 包含新的 RangingManager,它提供了在受支持的硬件上确定本地设备与远程设备之间的距离和角度的方法。RangingManager 支持使用各种测距技术,例如 BLE 信道声音探测、基于 BLE RSSI 的测距、超宽带和 Wi-Fi 往返时间。
Sự hiện diện của thiết bị trong trình quản lý thiết bị đồng hành
Android 16 中引入了用于绑定配套应用服务的新 API。当 BLE 在范围内且蓝牙处于连接状态时,系统会绑定服务;当 BLE 不在范围内或蓝牙处于断开连接状态时,系统会解除绑定服务。应用将根据各种 DevicePresenceEvent 收到新的 'onDevicePresenceEvent()' 回调。如需了解详情,请参阅 'startObservingDevicePresence(ObservingDevicePresenceRequest)'。
Nội dung nghe nhìn
Android 16 có nhiều tính năng giúp cải thiện trải nghiệm nghe nhìn.
Cải tiến công cụ chọn ảnh
照片选择器为用户提供了一种安全的内置授权方式,让用户可以向应用授予对本地存储空间和云端存储空间中所选图片和视频的访问权限,而不是对整个媒体库的访问权限。通过 Google 系统更新和 Google Play 服务组合使用模块化系统组件,该工具向后支持到 Android 4.4(API 级别 19)。只需几行代码即可与相关的 Android Jetpack 库集成。
Android 16 对照片选择器进行了以下改进:
- 嵌入式照片选择器:新 API,可让应用将照片选择器嵌入其视图层次结构中。这样,它就感觉像是应用中更为集成的一部分,同时仍可利用进程隔离功能,让用户能够选择媒体,而无需应用拥有过于宽泛的权限。为了最大限度地提高跨平台版本的兼容性并简化集成,如果您想集成嵌入式照片选择器,则需要使用即将推出的 Android Jetpack 库。
- 照片选择器中的云搜索:新的 API 可让 Android 照片选择器从云端媒体提供商中进行搜索。照片选择器中的搜索功能即将推出。
Video chuyên nghiệp nâng cao
Android 16 ra mắt tính năng hỗ trợ bộ mã hoá và giải mã Video chuyên nghiệp nâng cao (APV). Bộ mã hoá và giải mã này được thiết kế để dùng cho việc quay video chất lượng cao và xử lý hậu kỳ ở cấp chuyên nghiệp.
Tiêu chuẩn bộ mã hoá và giải mã APV có các tính năng sau:
- Chất lượng video không bị mất dữ liệu (gần với chất lượng video thô)
- Mã hoá chỉ trong khung hình có độ phức tạp thấp và thông lượng cao (không có tính năng dự đoán miền pixel) để hỗ trợ tốt hơn quy trình chỉnh sửa
- Hỗ trợ phạm vi tốc độ bit cao lên đến vài Gbps cho nội dung có độ phân giải 2K, 4K và 8K, được bật bằng lược đồ mã hoá entropy nhẹ
- Sắp xếp khung hình cho nội dung sống động và để bật tính năng mã hoá và giải mã song song
- Hỗ trợ nhiều định dạng lấy mẫu màu sắc và độ sâu bit
- Hỗ trợ nhiều lần giải mã và mã hoá lại mà không làm giảm chất lượng hình ảnh nghiêm trọng
- Hỗ trợ video nhiều khung hình và video phụ như độ sâu, alpha và bản xem trước
- Hỗ trợ HDR10/10+ và siêu dữ liệu do người dùng xác định
Phương thức triển khai tham chiếu của APV được cung cấp thông qua dự án OpenAPV. Android 16 sẽ triển khai tính năng hỗ trợ cho Hồ sơ APV 422-10, cung cấp tính năng lấy mẫu màu YUV 422 cùng với tính năng mã hoá 10 bit và tốc độ bit mục tiêu lên đến 2 Gbps.
Quyền riêng tư
Android 16 có nhiều tính năng giúp nhà phát triển ứng dụng bảo vệ quyền riêng tư của người dùng.
Thông tin cập nhật về Health Connect
Health Connect thêm ACTIVITY_INTENSITY, một loại dữ liệu được xác định theo hướng dẫn của Tổ chức Y tế Thế giới về hoạt động vừa phải và mạnh mẽ. Mỗi bản ghi yêu cầu thời gian bắt đầu, thời gian kết thúc và cường độ hoạt động là vừa phải hay mạnh.
Health Connect cũng chứa các API đã cập nhật hỗ trợ bản ghi y tế. Điều này cho phép các ứng dụng đọc và ghi hồ sơ y tế ở định dạng FHIR khi có sự đồng ý rõ ràng của người dùng.
Hộp cát về quyền riêng tư trên Android
Android 16 中集成了最新版本的 Privacy Sandbox on Android,这是我们持续致力于开发可让用户放心地知道其隐私受到保护的技术的一部分。您可以访问我们的网站,详细了解 Privacy Sandbox on Android 开发者 Beta 版计划,以便顺利上手。不妨了解 SDK 运行时,它可让 SDK 在与其所服务的应用分离的专用运行时环境中运行,从而为用户数据收集和共享提供更强的保护措施。
Bảo mật
Android 16 có các tính năng giúp bạn tăng cường tính bảo mật của ứng dụng và bảo vệ dữ liệu của ứng dụng.
Key sharing API
Android 16 bổ sung các API hỗ trợ chia sẻ quyền truy cập vào khoá Kho khoá Android với các ứng dụng khác. Lớp KeyStoreManager mới hỗ trợ cấp và thu hồi quyền truy cập vào khoá theo uid của ứng dụng, đồng thời bao gồm một API để các ứng dụng truy cập vào khoá dùng chung.
Kiểu dáng thiết bị
Android 16 hỗ trợ các ứng dụng của bạn để khai thác tối đa các kiểu dáng của Android.
Khung hình ảnh và âm thanh tiêu chuẩn cho TV
Android 16 中的新 MediaQuality 软件包公开了一组标准化 API,用于访问音频和图片配置文件以及与硬件相关的设置。这样,在线播放应用就可以查询配置文件并将其动态应用于媒体:
- 使用更大动态范围进行母版制作的电影需要更高的色彩准确度,才能看清阴影中的细微细节并根据环境光线进行调整,因此,最好使用色彩准确度优先于亮度的配置文件。
- 体育赛事直播通常采用较窄的动态范围进行母版制作,但通常是在白天观看,因此偏向亮度而非色彩准确度的配置文件可以获得更好的效果。
- 完全交互式内容需要尽可能减少处理以缩短延迟时间,并且需要更高的帧速率,因此许多电视都附带游戏配置文件。
借助此 API,应用可以在个人资料之间切换,用户可以享受调整支持的电视,以便尽可能适合其内容。
Quốc tế hoá
Android 16 bổ sung các tính năng và chức năng bổ trợ cho trải nghiệm người dùng khi thiết bị được dùng bằng nhiều ngôn ngữ.
Văn bản dọc
Android 16 bổ sung tính năng hỗ trợ cấp thấp để hiển thị và đo lường văn bản theo chiều dọc nhằm cung cấp tính năng hỗ trợ viết theo chiều dọc cơ bản cho nhà phát triển thư viện. Điều này đặc biệt hữu ích đối với các ngôn ngữ như tiếng Nhật thường sử dụng hệ thống viết theo chiều dọc. Thêm cờ mới, VERTICAL_TEXT_FLAG vào lớp Paint. Khi bạn đặt cờ này bằng Paint.setFlags, API đo lường văn bản của Paint sẽ báo cáo các tiến trình dọc thay vì tiến trình ngang và Canvas sẽ vẽ văn bản theo chiều dọc.
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
)
}
}
) {}
Tuỳ chỉnh hệ thống đo lường
用户现在可以在“设置”中的地区偏好设置中自定义测量系统。用户偏好设置包含在语言区域代码中,因此您可以在 ACTION_LOCALE_CHANGED 上注册 BroadcastReceiver,以便在地区偏好设置发生更改时处理语言区域配置更改。
使用格式设置程序有助于提供符合当地体验的服务。例如,对于将手机设置为英语(丹麦)或将手机设置为英语(美国)并将公制作为首选测量系统的用户,“0.5 in”的英语(美国)对应于“12,7 mm”。
如需找到这些设置,请打开“设置”应用,然后依次前往系统 > 语言和地区。