SDK বিল্ড টুল রিলিজ নোট

Android SDK Build-Tools হল Android SDK-এর একটি উপাদান যা Android অ্যাপ তৈরির জন্য প্রয়োজনীয়৷ এটি <sdk>/build-tools/ ডিরেক্টরিতে ইনস্টল করা আছে।

অ্যান্ড্রয়েড SDK ম্যানেজার ব্যবহার করে সর্বশেষ সংস্করণ ডাউনলোড করে আপনার বিল্ড টুলস কম্পোনেন্ট সবসময় আপডেট রাখা উচিত। আপনি যদি Gradle 3.0.0 বা উচ্চতর জন্য Android প্লাগইন ব্যবহার করেন, তাহলে আপনার প্রকল্প স্বয়ংক্রিয়ভাবে প্লাগইন নির্দিষ্ট করা বিল্ড টুলের একটি ডিফল্ট সংস্করণ ব্যবহার করে। বিল্ড টুলের একটি ভিন্ন সংস্করণ ব্যবহার করতে, আপনার মডিউলের build.gradlebuildToolsVersion ব্যবহার করে এটি উল্লেখ করুন, নিম্নরূপ:

android {
    buildToolsVersion "34.0.0"
    ...
}
android {
    buildToolsVersion = "34.0.0"
    ...
}

রিভিশন

নীচের বিভাগগুলি বিল্ড টুলের রিলিজ সম্পর্কে নোট প্রদান করে। আপনার SDK-এ বিল্ড টুলগুলির কোন সংশোধনগুলি উপলব্ধ তা নির্ধারণ করতে, Android SDK ম্যানেজারে ইনস্টল করা প্যাকেজ তালিকা দেখুন৷

বিল্ড টুলস, রিভিশন 34.0.0 RC3 (এপ্রিল 2023)

সাধারণ বাগ সংশোধন এবং উন্নতি।

এই আপডেটে অ্যান্ড্রয়েড 14 প্রিভিউ এপিআই সহ বিল্ডিংয়ের জন্য সমর্থন অন্তর্ভুক্ত রয়েছে।

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

  • core-lambda-stubs.jar সংস্করণ 33.0.0 macOS বনাম Linux/Windows-এ ভিন্ন। ( ইস্যু #237299698 দেখুন।)

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

এই আপডেটে অ্যান্ড্রয়েড 11 প্রিভিউ এপিআই সহ বিল্ডিংয়ের জন্য সমর্থন অন্তর্ভুক্ত রয়েছে।

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

  • ম্যাকোস ক্যাটালিনায় রেন্ডারস্ক্রিপ্টের সাথে সমস্যা তৈরি করুন। ( ইস্যু #142590626 দেখুন)

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

এই আপডেটে API স্তর 29 এর সাথে বিল্ডিংয়ের জন্য সমর্থন অন্তর্ভুক্ত রয়েছে।

এই আপডেটে অ্যান্ড্রয়েড গ্রেডল প্লাগইন 3.2.0 এর জন্য সমর্থন রয়েছে এবং নিম্নলিখিত সমস্যাগুলির সমাধান করে:

  • একটি JNI লাইব্রেরি বাগ সংশোধন করা হয়েছে যার কারণে androidx.renderscript.RenderScript.create() কল করার সময় অ্যাপগুলি ক্র্যাশ হয়েছে৷
  • androidx.annotation রিসোর্স সহ Program type already present বিল্ড ত্রুটির কারণে একটি বাগ সংশোধন করা হয়েছে৷

D8 এর সর্বশেষ সংস্করণ অন্তর্ভুক্ত।

আপনি যখন Java 8 ভাষা বৈশিষ্ট্য সক্রিয় করেন তখন ল্যাম্বডাস কম্পাইল করার জন্য সমর্থন উন্নত করে।

Java 8 ভাষার বৈশিষ্ট্যগুলির জন্য সমর্থন উন্নত করে৷

পরীক্ষার APKগুলির জন্য উত্তরাধিকার মাল্টিডেক্সের জন্য সমর্থন যোগ করে। ( ইস্যু #37324038 )

সাধারণ বাগ ফিক্স ছাড়াও, এই রিলিজে নিম্নলিখিত আপডেটগুলি অন্তর্ভুক্ত রয়েছে:

  • apksigner 0.8 সংস্করণে আপডেট করে:
    • জাভা 9 এর সাথে সামঞ্জস্যপূর্ণ। ( ইস্যু #37137869 )
    • নন-ASCII পাসওয়ার্ড ব্যবহার করে এনক্রিপ্ট করা কীস্টোর এবং কীগুলি পরিচালনা করার জন্য নতুন --pass-encoding পরামিতি। আপনি যদি Java 9-এ স্যুইচ করেন এবং apksigner আপনার কীস্টোর বা কী ডিক্রিপ্ট করতে ব্যর্থ হয়, তাহলে কীস্টোর বা কী তৈরি করতে আপনি যে অক্ষর এনকোডিং ব্যবহার করেছেন তা নির্দিষ্ট করতে এই প্যারামিটারটি ব্যবহার করুন। আরও তথ্যের জন্য, apksigner ডকুমেন্টেশন দেখুন বা কমান্ডলাইন থেকে apksigner sign --help চালান।
    • একটি অসমর্থিত ডাইজেস্ট বা স্বাক্ষর অ্যালগরিদমের কারণে apksigner একটি JAR স্বাক্ষর যাচাই করতে না পারলে আরও ভাল ত্রুটি বার্তা৷ ( ইস্যু #63525618 )
  • Gradle 3.0.0-beta7 বা উচ্চতর জন্য Android প্লাগইন ব্যবহার করার সময় AAPT2 ডেমন মোডের জন্য সমর্থন।

সাধারণ বাগ ফিক্স ছাড়াও, এই রিলিজটি apksigner বিল্ড টুল প্যাকেজে পুনরুদ্ধার করে (এটি 26.0.0 সংস্করণে ভুল করে বাদ দেওয়া হয়েছিল) এবং টুলটিতে নিম্নলিখিত আপডেটগুলি অন্তর্ভুক্ত করে:

  • সুরক্ষিত হার্ডওয়্যারে রাখা কী দিয়ে সাইন ইন করার অনুমতি দিতে PKCS #11 সমর্থন যোগ করে। ( ইস্যু #37140484 )
  • স্বাক্ষর করার আগে অতিরিক্ত JCA প্রদানকারীদের লোড করার জন্য সমর্থন যোগ করে।
  • Honors android:targetSandboxVersion APK যাচাই করার সময়।
  • স্বাক্ষর করার সময়, ফাইলগুলির সাথে APK প্রত্যাখ্যান করে যাতে ফাইলের নামের মধ্যে 'CR' (ক্যারেজ রিটার্ন), 'LF' (লাইন ফিড), বা 'NUL' (নাল) বিশেষ অক্ষর অন্তর্ভুক্ত থাকে।
  • স্পেস ধারণকারী প্যারামিটার সঠিকভাবে পরিচালনা করতে apksigner.bat ঠিক করে। ( ইস্যু #38132450 )
  • MANIFEST.MF এ একই এন্ট্রির জন্য একাধিক ডাইজেস্ট উপস্থিত থাকলে JAR স্বাক্ষর যাচাইকরণে একটি বাগ সংশোধন করে৷ ( ইস্যু #38497270 )

API স্তর 26 এর সাথে বিল্ডিংয়ের জন্য সমর্থন যোগ করে এবং এতে সাধারণ বাগ ফিক্স রয়েছে।

apksigner এর আপডেট:

  • বিদ্যমান --out প্যারামিটারের সাথে প্রতিসাম্যের জন্য --in প্যারামিটার যোগ করা হয়েছে।
  • আপনি --key-pass ব্যবহার করে কী পাসওয়ার্ড নির্দিষ্ট না করলে, apksigner কী-স্টোর পাসওয়ার্ড কী পাসওয়ার্ড হিসেবে ব্যবহার করে। যাইহোক, যদি কীটির জন্য আলাদা পাসওয়ার্ডের প্রয়োজন হয়, তাহলে আপনাকে এখন কমান্ড লাইন থেকে কী পাসওয়ার্ড লিখতে বলা হবে। ( ইস্যু #37134986 )
  • নন-ASCII পাসওয়ার্ডের জন্য jarsigner এর সাথে সামঞ্জস্য যোগ করা হয়েছে। ( ইস্যু #37135737 )

বাগ ফিক্স।

এই রিলিজে বাগ ফিক্স এবং apksigner এর নিম্নলিখিত উন্নতিগুলি অন্তর্ভুক্ত রয়েছে:

  • অস্পষ্ট JAR এন্ট্রি নাম সহ APKগুলির জন্য সমর্থন।
  • --print-certs সুইচ এখন MD5 আঙ্গুলের ছাপ ফেলে দেয়।

জ্যাক টুলচেইনের জন্য বাগ ফিক্স:

  • নন-ASCII সোর্স ফাইল সমর্থন করে জ্যাক সহ স্থির সমস্যা। ( ইস্যু #218892 )
  • স্থির সমস্যা যা কিছু সংকলনের সময় একটি AssertionError সৃষ্টি করে। ( ইস্যু #208414 )
  • apksigner যোগ করা হয়েছে, jarsigner প্রতিস্থাপন করার জন্য একটি APK সাইনিং টুল। ডিফল্টরূপে, apksigner প্রচলিত JAR সাইনিং স্কিম ( jarsigner দ্বারা ব্যবহৃত) এবং Android 7.0 (API স্তর 24) এ চালু করা APK স্বাক্ষর স্কিম v2 ব্যবহার করে APK সাইন করে। APK স্বাক্ষর স্কিম v2 এর সাথে স্বাক্ষরিত একটি APK-তে যেকোন পরিবর্তন তার স্বাক্ষরকে অকার্যকর করে। এইভাবে, APK পোস্ট-প্রসেসিং, যেমন zipalign , অবশ্যই apksigner চালু করার আগে সঞ্চালিত হবে, পরে নয়। apksigner এর আগে zipalign invoking ভাল কাজ করে কারণ apksigner APK সারিবদ্ধকরণ এবং কম্প্রেশন সংরক্ষণ করে ( jarsigner বিপরীতে)।
  • arm64 ডিভাইসে RenderScript সাপোর্ট লাইব্রেরিতে সমস্যা সমাধান করুন।
  • নির্দিষ্ট জেলি বিন ডিভাইসে রেন্ডারস্ক্রিপ্ট সাপোর্ট লাইব্রেরিতে সমস্যা সমাধান করুন।
  • renderscriptTargetAPI 21+ সমর্থন করুন যখন গ্রেডল, রিভিশন 2.1.0 এবং তার উপরে Android প্লাগইন ব্যবহার করুন।
  • dx টুলের মার্জিং কর্মক্ষমতা উন্নত করা হয়েছে।
  • উইন্ডোজের জন্য রেন্ডারস্ক্রিপ্ট কম্পাইলারে স্থির সমস্যা।

রেন্ডারস্ক্রিপ্ট টুলে সমস্যা সমাধান করা হয়েছে।

Android 6.0 (API লেভেল 23) রিলিজের জন্য সমর্থন যোগ করা হয়েছে।

অ্যান্ড্রয়েড 4.4 (এপিআই লেভেল 19) থেকে অ্যান্ড্রয়েড 4.1 (এপিআই লেভেল 16) ডিভাইসে রেন্ডারস্ক্রিপ্ট কার্নেলের সাথে সামঞ্জস্যপূর্ণ সমস্যাগুলি সমাধান করা হয়েছে।

Android 5.1 (API স্তর 22) এর জন্য সমর্থন যোগ করা হয়েছে।

32-বিট মোডে ডেটা লেআউট তৈরির সমস্যা সমাধান করা হয়েছে।

স্থির মাল্টিডেক্স স্ক্রিপ্ট সমস্যা.

64K পদ্ধতির রেফারেন্স সীমা মোকাবেলার জন্য APK এবং জ্যাক সমর্থনের জন্য মাল্টিডেক্স ফাইল সমর্থন যোগ করা হয়েছে।

উইন্ডোজ প্ল্যাটফর্মে অস্থিরতার সমস্যা সমাধানের জন্য Eclipse ADT-এর সম্পূর্ণ আপডেট।

উইন্ডোজে Eclipse ADT-এর জন্য প্রাথমিক আপডেট। অনুগ্রহ করে রিভিশন 21.0.2 ব্যবহার করুন।

সাধারণ নোট:
  • Android 5.0 (API স্তর 21) এর জন্য সমর্থন যোগ করা হয়েছে।
  • RenderScript এখন API স্তর 21 এবং উচ্চতর জন্য বিজোড় 32/64-বিট অপারেশন সমর্থন করে।
  • JaCoCo প্লাগইন ব্যবহার করার সময় Gradle বিল্ড সিস্টেমের সাথে সমস্যার সমাধান করা হয়েছে। ( ইস্যু 69174 )
  • উইন্ডোজে দীর্ঘ কমান্ড লাইনের সাথে ব্যবহারের জন্য একটি ইনপুট-তালিকা বিকল্প যোগ করা হয়েছে।
সাধারণ নোট:
  • Android Wear-এর জন্য সমর্থন যোগ করা হয়েছে।
সাধারণ নোট:
  • বিল্ড টুলে zipalign যোগ করা হয়েছে।
  • কম্পাইল করতে ব্যর্থ হওয়া XML ফাইলগুলিকে উপেক্ষা করার জন্য পরিবর্তিত aapt

রেন্ডারস্ক্রিপ্ট সমর্থন সহ একটি সমস্যা সমাধান করা হয়েছে।

স্থির রেন্ডারস্ক্রিপ্ট বিল্ড সমস্যা:
  • রেন্ডারস্ক্রিপ্ট বিটকোড এনকোডিংয়ের সাথে একটি সমস্যা সমাধান করা হয়েছে। ( ইস্যু 64775 )
  • RenderScript অনুপস্থিত গণিত চিহ্নগুলির সাথে একটি সমস্যা সমাধান করা হয়েছে ( ইস্যু 64110 )

স্থির বিবিধ বিল্ড সমস্যা:
  • Gradle এর সাথে NDK মোডে রেন্ডারস্ক্রিপ্ট কম্পাইল করার জন্য স্থির সমর্থন।
  • dx বিল্ডে BufferOverflowException সমস্যা স্থির করা হয়েছে। ( ইস্যু 61710 )

Android 4.4 (API স্তর 19) বিল্ড লক্ষ্যগুলির জন্য সমর্থন যোগ করা হয়েছে।

বেশ কিছু ছোটখাট বিল্ড সমস্যা সমাধান করা হয়েছে।

রেন্ডারস্ক্রিপ্ট সমর্থন মোডের সাথে স্থির সমস্যা।

Android 4.3 (API স্তর 18) বিল্ড লক্ষ্যগুলির জন্য সমর্থন যোগ করা হয়েছে।

প্রাথমিক মুক্তি।

সাধারণ নোট:
  • Android 4.2 (API স্তর 17) বিল্ড লক্ষ্যগুলির জন্য অন্তর্ভুক্ত সমর্থন।
  • প্ল্যাটফর্ম-টুল কম্পোনেন্ট থেকে Android SDK-এর বিল্ড-নির্দিষ্ট উপাদানগুলিকে ডিকপল করা হয়েছে, যাতে বিল্ড টুলগুলি ইন্টিগ্রেটেড ডেভেলপমেন্ট এনভায়রনমেন্ট (IDE) উপাদানগুলির থেকে স্বাধীনভাবে আপডেট করা যায়৷
,

Android SDK Build-Tools হল Android SDK-এর একটি উপাদান যা Android অ্যাপ তৈরির জন্য প্রয়োজনীয়৷ এটি <sdk>/build-tools/ ডিরেক্টরিতে ইনস্টল করা আছে।

অ্যান্ড্রয়েড SDK ম্যানেজার ব্যবহার করে সর্বশেষ সংস্করণ ডাউনলোড করে আপনার বিল্ড টুলস কম্পোনেন্ট সবসময় আপডেট রাখা উচিত। আপনি যদি Gradle 3.0.0 বা উচ্চতর জন্য Android প্লাগইন ব্যবহার করেন, তাহলে আপনার প্রকল্প স্বয়ংক্রিয়ভাবে প্লাগইন নির্দিষ্ট করা বিল্ড টুলের একটি ডিফল্ট সংস্করণ ব্যবহার করে। বিল্ড টুলের একটি ভিন্ন সংস্করণ ব্যবহার করতে, আপনার মডিউলের build.gradlebuildToolsVersion ব্যবহার করে এটি উল্লেখ করুন, নিম্নরূপ:

android {
    buildToolsVersion "34.0.0"
    ...
}
android {
    buildToolsVersion = "34.0.0"
    ...
}

রিভিশন

নীচের বিভাগগুলি বিল্ড টুলের রিলিজ সম্পর্কে নোট প্রদান করে। আপনার SDK-এ বিল্ড টুলগুলির কোন সংশোধনগুলি উপলব্ধ তা নির্ধারণ করতে, Android SDK ম্যানেজারে ইনস্টল করা প্যাকেজ তালিকা দেখুন৷

বিল্ড টুলস, রিভিশন 34.0.0 RC3 (এপ্রিল 2023)

সাধারণ বাগ সংশোধন এবং উন্নতি।

এই আপডেটে অ্যান্ড্রয়েড 14 প্রিভিউ এপিআই সহ বিল্ডিংয়ের জন্য সমর্থন অন্তর্ভুক্ত রয়েছে।

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

  • core-lambda-stubs.jar সংস্করণ 33.0.0 macOS বনাম Linux/Windows-এ ভিন্ন। ( ইস্যু #237299698 দেখুন।)

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

এই আপডেটে অ্যান্ড্রয়েড 11 প্রিভিউ এপিআই সহ বিল্ডিংয়ের জন্য সমর্থন অন্তর্ভুক্ত রয়েছে।

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

  • ম্যাকোস ক্যাটালিনায় রেন্ডারস্ক্রিপ্টের সাথে সমস্যা তৈরি করুন। ( ইস্যু #142590626 দেখুন)

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

এই আপডেটে API স্তর 29 এর সাথে বিল্ডিংয়ের জন্য সমর্থন অন্তর্ভুক্ত রয়েছে।

এই আপডেটে অ্যান্ড্রয়েড গ্রেডল প্লাগইন 3.2.0 এর জন্য সমর্থন রয়েছে এবং নিম্নলিখিত সমস্যাগুলির সমাধান করে:

  • একটি JNI লাইব্রেরি বাগ সংশোধন করা হয়েছে যার কারণে androidx.renderscript.RenderScript.create() কল করার সময় অ্যাপগুলি ক্র্যাশ হয়েছে৷
  • androidx.annotation রিসোর্স সহ Program type already present বিল্ড ত্রুটির কারণে একটি বাগ সংশোধন করা হয়েছে৷

D8 এর সর্বশেষ সংস্করণ অন্তর্ভুক্ত।

আপনি যখন Java 8 ভাষা বৈশিষ্ট্য সক্রিয় করেন তখন ল্যাম্বডাস কম্পাইল করার জন্য সমর্থন উন্নত করে।

Java 8 ভাষার বৈশিষ্ট্যগুলির জন্য সমর্থন উন্নত করে৷

পরীক্ষার APKগুলির জন্য উত্তরাধিকার মাল্টিডেক্সের জন্য সমর্থন যোগ করে। ( ইস্যু #37324038 )

সাধারণ বাগ ফিক্স ছাড়াও, এই রিলিজে নিম্নলিখিত আপডেটগুলি অন্তর্ভুক্ত রয়েছে:

  • apksigner 0.8 সংস্করণে আপডেট করে:
    • জাভা 9 এর সাথে সামঞ্জস্যপূর্ণ। ( ইস্যু #37137869 )
    • নন-ASCII পাসওয়ার্ড ব্যবহার করে এনক্রিপ্ট করা কীস্টোর এবং কীগুলি পরিচালনা করার জন্য নতুন --pass-encoding পরামিতি। আপনি যদি Java 9-এ স্যুইচ করেন এবং apksigner আপনার কীস্টোর বা কী ডিক্রিপ্ট করতে ব্যর্থ হয়, তাহলে কীস্টোর বা কী তৈরি করতে আপনি যে অক্ষর এনকোডিং ব্যবহার করেছেন তা নির্দিষ্ট করতে এই প্যারামিটারটি ব্যবহার করুন। আরও তথ্যের জন্য, apksigner ডকুমেন্টেশন দেখুন বা কমান্ডলাইন থেকে apksigner sign --help চালান।
    • একটি অসমর্থিত ডাইজেস্ট বা স্বাক্ষর অ্যালগরিদমের কারণে apksigner একটি JAR স্বাক্ষর যাচাই করতে না পারলে আরও ভাল ত্রুটি বার্তা৷ ( ইস্যু #63525618 )
  • Gradle 3.0.0-beta7 বা উচ্চতর জন্য Android প্লাগইন ব্যবহার করার সময় AAPT2 ডেমন মোডের জন্য সমর্থন।

সাধারণ বাগ ফিক্স ছাড়াও, এই রিলিজটি apksigner বিল্ড টুল প্যাকেজে পুনরুদ্ধার করে (এটি 26.0.0 সংস্করণে ভুল করে বাদ দেওয়া হয়েছিল) এবং টুলটিতে নিম্নলিখিত আপডেটগুলি অন্তর্ভুক্ত করে:

  • নিরাপদ হার্ডওয়্যারে রাখা কী দিয়ে সাইন ইন করার অনুমতি দিতে PKCS #11 সমর্থন যোগ করে। ( ইস্যু #37140484 )
  • স্বাক্ষর করার আগে অতিরিক্ত JCA প্রদানকারীদের লোড করার জন্য সমর্থন যোগ করে।
  • Honors android:targetSandboxVersion APK যাচাই করার সময়।
  • স্বাক্ষর করার সময়, ফাইলগুলির সাথে APK প্রত্যাখ্যান করে যাতে ফাইলের নামের মধ্যে 'CR' (ক্যারেজ রিটার্ন), 'LF' (লাইন ফিড), বা 'NUL' (নাল) বিশেষ অক্ষর অন্তর্ভুক্ত থাকে।
  • স্পেস ধারণকারী প্যারামিটার সঠিকভাবে পরিচালনা করতে apksigner.bat ঠিক করে। ( ইস্যু #38132450 )
  • MANIFEST.MF এ একই এন্ট্রির জন্য একাধিক ডাইজেস্ট উপস্থিত থাকলে JAR স্বাক্ষর যাচাইকরণে একটি বাগ সংশোধন করে৷ ( ইস্যু #38497270 )

API স্তর 26 এর সাথে বিল্ডিংয়ের জন্য সমর্থন যোগ করে এবং এতে সাধারণ বাগ ফিক্স রয়েছে।

apksigner এর আপডেট:

  • বিদ্যমান --out প্যারামিটারের সাথে প্রতিসাম্যের জন্য --in প্যারামিটার যোগ করা হয়েছে।
  • আপনি --key-pass ব্যবহার করে কী পাসওয়ার্ড নির্দিষ্ট না করলে, apksigner কী-স্টোর পাসওয়ার্ড কী পাসওয়ার্ড হিসেবে ব্যবহার করে। যাইহোক, যদি কীটির জন্য আলাদা পাসওয়ার্ডের প্রয়োজন হয়, তাহলে আপনাকে এখন কমান্ড লাইন থেকে কী পাসওয়ার্ড লিখতে বলা হবে। ( ইস্যু #37134986 )
  • নন-ASCII পাসওয়ার্ডের জন্য jarsigner এর সাথে সামঞ্জস্য যোগ করা হয়েছে। ( ইস্যু #37135737 )

বাগ ফিক্স।

এই রিলিজে বাগ ফিক্স এবং apksigner এর নিম্নলিখিত উন্নতিগুলি অন্তর্ভুক্ত রয়েছে:

  • অস্পষ্ট JAR এন্ট্রি নাম সহ APKগুলির জন্য সমর্থন।
  • --print-certs সুইচ এখন MD5 আঙ্গুলের ছাপ ফেলে দেয়।

জ্যাক টুলচেইনের জন্য বাগ ফিক্স:

  • নন-ASCII সোর্স ফাইল সমর্থন করে জ্যাক সহ স্থির সমস্যা। ( ইস্যু #218892 )
  • স্থির সমস্যা যা কিছু সংকলনের সময় একটি AssertionError সৃষ্টি করে। ( ইস্যু #208414 )
  • apksigner যোগ করা হয়েছে, jarsigner প্রতিস্থাপন করার জন্য একটি APK সাইনিং টুল। ডিফল্টরূপে, apksigner প্রচলিত JAR সাইনিং স্কিম ( jarsigner দ্বারা ব্যবহৃত) এবং Android 7.0 (API স্তর 24) এ চালু করা APK স্বাক্ষর স্কিম v2 ব্যবহার করে APK সাইন করে। APK স্বাক্ষর স্কিম v2 এর সাথে স্বাক্ষরিত একটি APK-তে যে কোনো পরিবর্তন তার স্বাক্ষরকে বাতিল করে। এইভাবে, APK পোস্ট-প্রসেসিং, যেমন zipalign , অবশ্যই apksigner চালু করার আগে সঞ্চালিত হবে, পরে নয়। apksigner এর আগে zipalign invoking ভাল কাজ করে কারণ apksigner APK সারিবদ্ধকরণ এবং কম্প্রেশন সংরক্ষণ করে ( jarsigner বিপরীতে)।
  • arm64 ডিভাইসে RenderScript সাপোর্ট লাইব্রেরিতে সমস্যা সমাধান করুন।
  • নির্দিষ্ট জেলি বিন ডিভাইসে রেন্ডারস্ক্রিপ্ট সাপোর্ট লাইব্রেরিতে সমস্যা সমাধান করুন।
  • renderscriptTargetAPI 21+ সমর্থন করুন যখন গ্রেডল, রিভিশন 2.1.0 এবং তার উপরে Android প্লাগইন ব্যবহার করুন।
  • dx টুলের মার্জিং কর্মক্ষমতা উন্নত করা হয়েছে।
  • উইন্ডোজের জন্য রেন্ডারস্ক্রিপ্ট কম্পাইলারে স্থির সমস্যা।

রেন্ডারস্ক্রিপ্ট টুলে সমস্যা সমাধান করা হয়েছে।

Android 6.0 (API লেভেল 23) রিলিজের জন্য সমর্থন যোগ করা হয়েছে।

অ্যান্ড্রয়েড 4.4 (এপিআই লেভেল 19) থেকে অ্যান্ড্রয়েড 4.1 (এপিআই লেভেল 16) ডিভাইসে রেন্ডারস্ক্রিপ্ট কার্নেলের সাথে সামঞ্জস্যপূর্ণ সমস্যাগুলি সমাধান করা হয়েছে।

Android 5.1 (API স্তর 22) এর জন্য সমর্থন যোগ করা হয়েছে।

32-বিট মোডে ডেটা লেআউট তৈরির সমস্যা সমাধান করা হয়েছে।

স্থির মাল্টিডেক্স স্ক্রিপ্ট সমস্যা.

64K পদ্ধতির রেফারেন্স সীমা মোকাবেলার জন্য APK এবং জ্যাক সমর্থনের জন্য মাল্টিডেক্স ফাইল সমর্থন যোগ করা হয়েছে।

উইন্ডোজ প্ল্যাটফর্মে অস্থিরতার সমস্যা সমাধানের জন্য Eclipse ADT-এর সম্পূর্ণ আপডেট।

উইন্ডোজে Eclipse ADT-এর জন্য প্রাথমিক আপডেট। অনুগ্রহ করে রিভিশন 21.0.2 ব্যবহার করুন।

সাধারণ নোট:
  • Android 5.0 (API স্তর 21) এর জন্য সমর্থন যোগ করা হয়েছে।
  • RenderScript এখন API স্তর 21 এবং উচ্চতর জন্য বিজোড় 32/64-বিট অপারেশন সমর্থন করে।
  • JaCoCo প্লাগইন ব্যবহার করার সময় Gradle বিল্ড সিস্টেমের সাথে সমস্যার সমাধান করা হয়েছে। ( ইস্যু 69174 )
  • উইন্ডোজে দীর্ঘ কমান্ড লাইনের সাথে ব্যবহারের জন্য একটি ইনপুট-তালিকা বিকল্প যোগ করা হয়েছে।
সাধারণ নোট:
  • Android Wear-এর জন্য সমর্থন যোগ করা হয়েছে।
সাধারণ নোট:
  • বিল্ড টুলে zipalign যোগ করা হয়েছে।
  • কম্পাইল করতে ব্যর্থ হওয়া XML ফাইলগুলিকে উপেক্ষা করার জন্য পরিবর্তিত aapt

রেন্ডারস্ক্রিপ্ট সমর্থন সহ একটি সমস্যা সমাধান করা হয়েছে।

স্থির রেন্ডারস্ক্রিপ্ট বিল্ড সমস্যা:
  • রেন্ডারস্ক্রিপ্ট বিটকোড এনকোডিংয়ের সাথে একটি সমস্যা সমাধান করা হয়েছে। ( ইস্যু 64775 )
  • RenderScript অনুপস্থিত গণিত চিহ্নগুলির সাথে একটি সমস্যা সমাধান করা হয়েছে ( ইস্যু 64110 )

স্থির বিবিধ বিল্ড সমস্যা:
  • Gradle এর সাথে NDK মোডে রেন্ডারস্ক্রিপ্ট কম্পাইল করার জন্য স্থির সমর্থন।
  • dx বিল্ডে BufferOverflowException সমস্যা স্থির করা হয়েছে। ( ইস্যু 61710 )

Android 4.4 (API স্তর 19) বিল্ড লক্ষ্যগুলির জন্য সমর্থন যোগ করা হয়েছে।

বেশ কিছু ছোটখাট বিল্ড সমস্যা সমাধান করা হয়েছে।

রেন্ডারস্ক্রিপ্ট সমর্থন মোডের সাথে স্থির সমস্যা।

Android 4.3 (API স্তর 18) বিল্ড লক্ষ্যগুলির জন্য সমর্থন যোগ করা হয়েছে।

প্রাথমিক মুক্তি।

সাধারণ নোট:
  • Android 4.2 (API স্তর 17) বিল্ড লক্ষ্যগুলির জন্য অন্তর্ভুক্ত সমর্থন।
  • প্ল্যাটফর্ম-টুল কম্পোনেন্ট থেকে Android SDK-এর বিল্ড-নির্দিষ্ট উপাদানগুলিকে ডিকপল করা হয়েছে, যাতে বিল্ড টুলগুলি ইন্টিগ্রেটেড ডেভেলপমেন্ট এনভায়রনমেন্ট (IDE) উপাদানগুলির থেকে স্বাধীনভাবে আপডেট করা যায়৷
,

Android SDK Build-Tools হল Android SDK-এর একটি উপাদান যা Android অ্যাপ তৈরির জন্য প্রয়োজনীয়৷ এটি <sdk>/build-tools/ ডিরেক্টরিতে ইনস্টল করা আছে।

অ্যান্ড্রয়েড SDK ম্যানেজার ব্যবহার করে সর্বশেষ সংস্করণ ডাউনলোড করে আপনার বিল্ড টুলস কম্পোনেন্ট সবসময় আপডেট রাখা উচিত। আপনি যদি Gradle 3.0.0 বা উচ্চতর জন্য Android প্লাগইন ব্যবহার করেন, তাহলে আপনার প্রকল্প স্বয়ংক্রিয়ভাবে প্লাগইন নির্দিষ্ট করা বিল্ড টুলের একটি ডিফল্ট সংস্করণ ব্যবহার করে। বিল্ড টুলের একটি ভিন্ন সংস্করণ ব্যবহার করতে, আপনার মডিউলের build.gradlebuildToolsVersion ব্যবহার করে এটি উল্লেখ করুন, নিম্নরূপ:

android {
    buildToolsVersion "34.0.0"
    ...
}
android {
    buildToolsVersion = "34.0.0"
    ...
}

রিভিশন

নীচের বিভাগগুলি বিল্ড টুলের রিলিজ সম্পর্কে নোট প্রদান করে। আপনার SDK-এ বিল্ড টুলগুলির কোন সংশোধনগুলি উপলব্ধ তা নির্ধারণ করতে, Android SDK ম্যানেজারে ইনস্টল করা প্যাকেজ তালিকা দেখুন৷

বিল্ড টুলস, রিভিশন 34.0.0 RC3 (এপ্রিল 2023)

সাধারণ বাগ সংশোধন এবং উন্নতি।

এই আপডেটে অ্যান্ড্রয়েড 14 প্রিভিউ এপিআই সহ বিল্ডিংয়ের জন্য সমর্থন অন্তর্ভুক্ত রয়েছে।

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

  • core-lambda-stubs.jar সংস্করণ 33.0.0 macOS বনাম Linux/Windows-এ ভিন্ন। ( ইস্যু #237299698 দেখুন।)

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

এই আপডেটে অ্যান্ড্রয়েড 11 প্রিভিউ এপিআই সহ বিল্ডিংয়ের জন্য সমর্থন অন্তর্ভুক্ত রয়েছে।

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

  • ম্যাকোস ক্যাটালিনায় রেন্ডারস্ক্রিপ্টের সাথে সমস্যা তৈরি করুন। ( ইস্যু #142590626 দেখুন)

এই আপডেটটি নিম্নলিখিত সমস্যার সমাধান করে:

এই আপডেটে API স্তর 29 এর সাথে বিল্ডিংয়ের জন্য সমর্থন অন্তর্ভুক্ত রয়েছে।

এই আপডেটে অ্যান্ড্রয়েড গ্রেডল প্লাগইন 3.2.0 এর জন্য সমর্থন রয়েছে এবং নিম্নলিখিত সমস্যাগুলির সমাধান করে:

  • একটি JNI লাইব্রেরি বাগ সংশোধন করা হয়েছে যার কারণে androidx.renderscript.RenderScript.create() কল করার সময় অ্যাপগুলি ক্র্যাশ হয়েছে৷
  • androidx.annotation রিসোর্স সহ Program type already present বিল্ড ত্রুটির কারণে একটি বাগ সংশোধন করা হয়েছে৷

D8 এর সর্বশেষ সংস্করণ অন্তর্ভুক্ত।

আপনি যখন Java 8 ভাষা বৈশিষ্ট্য সক্রিয় করেন তখন ল্যাম্বডাস কম্পাইল করার জন্য সমর্থন উন্নত করে।

Java 8 ভাষার বৈশিষ্ট্যগুলির জন্য সমর্থন উন্নত করে৷

পরীক্ষার APKগুলির জন্য উত্তরাধিকার মাল্টিডেক্সের জন্য সমর্থন যোগ করে। ( ইস্যু #37324038 )

সাধারণ বাগ ফিক্স ছাড়াও, এই রিলিজে নিম্নলিখিত আপডেটগুলি অন্তর্ভুক্ত রয়েছে:

  • apksigner 0.8 সংস্করণে আপডেট করে:
    • জাভা 9 এর সাথে সামঞ্জস্যপূর্ণ। ( ইস্যু #37137869 )
    • নন-ASCII পাসওয়ার্ড ব্যবহার করে এনক্রিপ্ট করা কীস্টোর এবং কীগুলি পরিচালনা করার জন্য নতুন --pass-encoding পরামিতি। আপনি যদি Java 9-এ স্যুইচ করেন এবং apksigner আপনার কীস্টোর বা কী ডিক্রিপ্ট করতে ব্যর্থ হয়, তাহলে কীস্টোর বা কী তৈরি করতে আপনি যে অক্ষর এনকোডিং ব্যবহার করেছেন তা নির্দিষ্ট করতে এই প্যারামিটারটি ব্যবহার করুন। আরও তথ্যের জন্য, apksigner ডকুমেন্টেশন দেখুন বা কমান্ডলাইন থেকে apksigner sign --help চালান।
    • একটি অসমর্থিত ডাইজেস্ট বা স্বাক্ষর অ্যালগরিদমের কারণে apksigner একটি JAR স্বাক্ষর যাচাই করতে না পারলে আরও ভাল ত্রুটি বার্তা৷ ( ইস্যু #63525618 )
  • Gradle 3.0.0-beta7 বা উচ্চতর জন্য Android প্লাগইন ব্যবহার করার সময় AAPT2 ডেমন মোডের জন্য সমর্থন।

সাধারণ বাগ ফিক্স ছাড়াও, এই রিলিজটি apksigner বিল্ড টুল প্যাকেজে পুনরুদ্ধার করে (এটি 26.0.0 সংস্করণে ভুল করে বাদ দেওয়া হয়েছিল) এবং টুলটিতে নিম্নলিখিত আপডেটগুলি অন্তর্ভুক্ত করে:

  • সুরক্ষিত হার্ডওয়্যারে রাখা কী দিয়ে সাইন ইন করার অনুমতি দিতে PKCS #11 সমর্থন যোগ করে। ( ইস্যু #37140484 )
  • স্বাক্ষর করার আগে অতিরিক্ত JCA প্রদানকারীদের লোড করার জন্য সমর্থন যোগ করে।
  • Honors android:targetSandboxVersion APK যাচাই করার সময়।
  • স্বাক্ষর করার সময়, ফাইলগুলির সাথে APK প্রত্যাখ্যান করে যাতে ফাইলের নামের মধ্যে 'CR' (ক্যারেজ রিটার্ন), 'LF' (লাইন ফিড), বা 'NUL' (নাল) বিশেষ অক্ষর অন্তর্ভুক্ত থাকে।
  • স্পেস ধারণকারী প্যারামিটার সঠিকভাবে পরিচালনা করতে apksigner.bat ঠিক করে। ( ইস্যু #38132450 )
  • MANIFEST.MF এ একই এন্ট্রির জন্য একাধিক ডাইজেস্ট উপস্থিত থাকলে JAR স্বাক্ষর যাচাইকরণে একটি বাগ সংশোধন করে৷ ( ইস্যু #38497270 )

API স্তর 26 এর সাথে বিল্ডিংয়ের জন্য সমর্থন যোগ করে এবং এতে সাধারণ বাগ ফিক্স রয়েছে।

apksigner এর আপডেট:

  • বিদ্যমান --out প্যারামিটারের সাথে প্রতিসাম্যের জন্য --in প্যারামিটার যোগ করা হয়েছে।
  • আপনি --key-pass ব্যবহার করে কী পাসওয়ার্ড নির্দিষ্ট না করলে, apksigner কী-স্টোর পাসওয়ার্ড কী পাসওয়ার্ড হিসেবে ব্যবহার করে। যাইহোক, যদি কীটির জন্য আলাদা পাসওয়ার্ডের প্রয়োজন হয়, তাহলে আপনাকে এখন কমান্ড লাইন থেকে কী পাসওয়ার্ড লিখতে বলা হবে। ( ইস্যু #37134986 )
  • নন-ASCII পাসওয়ার্ডের জন্য jarsigner এর সাথে সামঞ্জস্য যোগ করা হয়েছে। ( ইস্যু #37135737 )

বাগ ফিক্স।

এই রিলিজে বাগ ফিক্স এবং apksigner এর নিম্নলিখিত উন্নতিগুলি অন্তর্ভুক্ত রয়েছে:

  • অস্পষ্ট JAR এন্ট্রি নাম সহ APKগুলির জন্য সমর্থন।
  • --print-certs সুইচ এখন MD5 আঙ্গুলের ছাপ ফেলে দেয়।

জ্যাক টুলচেইনের জন্য বাগ ফিক্স:

  • নন-ASCII সোর্স ফাইল সমর্থন করে জ্যাক সহ স্থির সমস্যা। ( ইস্যু #218892 )
  • স্থির সমস্যা যা কিছু সংকলনের সময় একটি AssertionError সৃষ্টি করে। ( ইস্যু #208414 )
  • apksigner যোগ করা হয়েছে, jarsigner প্রতিস্থাপন করার জন্য একটি APK সাইনিং টুল। ডিফল্টরূপে, apksigner প্রচলিত JAR সাইনিং স্কিম ( jarsigner দ্বারা ব্যবহৃত) এবং Android 7.0 (API স্তর 24) এ চালু করা APK স্বাক্ষর স্কিম v2 ব্যবহার করে APK সাইন করে। APK স্বাক্ষর স্কিম v2 এর সাথে স্বাক্ষরিত একটি APK-তে যেকোন পরিবর্তন তার স্বাক্ষরকে অকার্যকর করে। এইভাবে, APK পোস্ট-প্রসেসিং, যেমন zipalign , অবশ্যই apksigner চালু করার আগে সঞ্চালিত হবে, পরে নয়। apksigner এর আগে zipalign invoking ভাল কাজ করে কারণ apksigner APK সারিবদ্ধকরণ এবং কম্প্রেশন সংরক্ষণ করে ( jarsigner বিপরীতে)।
  • arm64 ডিভাইসে RenderScript সাপোর্ট লাইব্রেরিতে সমস্যা সমাধান করুন।
  • নির্দিষ্ট জেলি বিন ডিভাইসে রেন্ডারস্ক্রিপ্ট সাপোর্ট লাইব্রেরিতে সমস্যা সমাধান করুন।
  • renderscriptTargetAPI 21+ সমর্থন করুন যখন গ্রেডল, রিভিশন 2.1.0 এবং তার উপরে Android প্লাগইন ব্যবহার করুন।
  • dx টুলের মার্জিং কর্মক্ষমতা উন্নত করা হয়েছে।
  • উইন্ডোজের জন্য রেন্ডারস্ক্রিপ্ট কম্পাইলারে স্থির সমস্যা।

রেন্ডারস্ক্রিপ্ট টুলে সমস্যা সমাধান করা হয়েছে।

Android 6.0 (API লেভেল 23) রিলিজের জন্য সমর্থন যোগ করা হয়েছে।

অ্যান্ড্রয়েড 4.4 (এপিআই লেভেল 19) থেকে অ্যান্ড্রয়েড 4.1 (এপিআই লেভেল 16) ডিভাইসে রেন্ডারস্ক্রিপ্ট কার্নেলের সাথে সামঞ্জস্যপূর্ণ সমস্যাগুলি সমাধান করা হয়েছে।

Android 5.1 (API স্তর 22) এর জন্য সমর্থন যোগ করা হয়েছে।

32-বিট মোডে ডেটা লেআউট তৈরির সমস্যা সমাধান করা হয়েছে।

স্থির মাল্টিডেক্স স্ক্রিপ্ট সমস্যা.

64K পদ্ধতির রেফারেন্স সীমা মোকাবেলার জন্য APK এবং জ্যাক সমর্থনের জন্য মাল্টিডেক্স ফাইল সমর্থন যোগ করা হয়েছে।

উইন্ডোজ প্ল্যাটফর্মে অস্থিরতার সমস্যা সমাধানের জন্য Eclipse ADT-এর সম্পূর্ণ আপডেট।

উইন্ডোজে Eclipse ADT-এর জন্য প্রাথমিক আপডেট। অনুগ্রহ করে রিভিশন 21.0.2 ব্যবহার করুন।

সাধারণ নোট:
  • Android 5.0 (API স্তর 21) এর জন্য সমর্থন যোগ করা হয়েছে।
  • RenderScript এখন API স্তর 21 এবং উচ্চতর জন্য বিজোড় 32/64-বিট অপারেশন সমর্থন করে।
  • JaCoCo প্লাগইন ব্যবহার করার সময় Gradle বিল্ড সিস্টেমের সাথে সমস্যার সমাধান করা হয়েছে। ( ইস্যু 69174 )
  • উইন্ডোজে দীর্ঘ কমান্ড লাইনের সাথে ব্যবহারের জন্য একটি ইনপুট-তালিকা বিকল্প যোগ করা হয়েছে।
সাধারণ নোট:
  • Android Wear-এর জন্য সমর্থন যোগ করা হয়েছে।
সাধারণ নোট:
  • বিল্ড টুলে zipalign যোগ করা হয়েছে।
  • কম্পাইল করতে ব্যর্থ হওয়া XML ফাইলগুলিকে উপেক্ষা করার জন্য পরিবর্তিত aapt

রেন্ডারস্ক্রিপ্ট সমর্থন সহ একটি সমস্যা সমাধান করা হয়েছে।

স্থির রেন্ডারস্ক্রিপ্ট বিল্ড সমস্যা:
  • রেন্ডারস্ক্রিপ্ট বিটকোড এনকোডিংয়ের সাথে একটি সমস্যা সমাধান করা হয়েছে। ( ইস্যু 64775 )
  • RenderScript অনুপস্থিত গণিত চিহ্নগুলির সাথে একটি সমস্যা সমাধান করা হয়েছে ( ইস্যু 64110 )

স্থির বিবিধ বিল্ড সমস্যা:
  • Gradle এর সাথে NDK মোডে রেন্ডারস্ক্রিপ্ট কম্পাইল করার জন্য স্থির সমর্থন।
  • dx বিল্ডে BufferOverflowException সমস্যা স্থির করা হয়েছে। ( ইস্যু 61710 )

Android 4.4 (API স্তর 19) বিল্ড লক্ষ্যগুলির জন্য সমর্থন যোগ করা হয়েছে।

বেশ কিছু ছোটখাট বিল্ড সমস্যা সমাধান করা হয়েছে।

রেন্ডারস্ক্রিপ্ট সমর্থন মোডের সাথে স্থির সমস্যা।

Android 4.3 (API স্তর 18) বিল্ড লক্ষ্যগুলির জন্য সমর্থন যোগ করা হয়েছে।

প্রাথমিক মুক্তি।

সাধারণ নোট:
  • Android 4.2 (API স্তর 17) বিল্ড লক্ষ্যগুলির জন্য অন্তর্ভুক্ত সমর্থন।
  • প্ল্যাটফর্ম-টুল কম্পোনেন্ট থেকে Android SDK-এর বিল্ড-নির্দিষ্ট উপাদানগুলিকে ডিকপল করা হয়েছে, যাতে বিল্ড টুলগুলি ইন্টিগ্রেটেড ডেভেলপমেন্ট এনভায়রনমেন্ট (IDE) উপাদানগুলির থেকে স্বাধীনভাবে আপডেট করা যায়৷