Android Studio 3.1 (آذار (مارس) 2018)

يُعدّ الإصدار 3.1.0 من "استوديو Android" إصدارًا رئيسيًا يتضمّن مجموعة متنوعة من التحسينات والميزات الجديدة.

3.1.4 (آب (أغسطس) 2018)

يتضمّن هذا التحديث لإصدار Android Studio 3.1 التغييرات والإصلاحات التالية:

  • أصبحت لغة Kotlin المجمَّعة الآن هي الإصدار 1.2.50.
  • يتم إنشاء مشاريع جديدة باستخدام kotlin-stdlib-jdk* artifacts، بدلاً من عناصر kotlin-stdlib-jre*، وهي نهائيًا.
  • تم تحسين تحليل قواعد ProGuard في R8.
  • تم إصلاح الأخطاء التالية:
    • تعذّرت محاولة تشغيل فئة Kotlin الرئيسية مع ظهور خطأ: "Error: Could not find or load main class..."
    • دخل R8 في حلقة لانهائية أثناء تنفيذ تحسينات معينة.
    • استخدام الأمر إعادة تشغيل الاختبارات الفاشلة في النافذة تشغيل في بعض الأحيان أدى إلى عرض الرسالة "لم يتم العثور على أي اختبارات" بشكل غير صحيح.
    • لم يتعامل D8 مع invoke-virtual من الحالات بشكل صحيح، يتسبب في حدوث عطل مع VerifyError: invoke-super/virtual can't be used on private method
    • كان مُجمِّع "ربط البيانات" يعتمد على إصدار قديم من com.android.tools:annotations. يستخدم المُجمِّع الآن التعليقات التوضيحية للأدوات من المشروع الأساسي عندما تكون متاحة.
    • يتعطّل "استوديو Android" أثناء عمليات نقل الأجزاء عند استخدام الشخصيين.
    • تعطّل مصحِّح الأخطاء أثناء تصحيح أخطاء تنسيق يتضمّن مربّع نص.
    • فشل D8 في قراءة بعض ملفات ZIP التي تحتوي على رموز خاصة.

3.1.3 (حزيران (يونيو) 2018)

يتضمّن هذا التحديث للإصدار 3.1 من "استوديو Android" إصلاحات للأخطاء التالية:

  • تسرّب الذاكرة وتسبّب في جعل تطبيق Android Studio بطيئًا وغير مستجيب. بعد استخدام محرر التخطيط. يتضمّن هذا التحديث إصلاحات. لمعظم هذه المشكلات. ونعتزم إصدار تحديث آخر قريبًا لمعالجة تسرّبات الذاكرة الإضافية.
  • وتعطلت بعض التطبيقات التي تم إنشاؤها باستخدام D8 على بعض الأجهزة اللوحية من Verizon Ellipsis.
  • تعذّر تثبيت التطبيقات المنشأة باستخدام D8 مع خطأ واحد (INSTALL_FAILED_DEXOPT) على الأجهزة التي تعمل بنظام التشغيل Android 5.0 أو 5.1 (المستوى 21 أو 22)
  • بعض التطبيقات التي استخدمت مكتبة OkHttp وتم إنشاؤها باستخدام D8 على الأجهزة التي تعمل بنظام التشغيل Android 4.4 (المستوى 19 لواجهة برمجة التطبيقات).
  • تعذّر في بعض الأحيان بدء تشغيل Android Studio، مع ProcessCanceledException أثناء إعداد الصف لcom.intellij.psi.jsp.JspElementType.

3.1.2 (نيسان/أبريل 2018)

يتضمّن هذا التحديث للإصدار 3.1 من "استوديو Android" إصلاحات للأخطاء التالية:

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

    "The SourceSet name is not recognized by the Android Gradle Plugin."

  • عند تفعيل ميزة "التشغيل الفوري"، تعذّر إنشاء مشاريع Kotlin جديدة عند تشغيلها باستخدام الأمر Run.
  • أثناء تعديل ملف build.gradle، كان هناك في بعض الأحيان تأخير ملحوظ بين كتابة حرف وظهوره على الشاشة.
  • حدثت حالات تعذُّر في عملية الإنشاء أثناء إزالة الترميز في بعض المشاريع التي تحتوي على أعداد كبيرة من الوحدات أو التبعيات الخارجية، مع ظهور رسالة الخطأ التالية :

    "RejectedExecutionException: Thread limit exceeded replacing blocked worker"

  • لم تتم مراعاة بعض قيم قائمة DEX الرئيسية في D8 والاستدعاءات الانعكاسية.

يتضمّن هذا التحديث أيضًا تغييرات تجعل تشغيل عمليات التحقّق من الأخطاء من Gradle أسرع بكثير في بعض السيناريوهات.

3.1.1 (نيسان (أبريل) 2018)

يتضمّن هذا التحديث للإصدار 3.1 من "استوديو Android" إصلاحات للأخطاء التالية:

  • في بعض الحالات، عند فتح مشروع تم إنشاؤه في الإصدار 3.0 من "استوديو Android" وهي أول مرة في الإصدار Android Studio 3.1، تُعد مهمة Gradle-aware Make تمت إزالته من القسم قبل الإطلاق في تشغيل/تصحيح الأخطاء الإعدادات: وكانت النتيجة أنّه لم يتم إنشاء المشاريع عند النقر على الزرَّين تشغيل أو تصحيح الأخطاء، ما أدّى بدوره إلى حدوث أخطاء، مثل نشر حِزم APK غير صحيحة والأعطال عند استخدام أداة "التشغيل الفوري".

    لحل هذه المشكلة، يضيف Android Studio 3.1.1 العلامة المصمَّمة على أساس Gradle المُهمة الخاصة بتهيئة التشغيل للمشروعات التي تنقصها هذا الإدخال. يحدث هذا التعديل بعد المزامنة الأولى مع Gradle عند تحميل المشروع.

  • تعطّل مصحِّح الأخطاء عند تصحيح أخطاء تنسيق يتضمّن مربّع نص إذا كان تحليل الأداء المتقدم مفعّلاً.
  • توقّف Android Studio عن العمل بعد النقر على إنشاء الصيغ.
  • تم استخراج ملفات AAR (أرشيف Android) مرّتين، مرة خلال Gradle عملية المزامنة ومرة واحدة أثناء عملية إنشاء Gradle.
  • كانت بعض العناصر غير متوفّرة في بعض ملفات المتجهات القابلة للرسم التي تم استيرادها من ملفات SVG.
  • تم تعديل التحذير بشأن إيقاف إعدادات التبعيات compile نهائيًا من خلال تقديم إرشادات أفضل بشأن إعدادات implementation وapi. للحصول على تفاصيل عن إيقاف استخدام إعدادات compile ، يُرجى الاطّلاع على مستندات إعدادات التبعيات الجديدة.

الترميز/بيئة تطوير متكاملة

IntelliJ 2017.3.3

تم تحديث بيئة التطوير المتكاملة لـ "استوديو Android" من خلال إضافة تحسينات من IntelliJ. IDEA من خلال إصدار 2017.3.3. تشمل التحسينات تدفق تحكم أفضل تحليل المجموعات والسلاسل، واستنتاج قابلية القيم الفارغة، وتحسين والإصلاحات وغيرها الكثير.

لمعرفة التفاصيل، يُرجى الاطّلاع على ملاحظات إصدار JetBrains لإصدارات IntelliJ IDEA. 2017.2 و 2017.3، باسم بالإضافة إلى ملاحظات إصدار JetBrains التحديثات المتعلقة بإصلاح الأخطاء

تحسينات تحرير SQL مع غرفة

عند استخدام مكتبة قاعدة بيانات الغرف، يمكنك الاستفادة من العديد من التحسينات على تحرير SQL:

  • يفهم إكمال الرموز البرمجية ضمن Query جداول SQL (الكيانات) والأعمدة ومَعلمات طلبات البحث والأسماء البديلة والدمج والاستعلامات الفرعية وجُمل WITH.
  • يعمل تمييز بنية SQL الآن.
  • يمكنك النقر بزرّ الماوس الأيمن على اسم جدول في SQL وإعادة تسميته، ما يؤدي أيضًا إلى إعادة كتابة رمز Java أو Kotlin المقابل (بما في ذلك، على سبيل المثال، نوع الإرجاع للاستعلام). تعمل إعادة التسمية في الاتجاه الآخر، لذا، فإن إعادة تسمية فئة أو حقل Java تؤدي إلى إعادة كتابة لغة SQL الرمز.
  • يتم عرض استخدامات SQL عند استخدام البحث عن الاستخدامات (انقر بزر الماوس الأيمن اختر العثور على الاستخدامات من قائمة السياق).
  • للانتقال إلى تصريح كيان SQL برمز Java أو Kotlin، يمكنك الضغط مع الاستمرار على Control (Command في Mac) أثناء النقر على الكيان.

للحصول على معلومات عن استخدام SQL مع Room، اطّلِع على مقالة حفظ البيانات في قاعدة بيانات محلّية باستخدام Room.

تعديلات على ربط البيانات

يتضمّن هذا التحديث العديد من التحسينات على ربط البيانات:

  • يمكنك الآن استخدام كائن LiveData كحقل قابل للرصد في تعبيرات ربط البيانات. تشير رسالة الأشكال البيانية ViewDataBinding تتضمن الفئة الآن طريقة setLifecycle() جديدة تستخدمها للمراقبة LiveData الأخرى.

  • تشير رسالة الأشكال البيانية ObservableField يمكن للصف الآن قبول غير ذلك Observable الكائنات في الدالة الإنشائية.

  • يمكنك معاينة مُجمِّع تدريجي جديد لفئات ربط البيانات . للحصول على تفاصيل هذا المحول الجديد والتعليمات الخاصة بتمكين هو، انظر الإصدار 2 من محوّل ربط البيانات

    تشمل مزايا برنامج التجميع الجديد ما يلي:

    • تم إنشاء ViewBinding صفًا بواسطة Android. المكون الإضافي لنظام Gradle قبل المحول البرمجي لـ Java.
    • تحتفظ المكتبات بفئاتها الملزمة التي تم إنشاؤها عند تشغيل التطبيق بدلاً من إنشائها في كل مرة ويمكن أن يؤدي ذلك إلى تحسين الأداء بشكل كبير في المشاريع المتعدّدة الوحدات.

المُجمِّع وGradle

D8 هو دالة DEX التلقائية. برنامج تجميع

يُستخدم برنامج التحويل البرمجي D8 الآن بشكل افتراضي لإنشاء رمز بايت DEX.

يوفر برنامج التحويل البرمجي DEX الجديد هذا العديد من المزايا، بما في ذلك التالي:

  • فهرسة أسرع
  • استخدام ذاكرة أقل
  • عملية إنشاء محسَّنة للرموز (تسجيل تخصيص أفضل، وسلسلة أكثر ذكاءً) الجداول)
  • تجربة تصحيح أفضل للأخطاء عند التنقّل في الرموز البرمجية

لست بحاجة إلى إجراء أي تغييرات على الرمز أو في عملية التطوير. للحصول على هذه المزايا، ما لم تكن قد فعلت ذلك يدويًا بتعطيل برنامج التحويل البرمجي D8.

إذا ضبطت android.enableD8 على false في gradle.properties، يمكنك إما حذف هذه العلامة أو ضبطها على true:

        android.enableD8=true
      

للحصول على التفاصيل، يمكنك مراجعة المحول البرمجي لـ DEX جديد:

التزايدي إزالة السكريات

بالنسبة إلى المشاريع التي تستخدم ميزات لغة Java 8، يتم تفعيل ميزة إزالة الترميز بشكل تدريجي تلقائيًا، ما يمكن أن يؤدي إلى تحسين مدّة الإنشاء.

تحوّل عملية إزالة السكر التصويري السكر النحوي إلى شكل يمكن للمجمِّع معالجته بكفاءة أكبر.

يمكنك تعطيل الإزالة التزايدية من خلال تحديد ما يلي في ملف gradle.properties لمشروعك:

        android.enableIncrementalDesugaring=false
      

نافذة إخراج مبسّطة

تم استبدال وحدة تحكُّم Gradle بنموذج Build التي تحتوي على علامتَي التبويب مزامنة وإنشاء.

للحصول على تفاصيل حول كيفية استخدام نافذة إنشاء الجديدة والمبسّطة، يُرجى اتّباع الخطوات التالية: راجعمراقبة الإصدار .

الفهرسة والتحديثات المجمّعة تزامن

أصبحت عمليات فهرسة Gradle وفهرسة IDE أكثر كفاءة بكثير، تقليل الوقت الضائع في العديد من عمليات الفهرسة المتكررة.

C++ وLLDB

أجرينا العديد من التحسينات على الجودة والأداء في مراحل الترميز والمزامنة والإنشاء وتصحيح الأخطاء في تطوير C++. تشمل التحسينات التالي:

  • إذا كنت تعمل على مشروعات كبيرة بلغة C++ ، فستلاحظ تحسنًا كبيرًا في تقليل الوقت المستغرق في إنشاء الرموز. يعد وقت المزامنة أيضًا تنخفض للمشروعات الكبيرة.

  • تم تحسين الأداء عند الإنشاء والمزامنة باستخدام أداة CMake من خلال إعادة استخدام أكثر حسمًا للنتائج المخزنة مؤقتًا.

  • إضافة أدوات التنسيق ("الطابعات الجميلة") لمزيد من هياكل بيانات C++ إلى تسهيل قراءة مخرجات LLDB.

  • لا يعمل LLDB الآن إلا مع الإصدار 4.1 من نظام التشغيل Android (المستوى 16 من واجهة برمجة التطبيقات) والإصدارات الأحدث.

ملاحظة: يمكن إجراء تصحيح الأخطاء المحلي باستخدام الإصدار Android Studio 3.0 أو أكبر لا يعمل على Windows 32 بت. إذا كنت تستخدم Windows 32 بت لتصحيح أخطاء الرمز البرمجي الأصلي، عليك استخدام الإصدار 2.3 من "استوديو Android".

Kotlin

تمت ترقية لغة Kotlin إلى الإصدار 1.2.30.

يشمل الإصدار Android Studio 3.1 لغة كوتلين الإصدار 1.2.30.

تم تحليل رمز Kotlin الآن باستخدام فحص أداة Lint لسطر الأوامر

يمكن تشغيل أداة Lint من سطر الأوامر الآن في تحليل فئات Kotlin.

لكل مشروع ترغب في تشغيل أداة Lint عليه، خبير Google مستودع في المستوى الأعلى من build.gradle الملف. يتم تضمين مستودع Maven حاليًا للمشاريع التي يتم إنشاؤها في الإصدار 3.0 من "استوديو Android" والإصدارات الأحدث.

أدوات الأداء

نماذج من عمليات C++ الأصلية باستخدام أداة تحليل وحدة المعالجة المركزية (CPU)

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

يمكنك تغيير الإعدادات التلقائية، مثل فاصل أخذ العينات، من خلال إنشاء إعدادات تسجيل.

للعودة إلى تتبُّع سلاسل Java، اختَر أحد إعدادَي التحليل المستند إلى عيّنات (Java) أو التحليل المستند إلى أدوات القياس (Java) .

فلترة عمليات تتبُّع وحدة المعالجة المركزية (CPU) والذاكرة نتائج التخصيص ولقطات لأجزاء من الذاكرة

محلل وحدة المعالجة المركزية (CPU) تتضمّن أداة تحليل الذاكرة ما يلي: هي ميزة بحث تتيح لك فلترة النتائج من تسجيل طريقة أو عمليات التتبّع أو تخصيصات الذاكرة أو تسجيل لقطات لأجزاء من الذاكرة

للبحث، انقر على رمز التصفية في أعلى يسار اللوحة، ثم اكتب طلب البحث واضغط على مفتاح Enter.

ملاحظة: يمكنك أيضًا فتح حقل البحث من خلال الضغط على Ctrl ‏+ F (Command ‏+ F على أجهزة Mac).

في علامة التبويب مخطط فلاش ضمن أداة تحليل وحدة المعالجة المركزية (CPU)، يمكنك استخدام حزم المكالمات التي تتضمن يتم تمييز الطرق المرتبطة بطلب البحث ونقلها إلى اليمين جانب المخطط.

لمزيد من المعلومات عن الفلترة حسب الطريقة أو الفئة أو اسم الحزمة، يُرجى الاطّلاع على تسجيل عمليات تتبُّع الطريقة وفحصها.

علامة التبويب "طلب" في Network Profiler

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

عرض سلسلة المحادثات في "محلل الشبكة"

بعد تحديد جزء من الجدول الزمني في محلِّل الشبكة، يمكنك اختيار أحد علامات التبويب التالية للاطّلاع على مزيد من التفاصيل حول نشاط الشبكة أثناء ذلك الإطار الزمني:

  • عرض الاتصال: يوفّر المعلومات نفسها التي يوفّرها الإصدارات السابقة من IDE Android Studio، حيث يسرد الملفات التي تم إرسالها أو استلامها أثناء الجزء المحدّد من المخطط الزمني على مستوى جميع سلاسل مهام وحدة المعالجة المركزية في تطبيقك. بالنسبة إلى كل طلب، يمكنك فحص الحجم والنوع والحالة ومدة الإرسال.
  • عرض سلسلة المحادثات: يعرض نشاط الشبكة لكل سلسلة من سلاسل وحدة المعالجة المركزية (CPU) لتطبيقك. تتيح لك طريقة العرض هذه فحص سلاسل محادثات تطبيقك المسؤولة عن كل طلب شبكة.

أداة فحص التنسيقات

حصلت أداة فحص التنسيق على ميزات جديدة، بما في ذلك بعض الوظائف التي كانت توفّرها سابقًا أداتا "عارض التسلسل الهرمي" و"Pixel Perfect" اللتان تم إيقافهما نهائيًا:

  • أزرار التصغير/التكبير واختصارات لوحة المفاتيح للتنقّل في التنسيقات وفحصها
  • شبكة مرجعية مركّبة
  • إن القدرة على تحميل صورة مرجعية واستخدامها كتراكب (مفيدة مقارنة التخطيط الخاص بك بنموذج واجهة المستخدم)
  • عرض معاينة للبنية الفرعية لعزل عرض في تنسيق معقد

أداة تعديل التنسيق

اللوحة في أداة تعديل التنسيق خضع للعديد من التحسينات:

  • إعادة تنظيم فئات طرق العرض والتنسيقات.
  • فئة شائعة جديدة لطرق العرض والتنسيقات، والتي يمكنك الإضافة إليها باستخدام أمر المفضلة.
  • محسَّنة البحث عن مشاهدات وتنسيقات.
  • الأوامر الجديدة لـ فتح المستندات الخاصة بعرض أو عنصر تنسيق محدّدَين.

يمكنك استخدام طريقة العرض الجديدة تحويل الملف الشخصي. في شجرة المكونات أو محرر التصميم لتحويل طريقة عرض أو تخطيط إلى نوع آخر من طرق العرض أو التخطيط.

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

التشغيل والتشغيل الفوري

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

عند استهداف جهاز يعمل بالإصدار 8.0 من نظام التشغيل Android (المستوى 26 من واجهة برمجة التطبيقات) أو إصدار أحدث، يمكن أن تُنفِّذ ميزة التشغيل الفوري التغييرات على الموارد بدون إعادة تشغيل التطبيق. هذا هو نظرًا لأن الموارد تكون مضمّنة في حزمة APK مجزّأة.

المحاكي

لمعرفة تفاصيل الميزات الجديدة والتي تم تغييرها في المحاكي منذ Android الإصدار 3.0 من "استوديو YouTube"، يمكنك الاطّلاع على ملاحظات إصدار "محاكي Android" من الإصدار 27.0.2 باستخدام الإصدار 27.1.12.

تشمل التحسينات الرئيسية ما يلي:

  • لقطات سريعة للتشغيل السريع لحفظ حالة المحاكي وبدء التشغيل بشكل أسرع مع إمكانية استخدام الأمر حفظ الآن لحفظ حالة بدء مخصصة.
  • شاشة للمحاكي بدون نوافذ
  • صور النظام لنظام التشغيل Android 8.0 (المستوى 26 لواجهة برمجة التطبيقات) وAndroid 8.1 (مستوى واجهة برمجة التطبيقات 27) وAndroid P Developer Preview.

تحسينات على واجهة المستخدم وتجربة المستخدم

المزيد من التلميحات واختصارات لوحة المفاتيح والرسائل المفيدة

لقد أضفنا تلميحات وتراكبات مفيدة للرسائل في عدة أماكن. من خلال "استوديو Android"

للاطلاع على اختصارات لوحة المفاتيح للعديد من الأوامر، ما عليك سوى الضغط مع الاستمرار على الماوس مرِّر مؤشر الماوس فوق أحد الأزرار حتى يظهر التلميح.

الأدوات > تمت إزالة قائمة Android.

تمت إزالة القائمة الأدوات > Android. تم نقل الأوامر التي كانت مضمّنة سابقًا في هذه القائمة.

  • تم نقل العديد من الأوامر مباشرةً إلى قسم الأدوات. القائمة.
  • تم نقل الأمر مزامنة المشروع باستخدام ملفات Gradle إلى القائمة ملف.
  • تمت إزالة الأمر مراقبة الجهاز، لأنه الموضحة أدناه.

ميزة "مراقبة الجهاز" متوفّرة من سطر الأوامر

في الإصدار 3.1 من Android Studio، أصبح دور "مراقبة الجهاز" أقل مما كان عليه في الإصدارات السابقة. في العديد من الحالات، أصبحت الوظيفة المتاحة من خلال "مراقبة الأجهزة" متاحة الآن من خلال أدوات جديدة ومحسّنة.

يمكنك الاطّلاع على مستندات أداة مراقبة الجهاز لـ لاستدعاء شاشة الجهاز من سطر الأوامر تفاصيل الأدوات المتوفرة من خلال Device Monitor.