ملاحظات إصدار "أدوات إصدار حزمة تطوير البرامج (SDK)

أداة إنشاء حزمة تطوير البرامج (SDK) لنظام التشغيل Android هي مكوّن من حزمة تطوير البرامج (SDK) لنظام التشغيل Android مطلوب ل إنشاء تطبيقات Android. تم تثبيته في الدليل <sdk>/build-tools/.

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

رائعKotlin
android {
    buildToolsVersion "34.0.0"
    ...
}
android {
    buildToolsVersion = "34.0.0"
    ...
}

إصدارات

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

"أدوات الإنشاء"، الإصدار 34.0.0 RC3(نيسان/أبريل 2023)

إصلاح الأخطاء العامة وإجراء تحسينات

يتضمّن هذا التحديث إمكانية إنشاء التطبيقات باستخدام واجهات برمجة تطبيقات معاينة Android 14.

يحلّ هذا التحديث المشكلة التالية:

  • core-lambda-stubs.jar يختلف الإصدار 33.0.0 على نظام التشغيل macOS عن الإصدار على نظام التشغيل Linux/Windows. (راجِع المشكلة رقم 237299698).

يحلّ هذا التحديث المشكلة التالية:

يتضمّن هذا التحديث إمكانية إنشاء التطبيقات باستخدام واجهات برمجة تطبيقات إصدار Android 11 التجريبي.

يحلّ هذا التحديث المشكلة التالية:

يحلّ هذا التحديث المشكلة التالية:

يتضمّن هذا التحديث إمكانية إنشاء التطبيقات باستخدام المستوى 29 من واجهة برمجة التطبيقات.

يتضمّن هذا التحديث المكوّن الإضافي لنظام Gradle المتوافق مع Android 3.2.0 ويصلح المشاكل التالية:

  • تم إصلاح خلل في مكتبة JNI كان يؤدي إلى تعطُّل التطبيقات عند استدعاء androidx.renderscript.RenderScript.create().
  • تم إصلاح خطأ كان يتسبب في حدوث أخطاء في إنشاء Program type already present باستخدام موارد androidx.annotation.

يتضمّن أحدث إصدار من D8.

تحسين ميزة تجميع الدوالّ اللامدا عند تفعيل ميزات لغة Java 8

تحسين إتاحة ميزات لغة Java 8

إضافة إمكانية استخدام حِزم APK متعددة الإصدارات القديمة لاختبار التطبيقات (المشكلة رقم 37324038)

بالإضافة إلى إصلاحات الأخطاء العامة، يتضمّن هذا الإصدار التعديلات التالية:

  • تعديلات الإصدار apksigner إلى الإصدار 0.8:
    • التوافق مع Java 9 (المشكلة رقم 37137869)
    • مَعلمة --pass-encoding الجديدة لمعالجة ملفّات تخزين المفاتيح والمفاتيح المشفّرة باستخدام كلمات مرور غير ASCII في حال التبديل إلى Java 9 وتعذّر على apksigner فك تشفير ملف تخزين المفاتيح أو المفتاح، استخدِم هذه المَعلمة لتحديد ترميز الأحرف الذي استخدمته لإنشاء ملف تخزين المفاتيح أو المفتاح. لمزيد من المعلومات، يُرجى الاطّلاع على مستندات apksigner أو تشغيل apksigner sign --help من سطر الأوامر.
    • رسالة خطأ أفضل عندما يتعذّر على apksigner التحقّق من توقيع JAR بسبب خلاصة أو خوارزمية توقيع غير متوافقة (الطلب رقم 63525618)
  • إتاحة وضع الخادم الدائم لـ AAPT2 عند استخدام مكوّن Android الإضافي لنظام Gradle 3.0.0-beta7 أو إصدار أحدث

بالإضافة إلى إصلاحات الأخطاء العامة، يعيد هذا الإصدار apksigner إلى حزمة أدوات الإنشاء (تم حذفها عن طريق الخطأ في الإصدار 26.0.0) ويتضمن التحديثات التالية على الأداة:

  • إضافة ميزة التوافق مع معيار PKCS ‎ #11 للسماح بالتوقيع باستخدام مفاتيح محفوظة في أجهزة آمنة (المشكلة رقم 37140484)
  • إتاحة تحميل مزوّدي خدمات JCA إضافيين قبل التوقيع
  • الالتزام بسياسة android:targetSandboxVersion عند التحقّق من حِزم APK
  • عند التوقيع، يتم رفض حِزم APK التي تحتوي على ملفات تتضمّن الأحرف الخاصة "CR" (إرجاع السطر) أو "LF" (إدخال سطر) أو "NUL" (قيمة فارغة) في اسم الملف.
  • إصلاحات في apksigner.bat لمعالجة المَعلمات التي تحتوي على مسافات بشكل صحيح (الطلب رقم 38132450)
  • إصلاح خطأ في عملية التحقّق من توقيع JAR عند توفّر ملخّصات متعدّدة للملف نفسه في MANIFEST.MF (المشكلة رقم 38497270)

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

تعديلات على apksigner:

  • تمت إضافة المَعلمة --in لتحقيق التناظر مع المَعلمة --out الحالية.
  • إذا لم تحدِّد كلمة مرور المفتاح باستخدام --key-pass، apksigner يستخدم كلمة مرور ملف تخزين المفاتيح ككلمة مرور المفتاح. ومع ذلك، إذا كان المفتاح يتطلّب كلمة مرور مختلفة، سيُطلب منك الآن إدخال كلمة مرور المفتاح من سطر الأوامر. (المشكلة رقم 37134986)
  • تمت إضافة توافق مع jarsigner لكلمات المرور غير المستندة إلى ASCII. (المشكلة رقم 37135737)

إصلاح الأخطاء

يتضمّن هذا الإصدار إصلاحات للأخطاء و تحسينات على apksigner:

  • إتاحة حِزم APK التي تحتوي على أسماء إدخالات JAR مشوّشة
  • --print-certs يُرسِل التبديل الآن أيضًا ملفات مرجعية لـ MD5.

إصلاحات أخطاء في سلسلة أدوات Jack:

  • تم إصلاح مشكلة عدم توافق Jack مع الملفات المصدر التي لا تتضمّن أحرف ASCII. (المشكلة #218892)
  • تم إصلاح مشكلة كانت تؤدي إلى ظهور AssertionError أثناء بعض compilings. (المشكلة #208414)
  • تمت إضافة apksigner، وهي أداة لتوقيع حِزم APK لاستبدال jarsigner. يوقّع apksigner حِزم APK تلقائيًا باستخدام مخطّط توقيع JAR التقليدي (الذي يستخدمه jarsigner) والإصدار 2 من مخطّط توقيع APK الذي تم تقديمه في Android 7.0 (المستوى 24 لواجهة برمجة التطبيقات). يؤدي أي تعديل على حزمة APK موقَّعة باستخدام الإصدار 2 من مخطّط توقيع حزمة APK إلى إلغاء صحة توقيعها. وبالتالي، يجب تنفيذ المعالجة اللاحقة لحزمة APK، مثل zipalign، قبل استدعاء apksigner، وليس بعده. يعمل استدعاء zipalign قبل apksigner بشكل جيد لأنّ apksigner يحافظ على محاذاة APK وضغطه (على عكس jarsigner).
  • حلّ المشاكل في RenderScript مكتبة الدعم على أجهزة arm64
  • حلّ المشاكل في RenderScript مكتبة الدعم على أجهزة Jelly Bean معيّنة
  • إتاحة renderscriptTargetAPI 21+ عند استخدام المكوّن الإضافي لنظام Gradle، الإصدار 2.1.0 والإصدارات الأحدث
  • تحسين أداء الدمج في أداة dx
  • تم إصلاح مشاكل في مترجم RenderScript لنظام التشغيل Windows.

تم إصلاح المشاكل في أدوات RenderScript.

تمت إضافة إمكانية استخدام الإصدار 6.0 من نظام التشغيل Android (المستوى 23 من واجهة برمجة التطبيقات).

تم حلّ مشاكل التوافق مع ملفّات RenderScript على الأجهزة التي تعمل بالإصدارات من Android 4.4 (المستوى 19 من واجهة برمجة التطبيقات) إلى Android 4.1 (المستوى 16 من واجهة برمجة التطبيقات).

تمت إضافة إمكانية استخدام نظام التشغيل Android 5.1 (المستوى 22 من واجهة برمجة التطبيقات).

تم إصلاح مشكلة إنشاء تنسيقات البيانات في وضع 32 بت.

تم إصلاح مشاكل النصوص البرمجية لميزة "متعدد ملفات dex".

تمت إضافة دعم ملفات multidex لحِزم APK ودعم Jack للتعامل مع الحدّ الأقصى لمرجع الطريقة الذي يبلغ 64 كيلوبايت.

اكتمال تحديثات Eclipse ADT لحلّ مشاكل عدم الاستقرار على منصات Windows

تحديثات أولية لـ Eclipse ADT على نظام التشغيل Windows يُرجى استخدام المراجعة 21.0.2.

ملاحظات عامة:
  • تمت إضافة إمكانية استخدام الإصدار 5.0 من نظام Android (المستوى 21 من واجهة برمجة التطبيقات).
  • يتيح RenderScript الآن التشغيل السلس للتطبيقات بمعمارية 32/64 بت للمستوى 21 من واجهة برمجة التطبيقات والإصدارات الأحدث.
  • تم إصلاح مشكلة في نظام إنشاء Gradle عند استخدام المكوّن الإضافي JaCoCo. (المشكلة 69174)
  • تمت إضافة خيار input-list لاستخدامه مع سطور الأوامر الطويلة على نظام التشغيل Windows.
ملاحظات عامة:
  • تمت إضافة إمكانية استخدام التطبيق على نظام التشغيل Android Wear.
ملاحظات عامة:
  • تمت إضافة zipalign إلى "أدوات الإنشاء".
  • تم تعديل aapt لتجاهل ملفات XML التي يتعذّر تجميعها.

تم حلّ مشكلة في توافق RenderScript.

تم إصلاح مشاكل إنشاء RenderScript:
  • تم إصلاح مشكلة في ترميز رمز RenderScript الثنائي. (المشكلة 64775)
  • تم حلّ مشكلة عدم ظهور رموز رياضية في RenderScript (المشكلة 64110)

تم إصلاح مشاكل متنوعة في عملية الإنشاء:
  • تم إصلاح مشكلة عدم توفّر دعم لتجميع RenderScript في وضع NDK باستخدام Gradle.
  • تم إصلاح مشكلة BufferOverflowException في إصدار dx. (المشكلة 61710)

تمت إضافة إمكانية إنشاء إصدارات متوافقة مع الإصدار 4.4 من نظام Android (المستوى 19 من واجهة برمجة التطبيقات).

تم إصلاح العديد من المشاكل البسيطة في عملية الإنشاء.

تم إصلاح مشكلة في وضع دعم RenderScript.

تمت إضافة إمكانية إنشاء إصدارات متوافقة مع نظام التشغيل Android 4.3 (المستوى 18 لواجهة برمجة التطبيقات).

الإصدار الأولي.

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