Android SDK বিল্ড-সরঞ্জাম, প্ল্যাটফর্ম-সরঞ্জাম এবং সরঞ্জামগুলি কী কী? এবং কোন সংস্করণ ব্যবহার করা উচিত?


331

আমি জানি এটি একটি খুব প্রাথমিক প্রশ্ন, তবে আমি অবাক করে দিয়েছি, অ্যান্ড্রয়েড এসডিকে বিল্ড-সরঞ্জামগুলি সম্পর্কে আমি কোনও দলিল খুঁজে পাইনি। অ্যান্ড্রয়েড এসডিকে সরঞ্জাম এবং অ্যান্ড্রয়েড এসডিকে প্ল্যাটফর্ম-সরঞ্জামগুলি ছাড়াও, সংযুক্ত স্ক্রিনশটটিতে দেখানো হয়েছে এমন একটি গুচ্ছ অ্যান্ড্রয়েড এসডিকে বিল্ড-সরঞ্জাম রয়েছে। কেউ কি এই উত্সটি ব্যাখ্যা করে এমন কোনও উত্সকে নির্দেশ করতে পারে এবং Android SDK বিল্ড-সরঞ্জামগুলির একটি নির্দিষ্ট সংস্করণ কীভাবে ব্যবহারের জন্য চয়ন করা যায় তা ব্যাখ্যা করতে সহায়তা করতে পারে?

এখানে চিত্র বর্ণনা লিখুন

সম্পাদিত (2014-02-27) :

আমি এখনও সমস্ত সরঞ্জাম পুরোপুরি বুঝতে পারি না। গুগলের সর্বশেষ নথিগুলির উপর ভিত্তি করে নীচে আমার সীমিত বোঝাপড়াটি দেওয়া হয়েছে:

  • Android SDK বিল্ড-সরঞ্জামগুলি Android SDK প্ল্যাটফর্ম-সরঞ্জামগুলির উপাদান হিসাবে ব্যবহৃত হত । এগুলি অ্যান্ড্রয়েড এসডিকে প্ল্যাটফর্ম-সরঞ্জামগুলি থেকে ডিকপল করা হয়েছে, যাতে বিল্ড সরঞ্জামগুলি সংহত বিকাশ পরিবেশের (আইডিই) উপাদানগুলি থেকে স্বাধীনভাবে আপডেট করা যায়।
  • সর্বশেষতম অ্যান্ড্রয়েড প্ল্যাটফর্মের বৈশিষ্ট্যগুলিকে সমর্থন করতে অ্যান্ড্রয়েড এসকেকে প্ল্যাটফর্ম-সরঞ্জামগুলি কাস্টমাইজ করা হয়েছে। তারা পশ্চাদপটে সামঞ্জস্যপূর্ণ যাতে আপনি সর্বদা অ্যান্ড্রয়েড এসডিকে প্ল্যাটফর্ম-সরঞ্জামগুলির সর্বশেষ আপডেট ব্যবহার করেন এমনকি আপনার অ্যাপ্লিকেশন পুরানো অ্যান্ড্রয়েড প্ল্যাটফর্মগুলিকে লক্ষ্য করে।
  • এসডিকে সরঞ্জামগুলি প্ল্যাটফর্ম স্বতন্ত্র এবং আপনি কোন অ্যান্ড্রয়েড প্ল্যাটফর্মটি বিকাশ করছেন তা বিবেচ্য নয়।

আমি এখনও অ্যান্ড্রয়েড এসডিকে বিল্ড-সরঞ্জামগুলি অ্যান্ড্রয়েড এসডিকে প্ল্যাটফর্ম-সরঞ্জামগুলির বাইরে নিয়ে যাওয়ার যৌক্তিকতা বুঝতে পারি না যার একক উদাহরণ রয়েছে এবং আপডেটটি পরিচালনা করা সহজ। একমাত্র সম্ভাব্য কারণ যা আমি ভাবতে পারি তা হ'ল কিছু অ্যাপ্লিকেশনগুলিকে সেগুলি তৈরি করতে পুরানো বিল্ড উপাদানগুলির উপর নির্ভর করতে হয়। গুগলের নথিতে এটি উল্লেখ করা হয়েছে, তবে কেন তা ব্যাখ্যা করা হয়নি। রিলিজ নোটগুলি দেখে আপনি দেখতে পাবেন যে অ্যান্ড্রয়েড এসডিকে বিল্ড-সরঞ্জামগুলির আপডেটগুলি মূলত বাগগুলি ঠিক করতে বা / নতুন প্ল্যাটফর্মগুলির জন্য সমর্থন যোগ করার জন্য। কিছু অ্যাপ্লিকেশনগুলিতে অ্যান্ড্রয়েড এসডিকে বিল্ড-সরঞ্জামগুলির পুরানো সংস্করণগুলি ব্যবহার করার জন্য আমি কেবলমাত্র এটিই ভাবতে পারি যে তারা Android SDK বিল্ড-সরঞ্জামগুলির নির্দিষ্ট বাগগুলিতে নির্ভর করে। এই বাগগুলি তৈরি না করে এই অ্যাপ্লিকেশনগুলি সাধারণত কাজ করবে না। আমি আশা করি গুগল একটি বা দুটি উদাহরণ দিয়ে এই আরও ভাল ব্যাখ্যা করতে পারে যে সরঞ্জামগুলিতে এই বাগগুলি নির্দিষ্ট অ্যাপ্লিকেশনের জন্য কেন গুরুত্বপূর্ণ।

উত্তর:


88

Android SDK বিল্ড-সরঞ্জামগুলির সংস্করণ সম্পর্কে , উত্তরটি

ডিফল্টরূপে, অ্যান্ড্রয়েড এসকেকে বিল্ড সরঞ্জামগুলির সর্বশেষ ডাউনলোড করা সংস্করণ ব্যবহার করে।

সূত্র

Eclipse এ, আপনি ফাইলটিতে sdk.buildtoolsসম্পত্তি ব্যবহার করে একটি নির্দিষ্ট সংস্করণ চয়ন করতে পারেন project.properties

সমস্ত বিল্ড টুলস ব্যাখ্যা করার মতো কোনও অফিসিয়াল পৃষ্ঠা নেই বলে মনে হচ্ছে। এ সম্পর্কে অ্যান্ড্রয়েড দল কী বলে।

[বিল্ড] সরঞ্জামগুলি, যেমন এইডেল, অ্যাপট, ডেক্সডাম্প এবং ডিএক্স, সাধারণত অ্যান্ড্রয়েড বিল্ড সরঞ্জাম বা অ্যান্ড্রয়েড বিকাশ সরঞ্জাম (এডিটি) দ্বারা ডাকা হয়, সুতরাং আপনার খুব কমই সরাসরি এই সরঞ্জামগুলি আহ্বান করতে হবে। একটি সাধারণ নিয়ম হিসাবে, আপনার প্রয়োজন অনুসারে বিল্ড সরঞ্জাম বা এডিটি প্লাগইন কল করতে তাদের নির্ভর করা উচিত।

সূত্র

যাইহোক, এখানে সরঞ্জাম, প্ল্যাটফর্ম-সরঞ্জাম এবং বিল্ড-সরঞ্জামগুলির মধ্যে পার্থক্যের সংশ্লেষণ রয়েছে:

  • অ্যান্ড্রয়েড এসকেকে সরঞ্জামসমূহ
    • অবস্থান: $ANDROID_HOME/tools
    • প্রধান সরঞ্জামগুলি: পিঁপড়ের স্ক্রিপ্টগুলি (আপনার APK তৈরি করতে) এবং ddms(ডিবাগিংয়ের জন্য)
  • Android SDK প্ল্যাটফর্ম-সরঞ্জামগুলি
    • অবস্থান: $ANDROID_HOME/platform-tools
    • প্রধান সরঞ্জাম: adb(একটি এমুলেটর বা একটি অ্যান্ড্রয়েড ডিভাইসের অবস্থা পরিচালনা করতে)
  • Android SDK বিল্ড-সরঞ্জাম Build
    • অবস্থান: $ANDROID_HOME/build-tools/$VERSION/
    • নথিপত্র
    • প্রধান সরঞ্জামগুলি: aapt(আর.জেভা এবং স্বাক্ষরযুক্ত, স্বাক্ষরবিহীন এপিপি তৈরি করতে), dx(জাভা বাইটকোডকে ডালভিক বাইটকোডে রূপান্তর করতে), এবং zipalign(আপনার APK গুলি অনুকূলিত করতে)

আমি সত্যিই আনন্দিত যে বিভিন্ন বিল্ড সরঞ্জামগুলির সংস্করণগুলির জন্য পরিবর্তন লগ রয়েছে
ইওকস

@ ল্যাকটন আমি আমার প্রকল্পের জন্য পুরানো বিল্ড সরঞ্জাম (সংস্করণ 17) ব্যবহার করেছি। আমি কি এটি সর্বশেষতম বিল্ড সরঞ্জাম দিয়ে পুনর্নির্মাণ করতে পারি?
ব্যবহারকারী 1156041

আমরা কি গ্রহন এবং স্টুডিওর জন্য একই sdk + বিল্ড সরঞ্জামগুলি ব্যবহার করতে পারি?
মুহাম্মদ বাবর

38

অ্যান্ড্রয়েড এসডিকে বিল্ড সরঞ্জামগুলি অ্যান্ড্রয়েড অ্যাপ্লিকেশনটি ডিবাগ, বিল্ড, রান এবং পরীক্ষার জন্য ব্যবহৃত হয়।

অ্যান্ড্রয়েড বিল্ড সরঞ্জামগুলি কমান্ড লাইন বা আইডিই (অর্থাত্ একলাইপস বা অ্যান্ড্রয়েড স্টুডিও) থেকে বিকাশ এবং কাজ করতে ব্যবহৃত হতে পারে।

এছাড়াও অ্যান্ড্রয়েড ডিভাইসগুলি সংযুক্ত করতে এবং সেগুলি রুট করার জন্য ব্যবহৃত হয় fast (ফাস্টবूट, অ্যাডবি এবং আরও অনেক কিছু ..)

সর্বদা সর্বশেষ ব্যবহার করুন। (প্রস্তাবিত)

Android বিল্ড সরঞ্জাম এবং আদেশগুলি সম্পর্কে আরও তথ্য


তথ্যের জন্য ধন্যবাদ। আপনি কী বোঝাতে চেয়েছেন যে অ্যান্ড্রয়েড বিল্ড সরঞ্জামগুলি "অ্যান্ড্রয়েড ডিভাইসগুলি সংযুক্ত করতে এবং সেগুলি রুট করতে ব্যবহৃত হয়"? অ্যাডবয়েড অ্যান্ড্রয়েড প্ল্যাটফর্ম সরঞ্জামগুলির একটি অংশ। কাজ করতে অ্যাড্রয়েড কি বিল্ড সরঞ্জামের উপর নির্ভর করে? যদি তাই হয়, কিভাবে? আমি আগ্রহী.
হংক

কমান্ড লাইন থেকে অ্যাডবি টিপতে এবং টানতে ফাইলগুলি ব্যবহার করা যায়। (আরও কার্যকারিতা।) কাস্টম বুট লোডার ফ্ল্যাশ করতে বুটটি ব্যবহার করা যেতে পারে। তবে আপনি যদি উন্নয়নের জন্য টার্মিনাল ব্যবহার না করেন তবে এই আদেশগুলি অ্যান্ড্রয়েড বিকাশের জন্য কার্যকর নয়। আইডিইতে সমস্ত কিছু পাওয়া যায়।
mipreamble

1
আমার বোধগম্যতা হল Eclipse ব্যাকগ্রাউন্ডে adb.exe ব্যবহার করে।
হংক

@ মিপ্রিমেবল তাই অ্যান্ড্রয়েড এসডিকে: সরঞ্জাম, প্ল্যাটফর্ম-সরঞ্জাম এবং বিল্ড-সরঞ্জামগুলির মধ্যে পার্থক্য কী? আমি বিল্ড-সরঞ্জামগুলি ব্যতীত আমার অ্যাপ্লিকেশনটি তৈরি করতে এবং চালাতে পারি।
kreker

1
@ সিজেবিএস হ্যাঁ কোনও সংস্করণের জন্য সেট সরঞ্জামগুলি স্টিক করা কাজ করবে। অ্যান্ড্রয়েডের নতুন সংস্করণ আসার সাথে সাথে বিল্ড সরঞ্জামগুলি আপডেট হয়। আপনি সর্বশেষতম অ্যান্ড্রয়েড সংস্করণগুলির জন্য অ্যাপ্লিকেশনটি সংকলন এবং পরীক্ষা করতে চান।
মিপ্রাইমবল

16

বিল্ড সরঞ্জাম, প্ল্যাটফর্ম সরঞ্জাম এবং সরঞ্জামের মধ্যে পার্থক্যটির আলোচনা অন্যকে ছেড়ে দেব। ব্যবহারিক দৃষ্টিকোণ থেকে আপনার নিজের দ্বিতীয় প্রশ্নের উত্তর জানতে হবে:

কোন সংস্করণ ব্যবহার করা উচিত?

উত্তর: অতি সাম্প্রতিক সংস্করণ ব্যবহার করুন।

গ্রেডলের সাথে অ্যান্ড্রয়েড স্টুডিও ব্যবহারকারীদের buildToolsVersionজন্য build.gradle(মডিউল: অ্যাপ) ফাইলে সেট করতে হবে ।

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"

    ...
}

বিল্ড সরঞ্জামগুলির সাম্প্রতিকতম সংস্করণ নম্বরটি আমি কোথায় পাব?

Android SDK ম্যানেজারটি খুলুন।

  • অ্যান্ড্রয়েড স্টুডিওতে সরঞ্জামগুলি > অ্যান্ড্রয়েড > এসডিকে পরিচালক > উপস্থিতি এবং আচরণ > সিস্টেম সেটিংস > অ্যান্ড্রয়েড এসকেকে যান
  • SDK সরঞ্জাম ট্যাবটি চয়ন করুন ।
  • তালিকা থেকে অ্যান্ড্রয়েড এসডিকে বিল্ড সরঞ্জাম নির্বাচন করুন
  • প্যাকেজ বিবরণ দেখান চেক করুন

শেষ আইটেমটি সবচেয়ে সাম্প্রতিক সংস্করণ প্রদর্শন করবে।

এখানে চিত্র বর্ণনা লিখুন

এটি ইনস্টল করা আছে কিনা তা নিশ্চিত হয়ে নিন এবং তারপরে সেই সংখ্যাটি buildToolsVersionইন build.gradle(মডিউল: অ্যাপ) হিসাবে লিখুন ।


1
যদি 24.0.2 থাকে তবে 24.0.1 এবং 24 টি কেন অপ্রচলিত হিসাবে চিহ্নিত হয়নি (স্ট্যান্ডেলোন ম্যানেজার অপ্রচলিত প্যাকেজগুলি প্রদর্শন / আড়াল করতে দেয়)?
ব্যবহারকারী1803551

3
@ ব্যবহারকারী1803551, সর্বাধিক সাম্প্রতিক বিল্ড সরঞ্জামগুলির সংস্করণটি স্বয়ংক্রিয়ভাবে ব্যবহার করা বাঞ্ছনীয় নয়। উদাহরণস্বরূপ, বলুন আপনি ইতিমধ্যে একটি নির্দিষ্ট বিল্ড সরঞ্জাম সংস্করণ দিয়ে আপনার অ্যাপ্লিকেশনটির পুরোপুরি পরীক্ষা করে নিয়েছেন। আপনি যদি আপনার বিল্ড সরঞ্জামগুলি আপডেট করেন তবে এটি সম্ভবত আপনার অ্যাপ্লিকেশনটিতে কিছু পরিবর্তন করতে পারে। পুরানো বিল্ড সরঞ্জামগুলির সংস্করণগুলি বিকাশকারীদের বজায় রাখার অনুমতি দিলে তাদের বিল্ডটি প্রত্যাশার মতো কাজ করবে তা নিশ্চিত হতে দেয়। যদি আপনি অপ্রচলিত হিসাবে ঘোষিত হয় তার প্যাটার্নটি দেখুন, আপনি দেখতে পাবেন যে 24 এবং 24.0.1 অবশেষে অপ্রচলিত ঘোষণা করা হবে।
সুরগাচ

13

আপনি এই অ্যান্ড্রয়েড - কমান্ড লাইন সরঞ্জামগুলিতে এগুলি সম্পর্কে বিশদ জানতে পারেন


TL; ড:

এসডিকে সরঞ্জামগুলি:

  1. অ্যান্ড্রয়েড এসডিকে পরিচালক (এসডকেম্যানার)
  2. AVD ম্যানেজার (avdmanager)
  3. ডালভিক ডিবাগ মনিটর সার্ভার (ডিডিএমএস)

বিল্ড সরঞ্জাম:

  1. স্বাক্ষরকারী
  2. proGuard
  3. zipalign
  4. jobb

প্ল্যাটফর্ম সরঞ্জামসমূহ:

  1. এডিবি
  2. এইডেল, অপট, ডেক্সডাম্প এবং ডেক্স x
  3. bmgr
  4. Logcat

1
এইডেল, অপট, ডেক্সডাম্প এবং ডিএক্স এ প্ল্যাটফর্ম সরঞ্জাম নয় বিল্ড সরঞ্জামগুলির উপাদান
মাসুম

9

সঠিক উত্তর

প্ল্যাটফর্ম-সরঞ্জাম উপাদান থেকে অ্যান্ড্রয়েড এসডিকে বিল্ড-নির্দিষ্ট উপাদানগুলিকে ডুপ্লুপ করে, যাতে বিল্ড সরঞ্জামগুলি সংহত বিকাশ পরিবেশের (আইডিই) উপাদানগুলির থেকে স্বাধীনভাবে আপডেট করা যায়।

লিঙ্ক (সংশোধন 17 প্রসারিত)


4
তথ্যের জন্য আপনাকে ধন্যবাদ. যদি নতুন সংস্করণগুলি কেবল পুরানো সংস্করণগুলিতে উন্নত হয় তবে গুগলের কেন কেবল একটি বিল্ড-সরঞ্জাম নেই এবং এটিকে SDK সরঞ্জাম এবং প্ল্যাটফর্ম-সরঞ্জামগুলির মতো আপডেট করা চালিয়ে যায় না? অন্য কথায়, সেখানে পুরানো সংস্করণ থাকার কারণ কী?
হংক

2
আমি কেবল এই উত্তরটিকে উঁচু করে তোলার চেষ্টা করেছি তবে দেখা যাচ্ছে যে আমি ইতিমধ্যে এটি গত বছরের তুলনায় উত্সাহিত করেছি! @ হং, তারা পুরানো বিল্ড সরঞ্জামগুলি রাখে কারণ তারা সরঞ্জামগুলি আপডেট করার সাথে সাথে কিছু বৈশিষ্ট্য হ্রাস করা হয়। তবে অ্যাপ্লিকেশন বিকাশকারীদের সোর্স কোড থাকতে পারে যা সেই বৈশিষ্ট্যগুলির উপর নির্ভর করে তাই তারা সেই পুরানো সংস্করণগুলি পুরানো কোড বেসগুলিকে সমর্থন করার জন্য উপলব্ধ রাখে।
mateor

1
এই ক্ষেত্রে, তাদের কি অবজ্ঞাত বৈশিষ্ট্যগুলির একটি তালিকা থাকা উচিত যাতে বিকাশকারীরা ঠিক জানতে পারে যে তাদের এখনও পুরানো সংস্করণ ব্যবহার করতে হবে?
হং

@ হাং: আমি ঠিক সেই প্রশ্নটিই খুঁজছিলাম। এখন ... উত্তর খুঁজে পাওয়া বন্ধ করুন :)
DerpyNerd

2

অ্যান্ড্রয়েড এসডিকে বিল্ড সরঞ্জামগুলি নামটি যা বলে সেগুলি হ'ল; অ্যান্ড্রয়েড অ্যাপ্লিকেশনগুলি তৈরির সরঞ্জামগুলি the সর্বশেষতম বিল্ড সরঞ্জামগুলির সংস্করণটি ব্যবহার করা খুব গুরুত্বপূর্ণ (অ্যান্ড্রয়েড এসডিকে মাধ্যমে আপনার আইডিই দ্বারা স্বয়ংক্রিয়ভাবে নির্বাচিত) তবে পুরাতন সংস্করণগুলি যে কারণে বাকি রয়েছে তা পিছিয়ে পড়া সামঞ্জস্যতা সমর্থন করতে পারে, এটি হ'ল যদি আপনার প্রকল্পগুলি নির্ভর করে বিল্ড সরঞ্জামগুলির পুরানো সংস্করণ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.