برای افزایش کیفیت، روانی و پاسخگویی برنامههای خود، از دینامیکهای حرکتی مبتنی بر فیزیک برای تعاملات اولیه کاربر استفاده کنید. به جای منحنیهای کاهشی ثابت و مبتنی بر مدت زمان، از مکانیکهای فنری استفاده کنید تا مطمئن شوید که حرکت، تکانه حرکت کاربر را حفظ میکند و کاملاً قابل قطع شدن است و انتقالهای سفت و سخت را از بین میبرد.
پیادهسازی مورد نیاز
برای واجد شرایط بودن برای AEP، برنامه شما باید شرایط زیر را رعایت کند:
- برنامه نباید در طول ناوبری اولیه یا تغییرات وضعیت، از جمله تعویض فوری صفحه یا تغییر فوری طرحبندی، انتقالهای بصری 0 میلیثانیهای داشته باشد.
- تمام تعاملات، ناوبریها و نماهای گذرای برنامه اصلی باید از انتقالهای بصری با مدت زمان بیشتر از 0 میلیثانیه استفاده کنند.
- زمینه کاربر را از طریق روشهای درونیابی مانند محوشدگی متقاطع، کاهش استاندارد، انتقال عناصر مشترک یا انیمیشنهای فنری مبتنی بر فیزیک حفظ کنید.
نکته : اگر از Jetpack Compose برای توسعه رابط کاربری برنامه استفاده میکنید، از spring() AnimationSpec برای تغییرات موقعیتی و حالت استفاده کنید و dampingRatio و stiffness را تنظیم کنید تا یک حس طبیعی و واکنشگرا ایجاد شود.
کاربردپذیری دستورالعمل
این دستورالعمل اعمال میشود:
- به برنامههایی که پیادهسازی مشابه Physics Based Motion را در پلتفرم غیر اندروید ارائه میدهند.
- برای تمام فرم فاکتورهایی که برنامه روی آنها موجود است.
معافیتها
هیچ استثنائی برای این دستورالعمل وجود ندارد.
مستندات و منابع ویژه
منابع زیر راهنماییهای پیادهسازی و جزئیات فنی در مورد ویژگی حرکت مبتنی بر فیزیک را ارائه میدهند. این منابع فقط برای مرجع شما هستند و شامل الزامات برنامه اضافی نمیشوند.