‫Android Studio 3.6 (شباط/فبراير 2020)

‫Android Studio 3.6 هو إصدار رئيسي يتضمّن مجموعة متنوّعة من الميزات الجديدة والتحسينات.

ونودّ أيضًا أن نشكر جميع المساهمين في المنتدى الذين ساعدوا في إصدار هذه الميزة.

‫3.6.3 (نيسان/أبريل 2020)

يتضمّن هذا التحديث البسيط إصلاحات أخطاء متنوّعة. للاطّلاع على قائمة بإصلاحات الأخطاء البارزة، يُرجى قراءة المشاركة ذات الصلة في مدونة "إصدارات التحديثات".

‫3.6.2 (آذار/مارس 2020)

يتضمّن هذا التحديث البسيط إصلاحات أخطاء متنوّعة. للاطّلاع على قائمة بإصلاحات الأخطاء البارزة، يُرجى قراءة المشاركة ذات الصلة في مدونة "إصدارات التحديثات".

‫3.6.1 (شباط/فبراير 2020)

يتضمّن هذا التحديث البسيط إصلاحات أخطاء متنوّعة. للاطّلاع على قائمة بإصلاحات الأخطاء البارزة، يُرجى قراءة المشاركة ذات الصلة في مدونة "إصدارات التحديثات".

أدوات التصميم

يتضمّن هذا الإصدار من "استوديو Android" تحديثات للعديد من أدوات التصميم، بما في ذلك "أداة تعديل التصميم" و"أداة إدارة الموارد".

العرض المقسّم والتكبير في أدوات تصميم المحتوى

يعرض "العرض المقسّم" كلاً من عرض التصميم وعرض النص في الوقت نفسه

يتضمّن هذا الإصدار التعديلات التالية على أدوات تعديل التصميم المرئي:

  • توفّر أدوات تعديل التصميم، مثل "أداة تعديل التنسيق" و"أداة تعديل التنقّل"، الآن طريقة عرض مقسّمة تتيح لك الاطّلاع على كل من طريقتَي عرض التصميم والرمز لواجهة المستخدم في الوقت نفسه. في أعلى يسار نافذة المحرّر، تظهر الآن ثلاثة أزرار عرض الرموز للتبديل بين خيارات العرض:

    • لتفعيل وضع "تقسيم الشاشة"، انقر على رمز التقسيم رمز "تقسيم العرض".
    • لتفعيل عرض مصدر XML، انقر على رمز المصدر رمز عرض المصدر.
    • لتفعيل "طريقة عرض التصميم"، انقر على رمز التصميم رمز طريقة عرض التصميم.
  • تم نقل عناصر التحكّم في التكبير والتصغير والتحريك داخل أدوات تعديل التصميم إلى لوحة عائمة في أسفل يسار نافذة أداة التعديل.

لمزيد من المعلومات، يمكنك الاطّلاع على إنشاء واجهة مستخدم باستخدام "أداة تعديل التنسيق".

علامة التبويب "أداة اختيار الألوان"

لمساعدتك في تعديل قيم موارد الألوان في تطبيقك بسرعة عند استخدام أداة اختيار الألوان في ملف XML أو أدوات التصميم، تملأ بيئة التطوير المتكاملة الآن قيم موارد الألوان نيابةً عنك.

علبة الألوان مع قيم الألوان التي تمّت تعبئتها

Resource Manager

يتضمّن "مدير الموارد" التعديلات التالية:

  • يتوافق "مدير الموارد" الآن مع معظم أنواع الموارد.
  • عند البحث عن مورد، يعرض "مدير الموارد" الآن نتائج من جميع وحدات المشروع. في السابق، كانت عمليات البحث تعرض نتائج من الوحدة المحدّدة فقط.
  • يتيح لك زر الفلتر عرض الموارد من الوحدات التابعة المحلية والمكتبات الخارجية وإطار عمل Android. يمكنك أيضًا استخدام الفلتر لعرض سمات المظهر.
  • يمكنك الآن إعادة تسمية الموارد أثناء عملية الاستيراد من خلال النقر داخل مربّع النص أعلى المورد.

لمزيد من المعلومات، اطّلِع على إدارة موارد واجهة المستخدم لتطبيقك باستخدام "أداة إدارة الموارد".

تعديلات على المكوّن الإضافي لنظام Gradle المتوافق مع Android

يتضمّن أحدث إصدار من المكوّن الإضافي لنظام Gradle المتوافق مع Android العديد من التحديثات، بما في ذلك تحسينات لسرعة الإنشاء، والتوافق مع المكوّن الإضافي للنشر على Maven، والتوافق مع View Binding. لمزيد من المعلومات، يمكنك الاطّلاع على ملاحظات الإصدار الكاملة.

عرض الربط

تتيح لك ربط العرض كتابة رموز برمجية تتفاعل مع طرق العرض بسهولة أكبر من خلال إنشاء فئة ربط لكل ملف تخطيط XML. تحتوي هذه الفئات على مراجع مباشرة إلى جميع طرق العرض التي تتضمّن معرّفًا في التصميم ذي الصلة.

لأنّها تحلّ محل findViewById()، فإنّ ربط عرض البيانات يزيل خطر حدوث استثناءات مؤشر فارغ ناتجة عن معرّف عرض غير صالح.

لتفعيل View Binding، عليك استخدام الإصدار 3.6.0 أو إصدار أحدث من المكوّن الإضافي لنظام Gradle المتوافق مع Android وتضمين ما يلي في ملف build.gradle لكل وحدة:

Groovy

  android {
      buildFeatures.viewBinding = true
  }
  

Kotlin

  android {
      buildFeatures.viewBinding = true
  }
  

تطبيق التغييرات

يمكنك الآن إضافة فئة ثم نشر تغيير الرمز هذا إلى تطبيقك قيد التشغيل من خلال النقر على تطبيق تغييرات الرمز أو تطبيق التغييرات وإعادة تشغيل النشاط .

لمزيد من المعلومات عن الفرق بين هذين الإجراءَين، اطّلِع على مقالة تطبيق التغييرات.

إعادة تصميم خيار القائمة لتفعيل ميزة "التطبيقات الفورية"

يمكنك الآن تفعيل الوحدة الأساسية على الفور في أي وقت بعد إنشاء مشروع تطبيقك باتّباع الخطوات التالية:

  1. افتح لوحة المشروع (Project) من خلال اختيار عرض (View) > نوافذ الأدوات (Tool Windows) > المشروع (Project) من شريط القوائم.
  2. انقر بزر الماوس الأيمن على الوحدة الأساسية، والتي يُطلق عليها عادةً اسم "app"، ثم اختَر إعادة تصميم > تفعيل دعم "التطبيقات الفورية".
  3. في مربّع الحوار الذي يظهر، اختَر الوحدة الأساسية من القائمة المنسدلة.
  4. انقر على موافق.

ملاحظة:تمت إزالة خيار التفعيل الفوري لوحدة تطبيقك الأساسية من معالج إنشاء مشروع جديد.

لمزيد من المعلومات، يُرجى الاطّلاع على نظرة عامة على ميزة "التطبيقات الفورية على Google Play".

إزالة التشويش عن رمز بايت الخاص بالفئات والطرق في "أداة تحليل ملفات APK"

عند استخدام أداة تحليل حِزم APK لفحص ملفات DEX، يمكنك إزالة تشويش الرمز الثانوي لفئات وطُرق على النحو التالي:

  1. اختَر إنشاء > تحليل حزمة APK من شريط القوائم.
  2. في مربّع الحوار الذي يظهر، انتقِل إلى حزمة APK التي تريد فحصها واختَرها.
  3. انقر على فتح.
  4. في "أداة تحليل حِزم APK"، اختَر ملف DEX الذي تريد فحصه.
  5. في عارض ملفات DEX، حمِّل ملف ربط ProGuard لحزمة APK التي تحلّلها.
  6. انقر بزرّ الماوس الأيمن على الفئة أو الطريقة التي تريد فحصها، ثم اختَر عرض رمز البايت.

أدوات مدمجة

تتيح التحديثات التالية تطوير التطبيقات بلغة C/C++ في "استوديو Android".

التوافق مع Kotlin

تتوفّر الآن أيضًا ميزات NDK التالية في "استوديو Android"، والتي كانت متاحة سابقًا في Java، في Kotlin:

  • الانتقال من تعريف JNI إلى دالة التنفيذ المقابلة في C/C++: يمكنك الاطّلاع على عملية الربط هذه من خلال تمرير مؤشر الماوس فوق علامة عنصر C أو C++ بالقرب من رقم السطر في ملف رمز المصدر المُدار.

  • إنشاء دالة تنفيذية فارغة تلقائيًا لتعريف JNI حدِّد تعريف JNI أولاً، ثم اكتب "jni" أو اسم الطريقة في ملف C/C++ لتفعيلها.

  • يتم تمييز دوال التنفيذ الأصلية غير المستخدَمة كتحذير في الرمز المصدر. يتم أيضًا تمييز تعريفات JNI التي لا تتضمّن عمليات تنفيذ على أنّها خطأ.

  • عند إعادة تسمية (إعادة تصميم) دالة تنفيذ أصلية، يتم تعديل جميع تعريفات JNI ذات الصلة. أعِد تسمية تعريف JNI لتعديل دالة التنفيذ الأصلية.

  • التحقّق من التوقيعات لعمليات تنفيذ JNI المرتبطة ضمنيًا

تحسينات أخرى على JNI

يتيح محرّر الرموز البرمجية في "استوديو Android" الآن سير عمل أكثر سلاسة لتطوير JNI، بما في ذلك تلميحات محسّنة بشأن الأنواع، والإكمال التلقائي، وعمليات الفحص، وإعادة تصميم الرموز البرمجية.

إعادة تحميل حِزم APK للمكتبات المجمّعة من رموز برمجية أصلية {:#3.6-reload-apk}

لم يعُد عليك إنشاء مشروع جديد عندما يتم تعديل حزمة APK في مشروعك خارج بيئة التطوير المتكاملة. يرصد Android Studio التغييرات في حزمة APK ويتيح لك إعادة استيرادها.

إرفاق مصادر حِزم APK التي تتضمّن لغة Kotlin فقط

أصبح من الممكن الآن إرفاق مصادر حِزم APK الخارجية التي تستخدم لغة Kotlin فقط عند إنشاء ملف تعريف وتصحيح أخطاء حِزم APK المُنشأة مسبقًا. لمزيد من المعلومات، يُرجى الاطّلاع على إرفاق مصادر Kotlin/Java.

رصد تسرُّب الذاكرة في "محلّل الذاكرة"

عند تحليل تفريغ الذاكرة المؤقتة في "أداة فحص الذاكرة"، يمكنك الآن فلترة بيانات تحديد المشاكل التي يعتقد Android Studio أنّها قد تشير إلى تسرُّب الذاكرة في مثيلات Activity وFragment في تطبيقك.

تشمل أنواع البيانات التي يعرضها الفلتر ما يلي:

  • مثيلات Activity التي تم إتلافها ولكن لا يزال يتم الرجوع إليها.
  • Fragment الحالات التي لا تتضمّن FragmentManager ولكن لا يزال يتم الرجوع إليها.

إرفاق مصادر حِزم APK التي تتضمّن لغة Kotlin فقط

أصبح من الممكن الآن إرفاق مصادر حِزم APK الخارجية التي تستخدم لغة Kotlin فقط عند إنشاء ملف تعريف وتصحيح أخطاء حِزم APK المُنشأة مسبقًا. لمزيد من المعلومات، يُرجى الاطّلاع على إرفاق مصادر Kotlin/Java.

رصد تسرُّب الذاكرة في "محلّل الذاكرة"

عند تحليل تفريغ الذاكرة المؤقتة في "أداة فحص الذاكرة"، يمكنك الآن فلترة بيانات تحديد المشاكل التي يعتقد Android Studio أنّها قد تشير إلى تسرُّب الذاكرة في مثيلات Activity وFragment في تطبيقك.

تشمل أنواع البيانات التي يعرضها الفلتر ما يلي:

  • مثيلات Activity التي تم إتلافها ولكن لا يزال يتم الرجوع إليها.
  • Fragment مثيلات ليس لها FragmentManager صالح ولكن لا يزال يتم الرجوع إليها.

في بعض الحالات، مثل ما يلي، قد يؤدي الفلتر إلى نتائج موجبة خاطئة:

  • تم إنشاء Fragment ولكن لم يتم استخدامه بعد.
  • يتم تخزين Fragment مؤقتًا ولكن ليس كجزء من FragmentTransaction.

لاستخدام هذه الميزة، عليك أولاً تسجيل تفريغ الذاكرة المؤقتة أو استيراد ملف تفريغ الذاكرة المؤقتة إلى "استوديو Android". لعرض الأجزاء والأنشطة التي قد تؤدي إلى تسرُّب الذاكرة، ضَع علامة في مربّع الاختيار تسرُّبات النشاط/الجزء في لوحة تفريغ الذاكرة المجمّعة ضمن "أداة فحص الذاكرة".

أداة Profiler: رصد تسرُّب الذاكرة

تصفية نَسْخ ذاكرة بحثًا عن تسربات الذاكرة

المحاكيات

يساعدك الإصدار 3.6 من "استوديو Android" في الاستفادة من العديد من التحديثات المضمّنة في الإصدار 29.2.7 من "محاكي Android" والإصدارات الأحدث، كما هو موضّح أدناه.

تحسين إمكانية استخدام الموقع الجغرافي

يتيح الإصدار 29.2.7 من Android Emulator والإصدارات الأحدث إمكانية محاكاة إضافية لإحداثيات نظام تحديد المواقع العالمي (GPS) ومعلومات المسار. عند فتح عناصر التحكّم الموسّعة في المحاكيات، يتم الآن تنظيم الخيارات في علامة التبويب "الموقع الجغرافي" ضمن علامتَي تبويب: نقاط فردية ومسارات.

نقاط فردية

في علامة التبويب نقاط فردية، يمكنك استخدام عرض الويب في "خرائط Google" للبحث عن نقاط الاهتمام، تمامًا كما تفعل عند استخدام "خرائط Google" على هاتف أو متصفّح. عند البحث عن موقع جغرافي أو النقر عليه في الخريطة، يمكنك حفظه من خلال النقر على "حفظ النقطة" بالقرب من أسفل الخريطة. يتم إدراج جميع المواقع الجغرافية المحفوظة على يسار نافذة عناصر التحكّم الموسّعة.

لضبط الموقع الجغرافي للمحاكي على الموقع الجغرافي الذي اخترته على الخريطة، انقر على الزر ضبط الموقع الجغرافي بالقرب من أسفل يسار نافذة عناصر التحكّم الموسّعة.

علامة التبويب "نقاط مفردة" في "عناصر التحكّم الموسّعة في المحاكي".

مسارات الرحلة

على غرار علامة التبويب النقاط الفردية، توفّر علامة التبويب المسارات عرضًا على الويب من "خرائط Google" يمكنك استخدامه لإنشاء مسار بين موقعَين جغرافيَين أو أكثر. لإنشاء مسار وحفظه، اتّبِع الخطوات التالية:

  1. في عرض الخريطة، استخدِم حقل النص للبحث عن الوجهة الأولى في مسارك.
  2. اختَر الموقع الجغرافي من نتائج البحث.
  3. انقر على الزر تنقّل.
  4. اختَر نقطة بداية مسارك من الخريطة.
  5. (اختياري) انقر على إضافة وجهة لإضافة محطات إضافية إلى مسارك.
  6. احفظ مسارك من خلال النقر على حفظ المسار في عرض الخريطة.
  7. حدِّد اسمًا للمسار وانقر على حفظ.

لمحاكاة المحاكي وهو يتّبع المسار الذي حفظته، اختَر المسار من قائمة المسارات المحفوظة وانقر على تشغيل المسار بالقرب من أسفل يسار نافذة عناصر التحكّم الموسّعة. لإيقاف المحاكاة، انقر على إيقاف المسار.

علامة التبويب "المسارات" في "عناصر التحكّم الموسّعة في المحاكي".

لمحاكاة المحاكي بشكل متواصل وفقًا للمسار المحدّد، فعِّل المفتاح بجانب تكرار التشغيل. لتغيير سرعة اتّباع المحاكي للمسار المحدّد، اختَر خيارًا من القائمة المنسدلة سرعة التشغيل.

دعم الشاشات المتعددة

يتيح لك "محاكي Android" الآن نشر تطبيقك على شاشات عرض متعددة، وهي شاشات تتوافق مع أبعاد قابلة للتخصيص ويمكن أن تساعدك في اختبار التطبيقات التي تتوافق مع النوافذ المتعددة وشاشات العرض المتعددة. أثناء تشغيل جهاز افتراضي، يمكنك إضافة شاشتَين إضافيتَين على النحو التالي:

  1. افتح عناصر التحكّم الموسّعة وانتقِل إلى علامة التبويب شاشات العرض.

  2. أضِف شاشة عرض أخرى بالنقر على إضافة شاشة عرض ثانوية.

  3. من القائمة المنسدلة ضمن الشاشات الثانوية، نفِّذ أحد الإجراءات التالية:

  4. اختيار إحدى نِسب العرض إلى الارتفاع المُعدّة مسبقًا

  5. اختَر مخصّص واضبط الارتفاع والعرض وعدد النقاط في البوصة لشاشتك المخصّصة.

  6. (اختياري) انقر على إضافة شاشة عرض ثانوية لإضافة شاشة عرض ثالثة.

  7. انقر على تطبيق التغييرات لإضافة الشاشات المحدّدة إلى الجهاز الافتراضي قيد التشغيل.

إضافة شاشات متعددة إلى علامة التبويب "شاشة عناصر التحكّم الموسّعة في المحاكي"

أجهزة افتراضية ونماذج مشاريع جديدة لنظام التشغيل Android Automotive

عند إنشاء مشروع جديد باستخدام "استوديو Android"، يمكنك الآن الاختيار من بين ثلاثة نماذج من علامة التبويب السيارات في معالج إنشاء مشروع جديد: بدون نشاط وخدمة الوسائط وخدمة المراسلة. بالنسبة إلى المشاريع الحالية، يمكنك إضافة دعم لأجهزة Android Automotive من خلال اختيار ملف (File) > جديد (New) > وحدة جديدة (New Module) من شريط القوائم، ثم اختيار وحدة Automotive (Automotive Module). بعد ذلك، يرشدك معالج إنشاء وحدة جديدة خلال عملية إنشاء وحدة جديدة باستخدام أحد نماذج مشاريع Android Automotive.

اختيار نموذج مشروع Android Automotive.

بالإضافة إلى ذلك، يمكنك الآن إنشاء جهاز Android افتراضي (AVD) لأجهزة Android Automotive من خلال اختيار أحد الخيارات التالية في علامة التبويب Automotive ضمن معالج إعداد الجهاز الافتراضي.

  1. Polestar 2: أنشئ جهاز AVD يحاكي وحدة رأس Polestar 2.
  2. Automotive (أفقي بدقة 1024 بكسل): يمكنك إنشاء جهاز محاكاة Android الافتراضي (AVD) لوحدات رأس Android Automotive العامة التي تبلغ دقتها 1024 × 768 بكسل.

اختيار جهاز Android Automotive افتراضي.

عمليات تنزيل حِزم تطوير البرامج (SDK) قابلة للاستئناف

عند تنزيل أدوات ومكوّنات حزمة تطوير البرامج (SDK) باستخدام "مدير حزمة تطوير البرامج (SDK)"، يتيح لك Android Studio الآن استئناف عمليات التنزيل التي تم إيقافها (على سبيل المثال، بسبب مشكلة في الشبكة) بدلاً من إعادة بدء عملية التنزيل من البداية. ويكون هذا التحسين مفيدًا بشكل خاص عند تنزيل ملفات كبيرة، مثل "محاكي Android" أو صور النظام، عندما يكون الاتصال بالإنترنت غير موثوق به.

بالإضافة إلى ذلك، إذا كانت لديك مهمة تنزيل حزمة تطوير برامج (SDK) تعمل في الخلفية، يمكنك الآن إيقاف التنزيل مؤقتًا أو استئنافه باستخدام عناصر التحكّم في شريط الحالة.

مهمة تنزيل في الخلفية تظهر في شريط الحالة مع عناصر تحكّم جديدة تتيح لك إيقاف التنزيل مؤقتًا أو استئنافه

مهمة تنزيل في الخلفية تظهر في شريط الحالة مع عناصر تحكّم جديدة تتيح لك إيقاف التنزيل مؤقتًا أو استئنافه

إيقاف Win32 نهائيًا

لن يتلقّى إصدار Windows ذو 32 بت من Android Studio أي تحديثات بعد كانون الأول (ديسمبر) 2019، ولن يتلقّى أي دعم بعد كانون الأول (ديسمبر) 2020. يمكنك مواصلة استخدام Android Studio. ومع ذلك، لتلقّي تحديثات إضافية، عليك ترقية محطة العمل إلى إصدار 64 بت من نظام التشغيل Windows.

لمزيد من المعلومات، يُرجى قراءة مدونة إيقاف إصدار Windows ذي 32 بت.

خيار جديد لتحسين مدة مزامنة Gradle

في الإصدارات السابقة، كان "استوديو Android" يسترد قائمة بجميع مهام Gradle أثناء عملية "مزامنة Gradle". في المشاريع الكبيرة، قد يؤدي استرداد قائمة المهام إلى بطء عمليات المزامنة.

لتحسين أداء "مزامنة Gradle"، انتقِل إلى ملف > الإعدادات > تجريبي واختَر "عدم إنشاء قائمة مهام Gradle أثناء مزامنة Gradle".

عند تفعيل هذا الخيار، يتخطّى "استوديو Android" إنشاء قائمة المهام أثناء المزامنة، ما يتيح إكمال عملية "مزامنة Gradle" بشكل أسرع ويحسّن استجابة واجهة المستخدم. يُرجى العِلم أنّه عندما يتخطّى بيئة التطوير المتكاملة إنشاء قائمة المهام، تكون قوائم المهام في لوحة Gradle فارغة، ولا تعمل ميزة الإكمال التلقائي لاسم المهمة في ملفات الإنشاء.

موقع جغرافي جديد لتفعيل وضع عدم الاتصال بالإنترنت في Gradle

لتفعيل وضع عدم الاتصال بالإنترنت في Gradle أو إيقافه، اختَر أولاً عرض > نوافذ الأدوات > Gradle من شريط القوائم. بعد ذلك، انقر على تبديل الوضع بلا إنترنت زر Gradle بلا إنترنت في لوحة Gradle بالقرب من أعلى نافذة Gradle.

‫IntelliJ IDEA 2019.2

تم تعديل بيئة التطوير المتكاملة الأساسية في "استوديو Android" من خلال إضافة تحسينات من IntelliJ IDEA في الإصدار 2019.2.

لمزيد من المعلومات حول التحسينات من إصدارات IntelliJ الأخرى التي تم تضمينها بشكل تراكمي مع الإصدار 2019.2، راجِع الصفحات التالية:

المساهمون في المنتدى

نشكر جميع المساهمين في المنتدى الذين ساعدونا في رصد الأخطاء والطرق الأخرى لتحسين الإصدار 3.6 من "استوديو Android". ونودّ بشكل خاص توجيه الشكر إلى المستخدمين التاليين الذين أبلغوا عن أخطاء:

  • ألبرت لو
  • أليكسي روت
  • أندريا ليغانزا
  • بنديكت كولب
  • سيزار بويرتا
  • كورتيس كروتش
  • داميان فيتشوريك
  • دان ليو
  • ديفيد بورستروم
  • Deepanshu
  • إيغور أندرييفيتشي
  • إيلي غرابير
  • إمين كوكالاري
  • إيفان تاتاركا
  • فرانتيسيك ناجي
  • غريغ موينز
  • هانس أشلايتنر
  • هانس بيتر إيدي
  • Henning Bunk
  • Hugo Visser
  • Igor Escodro
  • إيناكي فيلار
  • جافينتيرا لييناتا
  • جو روجرز
  • كريستوفر دانييلسون
  • ليران بارسيسا
  • Louis CAD
  • لورانت بينتر
  • لوكاس واسيلكوفسكي
  • لوك فيلك
  • مالفين سوتانتو
  • ماساتوشي كوبودي
  • ماثيو وينترز
  • مايكل بيلي
  • Michał Górny
  • ميهائي نياكسو
  • مايك سكاميل
  • Monte Creasor
  • نيلسون أوساكي
  • نيلسون أوساكي
  • نيك فيرماني
  • نيكلاس أنسمان غيرتز
  • Niclas Kron
  • نيكولاس ليشتماير
  • Niek Haarman
  • نيلز فان هوف
  • نيكلاس باودي
  • Renato Goncalves
  • Roar Grønmo
  • روسلان باراتوف
  • سينان كوزاك
  • سلافومير تشيرفينسكي
  • ستيفان وولف
  • ستيفن داميكو
  • تاو وانغ
  • Tomas Chladek
  • Tomáš Procházka
  • توني روباليك
  • Torbjørn Sørli
  • وارن هي
  • Yenchi Lin
  • زك سوييرز