گرافیک

از امکانات گرافیکی در چندین نسخه پلتفرم اندروید استفاده کنید

این جدول تمام مصنوعات موجود در گروه androidx.graphics را فهرست می کند.

مصنوع انتشار پایدار کاندید را آزاد کنید نسخه بتا انتشار آلفا
هسته گرافیکی 1.0.1 - - -
مسیر گرافیکی 1.0.1 - - -
گرافیک-اشکال 1.0.1 - - -
آخرین به روز رسانی این کتابخانه در: 4 سپتامبر 2024

اعلام وابستگی ها

برای افزودن وابستگی به گرافیک، باید مخزن Google Maven را به پروژه خود اضافه کنید. برای اطلاعات بیشتر ، مخزن Maven Google را بخوانید.

وابستگی‌های مصنوعات مورد نیاز خود را در فایل build.gradle برای برنامه یا ماژول خود اضافه کنید:

شیار

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

کاتلین

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

برای اطلاعات بیشتر درباره وابستگی‌ها، به افزودن وابستگی‌های ساخت نگاه کنید.

بازخورد

بازخورد شما به بهتر شدن Jetpack کمک می کند. اگر مسائل جدیدی کشف کردید یا ایده هایی برای بهبود این کتابخانه دارید، به ما اطلاع دهید. لطفاً قبل از ایجاد کتابخانه جدید، به مسائل موجود در این کتابخانه نگاهی بیندازید. با کلیک کردن روی دکمه ستاره می توانید رای خود را به یک موضوع موجود اضافه کنید.

یک شماره جدید ایجاد کنید

برای اطلاعات بیشتر به مستندات ردیاب مشکل مراجعه کنید.

هیچ یادداشت انتشار برای این مصنوع وجود ندارد.

اشکال گرافیکی نسخه 1.0

نسخه 1.0.0

21 آگوست 2024

androidx.graphics:graphics-shapes:1.0.0 ، androidx.graphics:graphics-shapes-android:1.0.0 و androidx.graphics:graphics-shapes-desktop:1.0.0 منتشر شدند. نسخه 1.0.0 حاوی این تعهدات است.

نسخه 1.0.0-rc01

24 جولای 2024

androidx.graphics:graphics-shapes:1.0.0-rc01 ، androidx.graphics:graphics-shapes-android:1.0.0-rc01 و androidx.graphics:graphics-shapes-desktop:1.0.0-rc01 منتشر شدند. نسخه 1.0.0-rc01 حاوی این commit ها است.

نسخه 1.0.0-beta01

1 مه 2024

androidx.graphics:graphics-shapes:1.0.0-beta01 ، androidx.graphics:graphics-shapes-android:1.0.0-beta01 و androidx.graphics:graphics-shapes-desktop:1.0.0-beta01 منتشر شدند. نسخه 1.0.0-beta01 حاوی این تعهدات است.

تغییرات API

  • اجازه دهید شکل ها از قبل چرخانده شوند تا از نقطه دیگری شروع شوند. این تغییر به اشکال pillStar اجازه می‌دهد تا منحنی‌های خود را از یک نقطه غیر پیش‌فرض در محیط شروع کنند. این می تواند هنگام متحرک سازی حرکت مسیر شکل، برای شروع طراحی از یک مکان خاص روی طرح کلی شکل مفید باشد. ( Ifbb4d , b/324303807 )
  • توابع calculateBounds() را به Morph اضافه کرد که با همان توابع در RoundedPolygon موازی می شود. ( I8a3b6 , b/325463575 )

نسخه 1.0.0-alpha05

7 فوریه 2024

androidx.graphics:graphics-shapes:1.0.0-alpha05 ، androidx.graphics:graphics-shapes-android:1.0.0-alpha05 و androidx.graphics:graphics-shapes-desktop:1.0.0-alpha05 منتشر شدند. نسخه 1.0.0-alpha05 حاوی این commit ها است.

ویژگی های جدید

  • این کتابخانه اکنون توابع جدید pill() و pillStar() را برای ایجاد آسان این اشکال گرد/ستاره ارائه می دهد. همچنین API های جدیدی برای محاسبه مرزهای دقیق مورد نیاز برای یک شکل وجود دارد (کروان های قبلی فقط یک تخمین بر اساس لنگر منحنی Bezier و نقاط کنترل زیرین بودند)، و همچنین حداکثر کران ممکن، که می تواند برای تعیین اندازه مفید باشد. ظرفی که آن را نگه می‌دارد اگر درون آن ظرف بچرخد. ( I71827 )

تغییرات API

  • اکنون گزینه های بیشتری برای بازیابی کران های دقیق و حداکثر. ( I6d49f , b/317286450 )

رفع اشکال

  • به دلیل مشکل رندر سطح پایین مربوط به منحنی‌های طول صفر، گاه‌به‌گاه مصنوعات رندری در هنگام ترسیم این اشکال به‌عنوان مسیرهای ضربه‌خورده وجود داشت. این اشکال با حذف تمام منحنی‌های طول صفر (که اشکال به آن‌ها نیازی ندارند، و در نتیجه در سربار مسیرهای تولید شده توسط اشکال نیز صرفه‌جویی می‌شود) برطرف شد.

نسخه 1.0.0-alpha04

13 دسامبر 2023

androidx.graphics:graphics-shapes:1.0.0-alpha04 ، androidx.graphics:graphics-shapes-android:1.0.0-alpha04 و androidx.graphics:graphics-shapes-desktop:1.0.0-alpha04 منتشر شدند. نسخه 1.0.0-alpha04 حاوی این commit ها است.

ویژگی های جدید

  • این نسخه شامل چندین تغییر API و همچنین رفع اشکال است.
  • بسیاری از تغییرات API کتابخانه Shapes را KMP پسند می کند. این کار تماس از طریق کدهای غیر اندرویدی (مانند کد نویسندگی ناشناس Android) را آسان‌تر می‌کند. به عنوان مثال، هیچ نوع اندرویدی در API وجود ندارد، مانند انواع PointF، Matrix و Path قبلی.
  • همچنین تغییرات متعددی در APIها و پیاده‌سازی به دلایل عملکرد، به‌ویژه برای به حداقل رساندن تخصیص (و جمع‌آوری) اشیاء ایجاد شد. به عنوان مثال، حرکت از PointF به جدا کردن پارامترهای Float از تخصیص بسیاری از ساختارهای PointF موقت برای نگهداری آن رئوس جلوگیری می کند.

تغییرات API

  • Morph.asMutableCubics را با تابعی برای تکرار روی MutableCubics جایگزین کرد. رابط عملکردی PointTransformer تغییر کرد، اکنون مختصات x و y یک Point را می گیرد و یک TransformedResult (که با مختصات x و y تبدیل شده ساخته شده است) را برمی گرداند ( I6719e )
  • سازنده Cubic عمومی را حذف کرد و آن را به یک عملکرد کارخانه تبدیل کرد. ( I409ce )
  • افزودن APIهای تبدیل و ترسیم مخصوص اندروید ( I079f6 ، b/292289543 )
  • حذف وابستگی های اندروید ( Iadc1c , b/292289543 )
  • نام های لنگر و کنترل اکنون معقول تر است ( If13bd , b/294562941 )
  • پارامترهای PointF به جفت‌های Float تغییر کردند ( Id4705 , b/276466399 , b/290254314 )
  • اکنون progress به طور مستقیم به دستورات ترسیم Morph منتقل می شود ( Icdca2 )

رفع اشکال

  • رفع اشکال هنگام ایجاد اشکال بزرگ. ( I4fd66 , b/313497325 )

نسخه 1.0.0-alpha03

7 ژوئن 2023

androidx.graphics:graphics-shapes:1.0.0-alpha03 منتشر شد. نسخه 1.0.0-alpha03 حاوی این commit ها است.

تغییرات API

  • تابع جدید RoundedPolygon.rectangle() اضافه شد ( I78e7e , b/280322189 )
  • توابع ستاره و دایره اکنون از حروف بزرگ خارج شده و از طریق شیء همراه RoundedPolygon فراخوانی می شوند: به عنوان مثال، RoundedPolygon.star(...) ( I14735 )

رفع اشکال

  • رفع اشکال در صاف کردن ( Ibf894 )
  • رفع اشکالی که هنگام یکسان بودن شکل شروع و پایان رخ می داد. بهتر است فضای موجود را در کناره ها برای برش ها توزیع کنید، ابتدا از فضای موجود برای گرد کردن، سپس برای صاف کردن اگر فضای باقی مانده است استفاده کنید. ( Ibd320 , b/277936300 )

نسخه 1.0.0-alpha02

19 آوریل 2023

androidx.graphics:graphics-shapes:1.0.0-alpha02 منتشر شد. نسخه 1.0.0-alpha02 حاوی این commit ها است.

تغییرات API

  • سوپرکلاس Polygon با زیر کلاس خود RoundedPolygon ادغام شد. همه چند ضلعی ها اکنون [اختیاری] چند ضلعی گرد هستند.
  • تابع ستاره (که همچنان مانند قبل یک RoundedPolygon را برمی گرداند) اکنون به جای پارامتر innerRadiusRatio قبلی، یک مقدار innerRadius می گیرد. این در همان واحدهای پارامتر شعاع موجود است و کارها را ساده‌تر و سازگارتر می‌کند. همچنین، پارامتر numOuterVertices به numVerticesPerRadius تغییر نام داد تا مشخص شود که همان عدد برای هر دو شعاع داخلی و خارجی اعمال می شود.
  • CornerRounding.radius قبلاً نسبت به اندازه چند ضلعی مستند شده بود، اما یک مقدار مطلق بود (و باید باشد) نه نسبی. اسناد به‌روزرسانی شدند و حاشیه‌نویسی که آن را به حداکثر مقدار 1.0 محدود می‌کرد، ثابت شد.

نسخه 1.0.0-alpha01

5 آوریل 2023

Graphics-Shapes یک کتابخانه جدید است که امکان ایجاد و ارائه آسان اشکال چند ضلعی گرد و همچنین شکل‌گیری (انیمیشن) ساده و خودکار بین اشکال مختلف را فراهم می‌کند.

androidx.graphics:graphics-shapes:1.0.0-alpha01 منتشر شد. این نسخه از یک شعبه داخلی منتشر شد.

ویژگی های جدید

  • از Polygon API برای ایجاد چند ضلعی های منظم و ستاره ای با تعداد رئوس دلخواه استفاده کنید.
  • از پارامترهای اختیاری CornerRounding برای تعیین شعاع گرد و پارامترهای صاف کردن گوشه ها استفاده کنید که در نتیجه اشکال چند ضلعی با گوشه های گرد ایجاد می شود.
  • از Morph(Polygon, Polygon) API جدید برای محاسبه خودکار یک شکل "morph" استفاده کنید که پیشرفت آن می تواند از 0 تا 1 تنظیم شود تا بین شکل های شروع و پایان متحرک شود. این پیشرفت را در طول زمان متحرک کنید و نتیجه را روی هر فریم بکشید تا یک انیمیشن صاف بین این اشکال گرد جدید ایجاد کنید.

مسیر گرافیکی نسخه 1.0

نسخه 1.0.1

1 مه 2024

androidx.graphics:graphics-path:1.0.1 منتشر شد. نسخه 1.0.1 شامل این commit ها است.

رفع اشکال

  • بهبود پرچم های کامپایلر.

نسخه 1.0.0

6 مارس 2024

androidx.graphics:graphics-path:1.0.0 منتشر شد.

نسخه 1.0.0-rc01

21 فوریه 2024

androidx.graphics:graphics-path:1.0.0-rc01 منتشر شد. نسخه 1.0.0-rc01 حاوی این commit ها است.

رفع اشکال

  • بهبود عملکرد PathIterator در API <34 ( Id4629 )

نسخه 1.0.0-beta02

10 ژانویه 2024

تغییرات در این نسخه همه در مورد کاهش اندازه کتابخانه بود که به دلیل مفروضات ایجاد شده توسط کد بومی، بزرگتر از حد لازم بود.

androidx.graphics:graphics-path:1.0.0-beta02 منتشر شد. نسخه 1.0.0-beta02 حاوی این تعهدات است.

رفع اشکال

  • اندازه libandroidx.graphics.path.so 96٪ کاهش یافت. ( I71397 )
  • اندازه libandroidx.graphics.path.so را 5 درصد کاهش دهید. ( I2da7c )
  • اجزای اصلی androidx.graphics:graphics-path را تا 43% کوچک کرد. ( I8e40d )

نسخه 1.0.0-beta01

29 نوامبر 2023

androidx.graphics:graphics-path:1.0.0-beta01 منتشر شد. نسخه 1.0.0-beta01 حاوی این تعهدات است.

تغییرات API

  • کاربردهای حذف شده آزمایشی isAtLeastU() API ( Ie9117 , b/289269026 )

رفع اشکال

  • اصلاحات مختلف و بهبود عملکرد، از جمله نحوه برخورد کتابخانه با مخروط ها.

نسخه 1.0.0-alpha02

7 ژوئن 2023

androidx.graphics:graphics-path:1.0.0-alpha02 منتشر شد. این نسخه در یک شعبه داخلی توسعه یافته است.

ویژگی های جدید

  • رفع مشکل بررسی نسخه داخلی پلتفرم که باعث ایجاد مشکل در اجرای پیش‌نمایش‌های اندروید 14 می‌شد (بررسی نسخه ناموفق بود، اما مکانیسم انجام کارها در نسخه‌های قبلی به‌ویژه در اندروید 14 به درستی کار نمی‌کند).

نسخه 1.0.0-alpha01

22 مارس 2023

androidx.graphics:graphics-path:1.0.0-alpha01 منتشر شد. نسخه 1.0.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • این کتابخانه جدید امکان پرس و جو از داده های Path را از طریق PathIterator API جدید فراهم می کند. با استفاده از این API، تماس‌گیرندگان می‌توانند از طریق تمام بخش‌های یک شی Path، عملیات و داده‌های آن بخش‌ها را تعیین کنند.
  • این کتابخانه از APIهای مشابه معرفی شده در پیش‌نمایش Android 14 استفاده می‌کند، اما این نسخه AndroidX از API روی نسخه‌های بازگشت به API 21 نیز کار می‌کند.

هسته گرافیکی نسخه 1.0

نسخه 1.0.1

4 سپتامبر 2024

androidx.graphics:graphics-core:1.0.1 منتشر شد. نسخه 1.0.1 شامل این commit ها است.

رفع اشکال

  • مشکلی که در آن منابع حافظه گهگاهی آزاد نمی شدند برطرف شد.

نسخه 1.0.0

29 مه 2024

androidx.graphics:graphics-core:1.0.0 منتشر شد. نسخه 1.0.0 حاوی این تعهدات است.

ویژگی های اصلی 1.0.0

  • انتشار رسمی و پایدار کتابخانه هسته گرافیکی. شامل رفع اشکال جزئی و بهبود عملکرد از 1.0.0-rc01

نسخه 1.0.0-rc01

17 آوریل 2024

androidx.graphics:graphics-core:1.0.0-rc01 منتشر شد. این نسخه در یک شعبه داخلی توسعه یافته است.

رفع اشکال

  • رفع مشکلی که منجر به بسته شدن مضاعف توصیفگرهای فایل با CanvasBufferedRendererAPI با دستگاه‌های اندرویدی خاص دارای Android 14 می‌شود.
  • مشکلی که در آن FrameBuffer به درستی نمونه های فریم بافر را حذف نمی کرد، برطرف شد.

نسخه 1.0.0-beta01

13 دسامبر 2023

androidx.graphics:graphics-core:1.0.0-beta01 منتشر شد. نسخه 1.0.0-beta01 حاوی این تعهدات است.

ویژگی های جدید

  • یک API LowLatencyCanvasView جدید برای پشتیبانی از رندرینگ با تأخیر کم با APIهای گرافیکی ۲ بعدی اندروید (Canvas + Paint) در سلسله مراتب View معرفی کرد.
  • CanvasBufferedRenderer API را برای پشتیبانی از ارائه سریع بوم سخت افزاری به HardwareBuffer معرفی کرد. این می تواند برای ترسیم بخشی از یک رابط کاربری به یک بافر استفاده شود که می تواند با استفاده از Bitmap.wrapHardwareBuffer API به Bitmap تبدیل شود.

تغییرات API

  • CanvasBufferRenderer#releaseBuffer API به‌روزرسانی شد تا یک پارامتر حصار اختیاری داشته باشد. اسناد به روز شده برای توصیف زمان بازگشت RenderResult#fence . ( If1ea7 )
  • روش draw به RenderRequest اضافه کنید تا از اهرم‌های مشترک برای زمان‌بندی درخواست‌های قرعه‌کشی پشتیبانی کنید. روش ترسیم قبلی که یک اجرا کننده را مصرف می کرد به drawAsync تغییر نام داد. متد isClosed() را به یک ویژگی تغییر داد. ( I5bff6 )
  • پارامتر فرمت بافر در معرض نمایش CanvasFrontBufferRenderer برای نگاشت مستقیم به CanvasBufferedRenderer.Builder#setBufferFormat ( I0f272 )
  • CanvasBufferedRenderer API را برای مدیریت رندر بوم تسریع شده سخت افزاری در HardwareBuffer ایجاد کرد. این یک پیاده‌سازی پشتیبان‌شده برای Android Q را در کنار پیکربندی یک عمق swapchain از HardwareBuffers ارائه می‌کند. پیکربندی ColorSpace هنوز به Android U+ محدود است، اما پیاده سازی compat رفتار بدون عملیات را از طرف توسعه دهندگان ارائه می دهد. ( I9b1d8 )
  • APIهای setFrameRate / clearFrameRate را به SurfaceControlCompat.Transaction اضافه کنید تا نرخ فریم را در کنار استراتژی تغییر برای انتقال بدون درز یا پیش فرض کنترل کنید. ( I6045c )
  • سطح API مورد نیاز برای setDataSpace به Android Q از Android T کاهش یافت. ( I59c34 )
  • پاسخ به تماس onBufferReleased به GLFrameBufferRenderer API اضافه شد تا به مصرف کنندگان این فرصت را بدهد تا زمانی که بافر دیگر ارائه نمی شود، وضعیت را پاک کنند ( I8a4e2 )
  • LowLatencyCanvasView را برای پشتیبانی از یک مورد استفاده ساده از رندر محتوا با تأخیر کم که با نمایش سلسله مراتبی همگام می شود، ایجاد کنید. این امر پیچیدگی‌های مرتبط با مدیریت SurfaceView را با مدیریت داخلی نمونه SurfaceView کاهش می‌دهد که به ترتیب برای رندرهای همگام و با تأخیر کم، خاموش/روشن صفحه ترجمه می‌شود. ( I9253b )
  • پشتیبانی از پیکربندی colorspace به CanvasFrontBufferedRenderer API اضافه شد. تماس‌های چند بافری به‌روزرسانی شد تا SurfaceControl بافر پشتی ( I24bd9 ) را نیز شامل شود.

نسخه 1.0.0-alpha05

6 سپتامبر 2023

androidx.graphics:graphics-core:1.0.0-alpha05 منتشر شد. نسخه 1.0.0-alpha05 حاوی این commit ها است.

ویژگی های جدید

  • GLFrameBufferRenderer API را معرفی کرد. این ترکیبی از وابستگی های OpenGL، پیکربندی زنجیره تعویض، فرمت های پیکسل و پیکربندی SurfaceControl را فراهم می کند. ( IC775b )

تغییرات API

  • پارامترهای عرض + ارتفاع به APIهای پاسخگوی تماس مختلف به ابعاد لوله از SurfaceHolder#Callbacks اضافه شده است. ( I7f9fc )
  • API شفاف برای پاک کردن لایه های جلویی و چند بافری اضافه شده است. ( IC1f95 )
  • پشتیبانی برای پیکربندی نوع بافر زیربنایی swapchains مورد استفاده در GLFrontBufferedRenderer اضافه شده است. ( I07a13 )
  • ویژگی‌های kotlin برای دریافت‌کننده‌ها در GLFrameBufferRenderer ، حاشیه‌نویسی IntRange برای حداکثر ورودی‌های بافر، و حاشیه‌نویسی HardwareBufferFormart و HardwareBufferUsage به ترتیب برای setFormat / setUsage اضافه شد. ( Ief89e )
  • API setBuffer را در تراکنش‌های SurfaceControl به‌روزرسانی کرد تا یک حصار آزاد را ارائه کند. ( Ice1bb )
  • APIهای SurfaceControlCompat.Transaction برای پیکربندی فضای داده و همچنین تنظیم محدوده روشنایی گسترده اضافه شده است. ( IC378d )

نسخه 1.0.0-alpha04

7 ژوئن 2023

androidx.graphics:graphics-core:1.0.0-alpha04 منتشر شد. نسخه 1.0.0-alpha04 حاوی این commit ها است.

ویژگی های جدید

  • CanvasFrontBufferedRenderer را برای پشتیبانی از گرافیک‌های با تأخیر کم با استفاده از API android.graphics.Canvas در کنار پیاده‌سازی OpenGL موجود معرفی کرد.

تغییرات API

  • SurfaceControlCompat.Transaction#setBuffer API به‌روزرسانی شد تا به نمونه‌های HardwareBuffer nullable اجازه دهد تا API پلتفرم مربوطه را منعکس کنند ( I173d7 )
  • تغییر نام روش‌هایی که به رندر Double Buffered به Multi Buffered اشاره می‌کنند، زیرا زنجیره مبادله پشتیبان ممکن است بیش از 2 بافر داشته باشد. ( I830d7 )
  • CanvasFrontBufferedRenderer API را ایجاد کنید تا 3ps را فعال کنید تا با استفاده از Canvas API از یک سیستم رندر بافر جلویی استفاده کنید. ( IBfc29 )

رفع اشکال

  • مشکلی که در آن GLFrontBufferedRenderer محتوا را پس از ازسرگیری فعالیت مربوطه ارائه نمی‌کرد، برطرف شد.
  • مشکل پاکسازی پیش از موعد محتوای بافر جلویی برطرف شد.
  • رفع مشکل عدم حذف SurfaceHolder.Callbacks پس از انتشار APIهای گرافیکی با تأخیر کم.

نسخه 1.0.0-alpha03

22 مارس 2023

androidx.graphics:graphics-core:1.0.0-alpha03 منتشر شد. نسخه 1.0.0-alpha03 حاوی این commit ها است.

تغییرات API

  • اجرای فراخوانی GLFrontBufferedRenderer را به‌روزرسانی کرد تا شی BufferInfo حاوی عرض/ارتفاع بافر به همراه شناسه بافر فریم را ارائه دهد که می‌تواند برای هدف‌گیری مجدد مقصد اصلی پس از ارائه به یک بافر خراش میانی استفاده شود. ( I7fe20 )
  • ایجاد SyncFence تلفیقی به روش کارخانه ایستا در SyncFenceCompat .
  • روش سازگاری عمومی برای eglDupNativeFenceFDANDROID به نفع روش کارخانه SyncFenceCompat برای ایجاد SyncFence حذف شد. این برای اطمینان از اینکه تمام سطوح API بدون در نظر گرفتن سطح API، اجرای صحیح SyncFence را دریافت می کنند. ( I849bb )
  • اسناد اضافه شده برای FrameBufferRenderer و SyncStrategy .
    • FrameBufferRenderer + FrameBuffer + FrameBufferPool به بسته androidx.graphics.opengl منتقل شد
    • SyncStrategy به بسته androidx.graphics.opengl منتقل شد
    • RenderCallback#onDraw اسناد به‌روزرسانی شد
    • اسناد به‌روزرسانی شده RenderCallback#obtainFrameBuffer که پیاده‌کننده API مسئول فراخوانی FrameBuffer.close است.
    • onDrawComplete به روز شد تا نشان دهد مصرف کنندگان مسئول ارسال محتویات برای نمایش هستند
    • رابط‌ها/کلاس‌های سازگاری SyncFence به بسته androidx.hardware منتقل شد تا چارچوب را منعکس کند.
    • SyncFence API به SyncFenceV19 تغییر نام داد و خصوصی شد تا کاربردها را در SyncFenceCompat ادغام کند که در هر کجا که ممکن است از SyncFence API چارچوب استفاده می کند. ( I5149c )
  • متدهای GLFrontBufferedRenderer#cancel و GLFrontBufferedRenderer#execute اضافه شد. اولی در سناریوهای رد کف دست مفید است که در آن رندر به بافر جلویی باید لغو شود و بافر جلویی پنهان شود. دومی در سناریوها برای دستکاری اشیاء روی رشته GL بدون نیاز به برنامه ریزی رندر مفید است. ( If0b7f )
  • API را برای رندر مستقیم به لایه دو بافر اضافه کنید. این به رندر مجدد یک صحنه پس از رزومه کمک می کند و همچنین به مصرف کنندگان فرصتی می دهد تا به طور انتخابی تعیین کنند که چه زمانی از رندر بافر جلو به صورت پویا بر اساس صحنه مورد نظر برای رندر استفاده کنند. ( Ied56c )
  • API جدیدی به SurfaceControlCompat.Builder اضافه شد تا از پیکربندی SurfaceControl والد از یک نمونه دیگر SurfaceControl علاوه بر مکانیسم موجود از SurfaceView پشتیبانی کند. ( I1d1b6 )
  • تهی پذیری بیشتر نوع بازگشت توابع منسوخ-مخفی ( Ibf7b0 )
  • ثابت پسوند EGL_ANDROID_get_native_client_buffer اضافه شد تا بپرسید آیا دستگاه Android از وارد کردن نمونه‌های HardwareBuffer به اشیاء EGLClientBuffer که می‌توانند به‌عنوان نمونه EGLImage مصرف شوند، پشتیبانی می‌کند یا خیر، اضافه شد. ( Iad767 )
  • افزودن حاشیه نویسی @JvmDefaultWithCompatibility ( I8f206 )

نسخه 1.0.0-alpha02

9 نوامبر 2022

androidx.graphics:graphics-core:1.0.0-alpha02 منتشر شد. نسخه 1.0.0-alpha02 حاوی این commit ها است.

تغییرات API

  • رفع حاشیه نویسی RequiresApi برای addTransactionCommitListener که در Android S معرفی شده بود ( I0a035 )
  • به روز رسانی onDraw<Front/Double> Callbacks بافر برای ارائه یک ماتریس تبدیل که مصرف کنندگان می توانند علاوه بر عرض/ارتفاع بافر فعلی به سایه زن های راس خود ارسال کنند. مصرف کنندگان مسئول استفاده از این پارامترها برای پیش چرخش صحیح کد رندر OpenGL خود هستند. ( I82f9e )

رفع اشکال

  • بهبود تأخیر گرافیک با چرخش بافرهای قبل از صدور تراکنش های SurfaceControl .
  • مشکلی که در آن لاگ خطاها خطای 300d (EGL_BAD_SURFACE) را نشان می‌داد، برطرف شد.
  • مشکلی که در آن GLFrontBufferedRenderer پس از ازسرگیری فعالیت مربوطه که در آن استفاده شده بود، نامعتبر بود، برطرف شد.
  • افزایش پشتیبانی از شبیه سازها و دستگاه های ChromeOS.
  • مشکلی که در آن لایه بافر جلویی ممکن است پیش از موعد پنهان شود برطرف شد.

نسخه 1.0.0-alpha01

24 اکتبر 2022

androidx.graphics:graphics-core:1.0.0-alpha01 منتشر شد. نسخه 1.0.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • انتشار اولیه کتابخانه هسته گرافیکی AndroidX. این شامل APIهایی برای پشتیبانی از موارد استفاده با تأخیر کم مانند ورودی قلم است. این همچنین برخی از API های کمکی را برای استفاده از OpenGL معرفی می کند.

تغییرات API

  • GLFrontBufferedRenderer را برای کمک به رندر جلویی و چند بافری برای دستیابی به تاخیر کم و خروجی رندر با کیفیت بالا معرفی می کند.
  • GLRenderer API را برای کمک به رندر OpenGL برای ارائه دهندگان مختلف Surface مانند SurfaceView ، TextureView و دیگران معرفی می کند.