Đồ hoạ

  
Tận dụng cơ sở đồ hoạ trên nhiều bản phát hành của nền tảng Android

Bảng này liệt kê tất cả cấu phần phần mềm trong nhóm androidx.graphics.

Cấu phần phần mềm Bản phát hành ổn định Bản phát hành dùng thử Bản phát hành beta Bản phát hành alpha
nhân đồ hoạ 1.0.0 - - -
đường dẫn đồ hoạ 1.0.1 - - -
hình-dạng-đồ-h - 1.0.0-rc01 - -
Lần gần nhất cập nhật thư viện này: ngày 24 tháng 7 năm 2024

Khai báo phần phụ thuộc

Để thêm một phần phụ thuộc trên Graphics, bạn phải thêm kho lưu trữ Google Maven vào dự án. Đọc nội dung Kho lưu trữ Maven của Google để biết thêm thông tin.

Thêm các phần phụ thuộc cho cấu phần phần mềm bạn cần trong tệp build.gradle cho ứng dụng hoặc mô-đun:

Groovy

dependencies {
    implementation "androidx.graphics:graphics-core:1.0.0"
    implementation "androidx.graphics:graphics-path:1.0.1"
    implementation "androidx.graphics:graphics-shapes:1.0.0-rc01"
}

Kotlin

dependencies {
    implementation("androidx.graphics:graphics-core:1.0.0")
    implementation("androidx.graphics:graphics-path:1.0.1")
    implementation("androidx.graphics:graphics-shapes:1.0.0-rc01")
}

Để biết thêm thông tin về các phần phụ thuộc, hãy xem bài viết Thêm phần phụ thuộc vào bản dựng.

Ý kiến phản hồi

Ý kiến phản hồi của bạn có thể giúp chúng tôi cải thiện Jetpack. Hãy cho chúng tôi biết nếu bạn phát hiện lỗi mới hoặc có ý tưởng cải thiện thư viện này. Vui lòng xem các lỗi hiện có trong thư viện này trước khi báo một lỗi mới. Bạn có thể thêm lượt bình chọn cho lỗi hiện có bằng cách nhấp vào nút dấu sao.

Báo lỗi mới

Xem tài liệu về Công cụ theo dõi lỗi để biết thêm thông tin.

Không có ghi chú phát hành cho cấu phần phần mềm này.

Graphics Shapes Phiên bản 1.0

Phiên bản 1.0.0-rc01

Ngày 24 tháng 7 năm 2024

Phát hành androidx.graphics:graphics-shapes:1.0.0-rc01, androidx.graphics:graphics-shapes-android:1.0.0-rc01androidx.graphics:graphics-shapes-desktop:1.0.0-rc01. Phiên bản 1.0.0-rc01 bao gồm các thay đổi sau.

Phiên bản 1.0.0-beta01

Ngày 1 tháng 5 năm 2024

Phát hành androidx.graphics:graphics-shapes:1.0.0-beta01, androidx.graphics:graphics-shapes-android:1.0.0-beta01androidx.graphics:graphics-shapes-desktop:1.0.0-beta01. Phiên bản 1.0.0-beta01 bao gồm các thay đổi sau.

Thay đổi về API

  • Cho phép xoay trước hình dạng để bắt đầu tại một điểm khác. Thay đổi này cho phép các hình dạng pillStar bắt đầu đường cong từ một điểm không mặc định trên chu vi. Điều này có thể hữu ích khi tạo ảnh động cho việc vuốt từ đường đi của hình dạng, để bắt đầu vẽ từ một vị trí cụ thể trên đường viền của hình. (Ifbb4d, b/324303807)
  • Thêm các hàm calculateBounds() vào Morph, song song với các hàm tương tự trên RoundedPolygon. (I8a3b6, b/325463575)

Phiên bản 1.0.0-alpha05

Ngày 7 tháng 2 năm 2024

Phát hành androidx.graphics:graphics-shapes:1.0.0-alpha05, androidx.graphics:graphics-shapes-android:1.0.0-alpha05androidx.graphics:graphics-shapes-desktop:1.0.0-alpha05. Phiên bản 1.0.0-alpha05 bao gồm các thay đổi sau.

Tính năng mới

  • Thư viện nay cung cấp các hàm pill()pillStar() mới để dễ dàng tạo các hình dạng bo tròn/có gắn dấu sao. Ngoài ra còn có các API mới để tính toán giới hạn chính xác cần thiết cho một hình dạng (các giới hạn trước đó chỉ là số liệu ước tính dựa trên điểm điều khiển và neo đường cong Bezier cơ bản), cũng như giới hạn tối đa có thể có, có thể hữu ích khi xác định kích thước của vùng chứa đang chứa nếu nó bị xoay trong vùng chứa đó. (I71827)

Thay đổi về API

  • Nay có thêm lựa chọn để truy xuất giới hạn chính xác và giới hạn tối đa. (I6d49f, b/317286450)

Sửa lỗi

  • Thỉnh thoảng, có một số cấu phần phần mềm kết xuất khi vẽ những hình dạng này dưới dạng đường vẽ nét, do vấn đề kết xuất cấp thấp liên quan đến các đường cong có độ dài bằng 0. Lỗi này được khắc phục bằng cách loại bỏ tất cả các đường cong có độ dài bằng 0 (mà các hình dạng không cần đến, nhờ đó cũng tiết kiệm được mức hao tổn của các đường dẫn do hình dạng tạo ra).

Phiên bản 1.0.0-alpha04

Ngày 13 tháng 12 năm 2023

Phát hành androidx.graphics:graphics-shapes:1.0.0-alpha04, androidx.graphics:graphics-shapes-android:1.0.0-alpha04androidx.graphics:graphics-shapes-desktop:1.0.0-alpha04. Phiên bản 1.0.0-alpha04 bao gồm những thay đổi sau.

Tính năng mới

  • Bản phát hành này chứa một số nội dung thay đổi về API, cũng như một số bản sửa lỗi.
  • Nhiều thay đổi đối với API giúp thư viện Hình dạng thân thiện với KMP. Nhờ vậy, bạn có thể dễ dàng gọi từ mã không thuộc Android (chẳng hạn như mã Compose độc lập với Android). Ví dụ: không có loại Android nào trong API, chẳng hạn như các loại PointF, Matrix và Path trước đó.
  • Ngoài ra, chúng tôi cũng đã thực hiện một số thay đổi đối với API và quá trình triển khai vì lý do hiệu suất, đặc biệt là để giảm thiểu việc phân bổ (và thu thập) đối tượng. Ví dụ: việc di chuyển từ PointF sang các tham số Float riêng biệt giúp tránh việc phân bổ nhiều cấu trúc PointF tạm thời để giữ các đỉnh đó.

Thay đổi về API

  • Thay thế Morph.asMutableCubics bằng một hàm để lặp lại trên MutableCubics. Thay đổi giao diện chức năng PointTransformer, giờ đây, thao tác này sẽ lấy toạ độ x và y của Point rồi trả về một TransformedResult (được tạo bằng các toạ độ x và y đã chuyển đổi) (I6719e)
  • Xoá hàm khởi tạo Cubic công khai và đặt hàm này làm hàm factory. (I409ce)
  • Thêm API vẽ và biến đổi dành riêng cho Android (I079f6, b/292289543)
  • Loại bỏ các phần phụ thuộc Android (Iadc1c, b/292289543)
  • Giờ đây, tên thuộc tính neo và điều khiển đã trở nên hợp lý hơn (If13bd, b/294562941)
  • Đã thay đổi tham số PointF thành Float cặp (Id4705, b/276466399, b/290254314)
  • progress hiện được chuyển trực tiếp đến các lệnh vẽ Morph (Icdca2)

Sửa lỗi

Phiên bản 1.0.0-alpha03

Ngày 7 tháng 6 năm 2023

Phát hành androidx.graphics:graphics-shapes:1.0.0-alpha03. Phiên bản 1.0.0-alpha03 bao gồm các thay đổi sau.

Thay đổi về API

  • Thêm hàm RoundedPolygon.rectangle() mới (I78e7e, b/280322189)
  • Giờ đây, các hàm Star và Circle (Vòng tròn) đã được rút gọn chữ viết hoa và được gọi qua đối tượng đồng hành của RoundedPolygon, ví dụ: RoundedPolygon.star(...)(I14735)

Sửa lỗi

  • Khắc phục lỗi làm mượt (Ibf894)
  • Sửa lỗi xảy ra khi hình dạng bắt đầu và kết thúc giống nhau. Phân bổ không gian có sẵn tốt hơn ở bên cạnh cho các đoạn cắt, trước tiên sử dụng không gian có sẵn để làm tròn, sau đó để làm mượt nếu còn chỗ. (Ibd320, b/277936300)

Phiên bản 1.0.0-alpha02

Ngày 19 tháng 4 năm 2023

Phát hành androidx.graphics:graphics-shapes:1.0.0-alpha02. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.

Thay đổi về API

  • Lớp cấp cao của Polygon được hợp nhất với lớp con RoundedPolygon; tất cả đa giác hiện đều là đa giác tròn [không bắt buộc].
  • Hàm Star (vẫn trả về RoundedPolygon như trước đây) hiện nhận giá trị innerRadius, thay vì tham số innerRadiusRatio trước đó. Tham số này giống với tham số bán kính hiện có, giúp mọi thứ đơn giản và nhất quán hơn. Ngoài ra, tham số numOuterVertices đã được đổi tên thành numVerticesPerRadius để làm rõ rằng cùng một số được áp dụng cho cả bán kính bên trong và bên ngoài.
  • Trước đây, CornerRounding.radius được ghi nhận là tương đối với kích thước của đa giác, nhưng đó là (và phải là) một giá trị tuyệt đối, không tương đối. Các tài liệu đã được cập nhật và chú giải giới hạn ở giá trị tối đa là 1.0 đã được khắc phục.

Phiên bản 1.0.0-alpha01

Ngày 5 tháng 4 năm 2023

Graphics-Shapes là một thư viện mới cho phép dễ dàng tạo và kết xuất các hình dạng đa giác bo tròn, cũng như tạo hiệu ứng (ảnh động) đơn giản và tự động giữa các hình dạng khác nhau.

Phát hành androidx.graphics:graphics-shapes:1.0.0-alpha01. Phiên bản này được phát hành từ một nhánh nội bộ.

Tính năng mới

  • Sử dụng API Đa giác để tạo đa giác thông thường và đa giác sao có số đỉnh mong muốn.
  • Sử dụng tham số CornerRounding không bắt buộc để chỉ định bán kính bo tròn và tham số làm mịn các góc, giúp tạo ra hình đa giác có góc bo tròn.
  • Dùng API Morph(Polygon, Polygon) mới để tự động tính toán hình dạng "biến đổi" có tiến trình có thể được đặt từ 0 đến 1 để tạo ảnh động giữa hình bắt đầu và hình kết thúc. Tạo ảnh động cho tiến trình đó theo thời gian, vẽ kết quả trên mọi khung hình để tạo ảnh động mượt mà giữa các hình dạng bo tròn mới này.

Graphics Path Phiên bản 1.0

Phiên bản 1.0.1

Ngày 1 tháng 5 năm 2024

Phát hành androidx.graphics:graphics-path:1.0.1. Phiên bản 1.0.1 bao gồm các thay đổi sau.

Sửa lỗi

  • Cải tiến cờ của trình biên dịch.

Phiên bản 1.0.0

Ngày 6 tháng 3 năm 2024

Phát hành androidx.graphics:graphics-path:1.0.0.

Phiên bản 1.0.0-rc01

Ngày 21 tháng 2 năm 2024

Phát hành androidx.graphics:graphics-path:1.0.0-rc01. Phiên bản 1.0.0-rc01 bao gồm các thay đổi sau.

Sửa lỗi

  • Cải thiện hiệu suất của PathIterator trên API < 34 (Id4629)

Phiên bản 1.0.0-beta02

Ngày 10 tháng 1 năm 2024

Các thay đổi trong bản phát hành này đều nhằm mục đích giảm kích thước thư viện. Kích thước thư viện lớn hơn mức cần thiết do các giả định được đưa ra bởi mã gốc.

Phát hành androidx.graphics:graphics-path:1.0.0-beta02. Phiên bản 1.0.0-beta02 bao gồm các thay đổi sau.

Sửa lỗi

  • Giảm 96% kích thước của libandroidx.graphics.path.so. (I71397)
  • Giảm 5% kích thước của libandroidx.graphics.path.so. (I2da7c)
  • Đã thu hẹp 43% các thành phần gốc của androidx.graphics:graphics-path. (I8e40d)

Phiên bản 1.0.0-beta01

Ngày 29 tháng 11 năm 2023

Phát hành androidx.graphics:graphics-path:1.0.0-beta01. Phiên bản 1.0.0-beta01 bao gồm các thay đổi sau.

Thay đổi về API

Sửa lỗi

  • Nhiều bản sửa lỗi và điểm cải tiến về hiệu suất, bao gồm cả cách thư viện xử lý đường conic.

Phiên bản 1.0.0-alpha02

Ngày 7 tháng 6 năm 2023

Phát hành androidx.graphics:graphics-path:1.0.0-alpha02. Phiên bản này được phát triển trong một nhánh nội bộ.

Tính năng mới

  • Khắc phục vấn đề kiểm tra phiên bản nền tảng nội bộ gây ra sự cố khi chạy trên bản xem trước Android 14 (việc kiểm tra phiên bản sẽ không thành công, nhưng cơ chế thực hiện các thao tác trên các bản phát hành trước không hoạt động chính xác trên Android 14 cụ thể).

Phiên bản 1.0.0-alpha01

Ngày 22 tháng 3 năm 2023

Phát hành androidx.graphics:graphics-path:1.0.0-alpha01. Phiên bản 1.0.0-alpha01 bao gồm các thay đổi sau.

Tính năng mới

  • Thư viện mới này cho phép truy vấn dữ liệu Đường dẫn thông qua API PathIterator mới. Khi sử dụng API này, phương thức gọi có thể lặp lại tất cả các phân đoạn của đối tượng Đường dẫn để xác định hoạt động và dữ liệu cho các phân đoạn đó.
  • Thư viện này sử dụng các API tương tự được giới thiệu trong bản dùng thử Android 14, nhưng phiên bản API AndroidX này cũng hoạt động trên các phiên bản trở về API 21.

Graphics Core Phiên bản 1.0

Phiên bản 1.0.0

Ngày 29 tháng 5 năm 2024

Phát hành androidx.graphics:graphics-core:1.0.0. Phiên bản 1.0.0 bao gồm các thay đổi sau.

Các tính năng chính của phiên bản 1.0.0

  • Bản phát hành ổn định chính thức của thư viện Graphic-core. Bao gồm các bản sửa lỗi nhỏ và cải thiện hiệu suất từ phiên bản 1.0.0-rc01

Phiên bản 1.0.0-rc01

Ngày 17 tháng 4 năm 2024

Phát hành androidx.graphics:graphics-core:1.0.0-rc01. Phiên bản này được phát triển trong một nhánh nội bộ.

Sửa lỗi

  • Khắc phục vấn đề có thể đóng hai lần chỉ số mô tả tệp với CanvasBufferedRendererAPI trên một số thiết bị Android chạy Android 14.
  • Khắc phục vấn đề FrameBuffer không xoá đúng cách các thực thể vùng đệm khung.

Phiên bản 1.0.0-beta01

Ngày 13 tháng 12 năm 2023

Phát hành androidx.graphics:graphics-core:1.0.0-beta01. Phiên bản 1.0.0-beta01 bao gồm các thay đổi sau.

Tính năng mới

  • Ra mắt một API LowLatencyCanvasView mới để hỗ trợ tính năng kết xuất có độ trễ thấp với các API đồ hoạ 2d của Android (Canvas Paint) trong Hệ phân cấp khung hiển thị.
  • Ra mắt API CanvasBufferedRenderer để hỗ trợ kết xuất Canvas được tăng tốc phần cứng cho HardwareBuffer. Bạn có thể dùng tính năng này để vẽ một phần giao diện người dùng vào vùng đệm có thể chuyển đổi thành Bitmap bằng API Bitmap.wrapHardwareBuffer.

Thay đổi về API

  • Cập nhật API CanvasBufferRenderer#releaseBuffer để có tham số hàng rào không bắt buộc. Cập nhật tài liệu để mô tả thời điểm trả về RenderResult#fence. (If1ea7)
  • Thêm phương thức draw vào RenderRequest để hỗ trợ tận dụng coroutine nhằm lên lịch cho các yêu cầu vẽ. Đổi tên phương thức vẽ trước đó sử dụng trình thực thi thành drawAsync. Tái cấu trúc phương thức isClosed() thành một thuộc tính. (I5bff6)
  • Hiện tham số định dạng vùng đệm với CanvasFrontBufferRenderer để ánh xạ trực tiếp đến CanvasBufferedRenderer.Builder#setBufferFormat (I0f272)
  • Tạo API CanvasBufferedRenderer để xử lý quá trình kết xuất canvas được tăng tốc phần cứng vào HardwareBuffer. Điều này cung cấp phương thức triển khai được điều chỉnh cho phiên bản cũ cho Android Q cùng với cấu hình độ sâu của chuỗi hoán đổi là HardwareBuffers. Cấu hình ColorSpace vẫn bị giới hạn ở Android U trở lên. Tuy nhiên, việc triển khai khả năng tương thích cung cấp hành vi không hoạt động trên ứng dụng của nhà phát triển thay mặt cho bạn. (I9b1d8)
  • Thêm các API setFrameRate/clearFrameRate vào SurfaceControlCompat.Transaction để kiểm soát tốc độ khung hình cùng với chiến lược thay đổi nhằm chuyển đổi liền mạch hoặc chuyển đổi mặc định. (I6045c)
  • Giảm cấp độ API bắt buộc của setDataSpace xuống Android Q từ Android T. (I59c34)
  • Thêm lệnh gọi lại onBufferReleased vào API GLFrameBufferRenderer để mang lại cho người tiêu dùng cơ hội dọn dẹp trạng thái khi một vùng đệm không còn hiện diện (I8a4e2)
  • Tạo LowLatencyCanvasView để hỗ trợ một trường hợp sử dụng đơn giản là kết xuất nội dung với độ trễ thấp được đồng bộ hoá với tính năng hiển thị Hệ phân cấp khung hiển thị. Điều này giúp giảm thiểu sự phức tạp liên quan đến việc quản lý SurfaceView bằng cách quản lý nội bộ thực thể SurfaceView được dịch tắt/trên màn hình để kết xuất đồng bộ hoá và kết xuất có độ trễ thấp tương ứng. (I9253b)
  • Thêm tính năng hỗ trợ cấu hình hệ màu vào API CanvasFrontBufferedRenderer. Cập nhật các lệnh gọi lại nhiều vùng đệm để bao gồm cả SurfaceControl được lưu vào vùng đệm sau (I24bd9)

Phiên bản 1.0.0-alpha05

Ngày 6 tháng 9 năm 2023

Phát hành androidx.graphics:graphics-core:1.0.0-alpha05. Phiên bản 1.0.0-alpha05 bao gồm các thay đổi sau.

Tính năng mới

  • Ra mắt API GLFrameBufferRenderer. Giải pháp này kết hợp các phần phụ thuộc OpenGL, cấu hình chuỗi hoán đổi, định dạng pixel và cấu hình SurfaceControl. (Ic775b)

Thay đổi về API

  • Thêm thông số chiều rộng chiều cao vào nhiều API callback vào kích thước đường ống từ SurfaceHolder#Callbacks. (I7f9fc)
  • Thêm API rõ ràng để xoá cả lớp phía trước và nhiều lớp đệm. (Ic1f95)
  • Thêm tính năng hỗ trợ để định cấu hình loại vùng đệm cơ bản của chuỗi hoán đổi được dùng trong GLFrontBufferedRenderer. (I07a13)
  • Thêm các thuộc tính kotlin cho các phương thức getter trên GLFrameBufferRenderer, chú thích IntRange cho các mục vùng đệm tối đa cũng như chú thích HardwareBufferFormartHardwareBufferUsage cho setFormat/setUsage tương ứng. (Ief89e)
  • Cập nhật API setBuffer trên các giao dịch SurfaceControl để cung cấp hàng rào phát hành. (Ice1bb)
  • Thêm các API SurfaceControlCompat.Transaction để định cấu hình không gian dữ liệu cũng như thiết lập phạm vi độ sáng mở rộng. (Ic378d)

Phiên bản 1.0.0-alpha04

Ngày 7 tháng 6 năm 2023

Phát hành androidx.graphics:graphics-core:1.0.0-alpha04. Phiên bản 1.0.0-alpha04 bao gồm các thay đổi sau.

Tính năng mới

  • Ra mắt CanvasFrontBufferedRenderer để hỗ trợ đồ hoạ có độ trễ thấp tận dụng API android.graphics.Canvas cùng với cách triển khai OpenGL hiện có

Thay đổi về API

  • Cập nhật API SurfaceControlCompat.Transaction#setBuffer để cho phép các thực thể HardwareBuffer rỗng nhằm phản chiếu API nền tảng tương ứng (I173d7)
  • Thay vào đó, hãy đổi tên các phương thức tham chiếu đến quá trình kết xuất Vùng đệm kép thành Nhiều vùng đệm vì chuỗi hoán đổi sao lưu có thể chứa nhiều vùng đệm. (I830d7)
  • Tạo API CanvasFrontBufferedRenderer để bật 3ps để tận dụng hệ thống kết xuất được lưu vào vùng đệm trước bằng cách sử dụng Canvas API. (Ibfc29)

Sửa lỗi

  • Khắc phục vấn đề GLFrontBufferedRenderer không kết xuất nội dung sau khi tiếp tục Activity tương ứng.
  • Khắc phục vấn đề nội dung vùng đệm phía trước bị xoá sớm.
  • Khắc phục vấn đề SurfaceHolder.Callbacks không bị xoá sau khi các API đồ hoạ có độ trễ thấp được phát hành.

Phiên bản 1.0.0-alpha03

Ngày 22 tháng 3 năm 2023

Phát hành androidx.graphics:graphics-core:1.0.0-alpha03. Phiên bản 1.0.0-alpha03 bao gồm các thay đổi sau.

Thay đổi về API

  • Cập nhật phương thức triển khai lệnh gọi lại GLFrontBufferedRenderer để cung cấp đối tượng BufferInfo chứa chiều rộng/chiều cao của vùng đệm cùng với giá trị nhận dạng vùng đệm khung có thể dùng để nhắm mục tiêu lại đích đến ban đầu sau khi kết xuất vào vùng đệm cào trung gian. (I7fe20)
  • Hợp nhất việc tạo SyncFence thành phương thức nhà máy tĩnh trên SyncFenceCompat.
  • Xoá phương thức tương thích công khai đối với eglDupNativeFenceFDANDROID, thay vào đó là phương thức nhà máy SyncFenceCompat để tạo SyncFence. Việc này nhằm đảm bảo tất cả nền tảng API đều nhận được phương thức triển khai SyncFence chính xác bất kể cấp độ API. (I849bb)
  • Thêm tài liệu về FrameBufferRendererSyncStrategy.
    • Đã di chuyển FrameBufferRenderer FrameBuffer FrameBufferPool sang gói androidx.graphics.opengl
    • Đã di chuyển SyncStrategy sang gói androidx.graphics.opengl
    • Đã cập nhật RenderCallback#onDraw tài liệu
    • Cập nhật tài liệu về RenderCallback#obtainFrameBuffer trong đó trình triển khai API chịu trách nhiệm gọi FrameBuffer.close
    • Cập nhật onDrawComplete để cho biết người tiêu dùng chịu trách nhiệm gửi nội dung đi để hiển thị
    • Di chuyển các giao diện/lớp có khả năng tương thích của SyncFence sang gói androidx.hardware để phản ánh khung
    • Đổi tên API SyncFence thành SyncFenceV19 và đặt ở chế độ riêng tư để hợp nhất các trường hợp sử dụng thành SyncFenceCompat. Việc này sẽ tận dụng API SyncFence của khung bất cứ khi nào có thể. (I5149c)
  • Thêm các phương thức GLFrontBufferedRenderer#cancelGLFrontBufferedRenderer#execute. Cấu hình trước rất hữu ích trong các trường hợp chống tì tay, trong đó việc kết xuất vào vùng đệm trước sẽ bị huỷ và ẩn vùng đệm trước. Tính năng sau rất hữu ích trong các trường hợp thao tác với các đối tượng trên luồng GL mà không cần phải lên lịch kết xuất. (If0b7f)
  • Thêm API để kết xuất trực tiếp vào lớp đệm kép. Điều này hỗ trợ việc kết xuất lại một cảnh sau khi tiếp tục, cũng như tạo cơ hội để người tiêu dùng có thể lựa chọn thời điểm nên tận dụng tính năng kết xuất vùng đệm phía trước một cách linh hoạt dựa trên cảnh mong muốn để kết xuất. (Ied56c)
  • Thêm API mới vào SurfaceControlCompat.Builder để hỗ trợ việc định cấu hình SurfaceControl mẹ từ một thực thể SurfaceControl khác ngoài cơ chế hiện có từ SurfaceView. (I1d1b6)
  • Thêm tính chất rỗng của kiểu dữ liệu trả về của các hàm ẩn không dùng nữa (Ibf7b0)
  • Thêm hằng số mở rộng EGL_ANDROID_get_native_client_buffer để truy vấn xem thiết bị Android có hỗ trợ nhập các thực thể HardwareBuffer vào các đối tượng EGLClientBuffer có thể dùng làm thực thể EGLImage hay không. (Iad767)
  • Thêm chú thích @JvmDefaultWithCompatibility (I8f206)

Phiên bản 1.0.0-alpha02

Ngày 9 tháng 11 năm 2022

Phát hành androidx.graphics:graphics-core:1.0.0-alpha02. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.

Thay đổi về API

  • Khắc phục lỗi thiếu chú thích RequiresApi cho addTransactionCommitListener đã đưa vào Android S (I0a035)
  • Cập nhật lệnh gọi lại vùng đệm onDraw<Front/Double> để cung cấp ma trận biến đổi nơi người tiêu dùng có thể chuyển đến chương trình đổ bóng đỉnh chóp (vertex shader) bên cạnh chiều rộng/chiều cao hiện tại của vùng đệm. Người tiêu dùng chịu trách nhiệm sử dụng các tham số này để xoay trước đúng cách mã kết xuất OpenGL. (I82f9e)

Sửa lỗi

  • Cải thiện độ trễ đồ hoạ bằng cách xoay trước vùng đệm trước khi thực hiện giao dịch SurfaceControl.
  • Khắc phục sự cố trong đó nhật ký lỗi cho thấy lỗi 300d (EGL_BAD_SURFACE).
  • Khắc phục vấn đề GLFrontBufferedRenderer không hợp lệ sau khi Hoạt động tương ứng mà mã này sử dụng tiếp tục hoạt động.
  • Tăng cường hỗ trợ cho trình mô phỏng và thiết bị Chrome OS.
  • Khắc phục vấn đề trong đó lớp đệm phía trước có thể bị ẩn sớm.

Phiên bản 1.0.0-alpha01

Ngày 24 tháng 10 năm 2022

Phát hành androidx.graphics:graphics-core:1.0.0-alpha01. Phiên bản 1.0.0-alpha01 bao gồm các thay đổi sau.

Tính năng mới

  • Bản phát hành đầu tiên của thư viện đồ hoạ cốt lõi AndroidX. Bản phát hành gồm API hỗ trợ các trường hợp sử dụng có độ trễ thấp như nhập liệu bằng bút cảm ứng. Việc này cũng ra mắt API trợ giúp để sử dụng trong OpenGL.

Thay đổi về API

  • Giới thiệu GLFrontBufferedRenderer để hỗ trợ kết xuất trước và nhiều vùng đệm nhằm đạt được cả độ trễ thấp lẫn đầu ra kết xuất chất lượng cao.
  • Giới thiệu API GLRenderer để hỗ trợ tính năng kết xuất hình ảnh OpenGL cho những trình cung cấp nền tảng như SurfaceView, TextureView và các trình cung cấp khác.