Android Gradle প্লাগইন আপগ্রেড সহকারী ব্যবহার করুন

অ্যান্ড্রয়েড গ্র্যাডল প্লাগইন (AGP) আপগ্রেড অ্যাসিস্ট্যান্ট হলো অ্যান্ড্রয়েড স্টুডিওর একটি টুল, যা আপনার প্রজেক্টে ব্যবহৃত AGP-এর ভার্সন আপগ্রেড করতে সাহায্য করে।

আপনার বিল্ড কনফিগার করার জন্য নতুন ফিচার, অন্যান্য গ্রেডল প্লাগইন ব্যবহারের জন্য নতুন এপিআই, এবং অ্যান্ড্রয়েড স্টুডিওর সাথে প্রজেক্ট বিল্ডের ইন্টিগ্রেশনের উন্নতি সম্পর্কিত AGP পরিবর্তনগুলো প্রায়শই রিলিজ করা হয়। আপনার প্রজেক্টে ব্যবহৃত AGP-এর ভার্সন আপগ্রেড করলে আপনি সর্বশেষ ফিচারগুলোর সুবিধা নিতে পারবেন।

আপগ্রেড অ্যাসিস্ট্যান্টের জন্য প্রস্তাবিত প্রজেক্ট কাঠামো সম্পর্কে আরও তথ্যের জন্য, এই পৃষ্ঠার সেটআপ অংশটি দেখুন।

এজিপি আপগ্রেড অ্যাসিস্ট্যান্ট ব্যবহারের ক্ষেত্রসমূহ

এজিপি আপগ্রেড অ্যাসিস্ট্যান্ট আপনাকে এজিপি সংস্করণ আপগ্রেড করার জন্য প্রয়োজনীয় পরিবর্তনগুলো করতে নির্দেশনা দেয়। আপগ্রেড অ্যাসিস্ট্যান্টের সবচেয়ে সাধারণ ব্যবহারগুলো নিচে দেওয়া হলো:

  • সিনট্যাক্স পরিবর্তন : আপগ্রেড অ্যাসিস্ট্যান্ট আপনার AGP-এর পুরোনো সংস্করণের বিল্ড ফাইলগুলোকে নতুন সংস্করণের জন্য প্রয়োজনীয় ফাইলে রূপান্তর করার চেষ্টা করে। AGP-এর উন্নয়নের সাথে সাথে, সময়ের সাথে সাথে প্রতিস্থাপিত, অপ্রচলিত বা অসমর্থিত ইন্টারফেসগুলোকে সমর্থন করার জন্য বিল্ড ফাইলগুলো আপডেট করা হয়।

  • AGP এবং Gradle-এর মধ্যে সামঞ্জস্যের প্রয়োজনীয়তা : আপগ্রেড অ্যাসিস্ট্যান্ট AGP এবং Gradle-এর মধ্যেকার সামঞ্জস্যের প্রয়োজনীয়তা সম্পর্কে অবগত এবং এটি নিশ্চিত করতে সাহায্য করে যে আপনি আপনার AGP সংস্করণের জন্য প্রয়োজনীয় Gradle সংস্করণটিই ব্যবহার করছেন।

  • AGP এবং থার্ড-পার্টি গ্রেডল প্লাগইনগুলির মধ্যে সামঞ্জস্যের প্রয়োজনীয়তা : আপগ্রেড অ্যাসিস্ট্যান্ট AGP এবং কিছু থার্ড-পার্টি গ্রেডল প্লাগইনের মধ্যেকার সামঞ্জস্যের প্রয়োজনীয়তা সম্পর্কে অবগত এবং এটি নিশ্চিত করতে সাহায্য করে যে আপনি আপনার AGP সংস্করণের জন্য প্রয়োজনীয় থার্ড-পার্টি গ্রেডল প্লাগইনগুলির সংস্করণ ব্যবহার করছেন।

সাধারণত, AGP আপগ্রেডের পরে আপগ্রেড অ্যাসিস্ট্যান্ট বিল্ড ফাইল আপডেট করা এবং সংশ্লিষ্ট ত্রুটির বার্তাগুলো বোঝা সহজ করে তোলে। আপগ্রেড অ্যাসিস্ট্যান্ট প্রস্তাবিত পরিবর্তনগুলো কেন প্রয়োজনীয়, তাও ব্যাখ্যা করে।

এজিপি আপগ্রেড অ্যাসিস্ট্যান্ট কীভাবে ব্যবহার করবেন

আপগ্রেড অ্যাসিস্ট্যান্ট ব্যবহার করার জন্য, নিশ্চিত করুন যে আপনার প্রোজেক্টের কাঠামোটি এই টুলটির জন্য উপযুক্ত, এবং তারপর "আপগ্রেড অ্যাসিস্ট্যান্ট চালান" অংশে বর্ণিত পদ্ধতি অনুযায়ী অ্যান্ড্রয়েড স্টুডিও থেকে এটি চালান।

আপনার প্রজেক্ট সেট আপ করুন

আপগ্রেড অ্যাসিস্ট্যান্ট চালানোর আগে, নিশ্চিত করুন যে আপনার প্রজেক্টটি সঠিকভাবে ফরম্যাট করা এবং ব্যাক আপ করা আছে। AGP আপগ্রেড অ্যাসিস্ট্যান্ট সঠিকভাবে সেট আপ করা হয়েছে কিনা তা নিশ্চিত করতে, নিম্নলিখিত বিভাগগুলি পড়ুন।

গ্রেডল বিল্ড ফাইল এবং ডোমেইন-নির্দিষ্ট ভাষা ব্যবহার করে আপনার প্রোজেক্টের কাঠামো তৈরি করুন।

AGP আপগ্রেড অ্যাসিস্ট্যান্টের সর্বোত্তম ব্যবহার নিশ্চিত করতে, নিম্নলিখিত পদক্ষেপগুলো অনুসরণ করুন:

  • গ্রেডল বিল্ড ফাইল ব্যবহার করে বিল্ড কনফিগার করুন : আপগ্রেড অ্যাসিস্ট্যান্ট গ্রেডল বিল্ড ফাইলগুলির স্ট্যাটিক বিশ্লেষণের উপর নির্ভর করে। আপগ্রেড অ্যাসিস্ট্যান্টের সর্বোত্তম সুবিধা পেতে, এই বিল্ড ফাইলগুলি ব্যবহার করে আপনার বিল্ড কনফিগার করুন। আপনার প্রোজেক্টের gradle সাবডিরেক্টরিতে থাকা libs.versions.toml ফাইলে সংজ্ঞায়িত ডিপেন্ডেন্সি এবং প্লাগইনগুলি উল্লেখ করতে গ্রেডল ভার্সন ক্যাটালগ ব্যবহার করুন।
  • ডিক্লারেটিভ বিল্ড ডোমেইন-স্পেসিফিক ল্যাঙ্গুয়েজ ব্যবহার করুন : গ্রেডল বিল্ড ফাইলগুলো গ্রুভি বা কোটলিনে লেখা হয়। তবে, প্রোজেক্ট কনফিগারেশনের প্রকাশভঙ্গি যত বেশি ডিক্লারেটিভ হবে, আপগ্রেড অ্যাসিস্ট্যান্টের পক্ষে আপগ্রেডের জন্য প্রয়োজনীয় সমস্ত পরিবর্তন সফলভাবে খুঁজে পাওয়ার সম্ভাবনা তত বেশি থাকবে।

কোনো প্রজেক্ট এই সীমাবদ্ধতাগুলো মেনে চললেও, আপগ্রেড অ্যাসিস্ট্যান্ট একটি ক্লিন আপগ্রেড করতে ব্যর্থ হতে পারে। বাগ কীভাবে সমাধান বা রিপোর্ট করতে হয়, সে বিষয়ে নির্দেশনার জন্য ‘ত্রুটি সমাধান’ (Troubleshoot errors) দেখুন।

আপনার প্রোজেক্টের ব্যাকআপ নিন।

আপগ্রেড অ্যাসিস্ট্যান্ট ব্যবহার করার আগে, আমরা সুপারিশ করি যে আপনার ভার্সন কন্ট্রোল সিস্টেম অনুযায়ী আপনার প্রোজেক্টে যেন কোনো আনকমিটেড পরিবর্তন না থাকে। আপনি যদি ভার্সন কন্ট্রোল ব্যবহার না করেন, তবে এই পর্যায়ে সর্বশেষ পরিচিত ভালো ভার্সনটির একটি ব্যাকআপ ব্যবহার করুন।

আপগ্রেড অ্যাসিস্ট্যান্ট চলার পর এবং প্রজেক্টটি সফলভাবে বিল্ড ও টেস্ট করা হয়ে গেলে, আপনি প্রজেক্টটির নতুন ভার্সনটি আপনার ভার্সন কন্ট্রোল সিস্টেমে কমিট করতে পারেন।

আপগ্রেড অ্যাসিস্ট্যান্ট চালান

আপগ্রেড অ্যাসিস্ট্যান্ট চালু করতে, এই ধাপগুলো অনুসরণ করুন:

  1. আপগ্রেড অ্যাসিস্ট্যান্ট চালু করতে, টুলস > এজিপি আপগ্রেড অ্যাসিস্ট্যান্ট -এ যান অথবা চিত্র ১-এ দেখানো অনুযায়ী নোটিফিকেশন প্রম্পটে ক্লিক করুন।

    যে টুল উইন্ডোটি প্রদর্শিত হয়, তাতে ডিফল্ট আপগ্রেডের বিবরণ দেখা যায়, যার মধ্যে প্রজেক্টের বর্তমান AGP সংস্করণ এবং অ্যান্ড্রয়েড স্টুডিওর এই সংস্করণ দ্বারা সমর্থিত সর্বশেষ সংস্করণ অন্তর্ভুক্ত থাকে।

    চালু করা হলে AGP আপগ্রেড অ্যাসিস্ট্যান্ট টুল উইন্ডো এবং নোটিফিকেশন প্রম্পট।
    চিত্র ১. নোটিফিকেশন প্রম্পট সহ চালু করা হলে AGP আপগ্রেড অ্যাসিস্ট্যান্ট টুলের উইন্ডো।

  2. প্রয়োজনীয় ও প্রস্তাবিত পদক্ষেপগুলো যাচাই করুন।

    বাম দিকের প্যানেলে, চেকবক্স সহ ট্রি-টি আপগ্রেডের প্রতিটি ধাপের বিস্তারিত বিবরণ দেয়। ধাপগুলো আপডেট করা আবশ্যক বা সুপারিশকৃত কিনা এবং সেগুলো অন্য ধাপের পূর্বশর্ত কিনা, তার উপর ভিত্তি করে এগুলোকে শ্রেণীবদ্ধ করা হয়েছে। মূল প্যানেলে প্রতিটি ধাপ সম্পর্কে আরও বিস্তারিত তথ্য দেখতে ট্রি-টির প্রতিটি আইটেম নির্বাচন করুন।

  3. আপগ্রেডটি চালানোর জন্য, প্রয়োজনীয় ও কাঙ্ক্ষিত ধাপগুলো নির্বাচন করুন এবং 'Run selected steps'-এ ক্লিক করুন।

    আপগ্রেড অ্যাসিস্ট্যান্ট প্রোজেক্ট বিল্ড ফাইলগুলো পরিবর্তন করে এবং নতুন প্রোজেক্ট বিল্ডটিকে অ্যান্ড্রয়েড স্টুডিওর সাথে সিঙ্ক করার চেষ্টা করে। আপনার যদি অনেকগুলো মডিউল থাকে, তবে এতে কিছুটা সময় লাগতে পারে, কারণ প্লাগইন এবং লাইব্রেরির নতুন সংস্করণ ডাউনলোড করার প্রয়োজন হতে পারে।

  4. আপগ্রেড-পরবর্তী প্রতিবেদনটি পর্যালোচনা করুন। এই প্রতিবেদনে সম্পন্ন হওয়া ধাপগুলো এবং আপগ্রেডটি সফল বা অসফল হয়েছে কিনা তা বর্ণনা করা থাকে। আপগ্রেডের পরে প্রজেক্টটি বিল্ড বা টেস্ট করতে কোনো সমস্যা হলে, আপগ্রেড অ্যাসিস্ট্যান্ট দ্বারা করা পরিবর্তনগুলো পূর্বাবস্থায় ফিরিয়ে আনার একটি পদক্ষেপও এতে অন্তর্ভুক্ত থাকে।

  5. প্রজেক্টটি অ্যান্ড্রয়েড স্টুডিওর সাথে সফলভাবে সিঙ্ক হয়ে গেলে, প্রজেক্টটি বিল্ড করুন এবং টেস্ট স্যুটগুলো চালিয়ে যাচাই করুন যে আপগ্রেড অপারেশনের ফলে কোনো কার্যকারিতা পরিবর্তিত হয়নি।

  6. আপনার প্রজেক্টটি সঠিক অবস্থায় আছে তা যাচাই করার পর, আপনার প্রজেক্টের নতুন সংস্করণটি ভার্সন কন্ট্রোল সিস্টেমে কমিট করুন।

ত্রুটি সমাধান করুন

যদি আপগ্রেড অ্যাসিস্ট্যান্ট আপগ্রেডের পরামর্শ দেয় কিন্তু আপগ্রেড ব্যর্থ হয়, তবে সাধারণত বিল্ড ফাইলে পরিবর্তন করার ফলে সিঙ্ক ব্যর্থ হয়। ত্রুটিটি শনাক্ত ও সমাধান করতে এই ধাপগুলো অনুসরণ করুন:

  • প্রথমে, যে ত্রুটির কারণে সিঙ্ক ব্যর্থ হয়েছে, সেটি খতিয়ে দেখুন। কখনও কখনও, ত্রুটির একটি সুস্পষ্ট কারণ থাকে, যা আপনি প্রজেক্টের বিল্ড ফাইলগুলোতে সমাধান করতে পারেন।

  • যদি এরর মেসেজটি স্পষ্ট না হয়, অথবা কী কারণে সমস্যাটি হচ্ছে তা বোঝা না যায়, তাহলে আপগ্রেডটিকে ছোট ছোট ধাপে ভাগ করার জন্য প্রজেক্টটিকে তার আগের অবস্থায় ফিরিয়ে আনুন। ভার্সন কন্ট্রোল বা ব্যাকআপ থেকে আসল অবস্থাটি রিস্টোর করুন এবং নিশ্চিত করুন যে প্রজেক্টটি তার আসল অবস্থায় আছে ও অ্যান্ড্রয়েড স্টুডিওর সাথে সিঙ্ক করা আছে।

দুই ধরনের আপগ্রেড বিভাজন অনুসরণ করে ত্রুটিটি তদন্ত করুন:

  • AGP-এর সর্বশেষ সংস্করণ নয় এমন একটি ভিন্ন সংস্করণে আপগ্রেড করুন। যদি ত্রুটিপূর্ণ আপগ্রেডটি অনেকগুলো সংস্করণের একটি সমষ্টিগত আপগ্রেড হয়ে থাকে, তবে সমস্যাটি চিহ্নিত করার সর্বোত্তম উপায় হলো, এক সংস্করণ থেকে অন্য সংস্করণে ধারাবাহিকভাবে ছোট ছোট আপগ্রেড করে সেই প্রথম আপগ্রেডটি খুঁজে বের করা যা সমস্যাটি সৃষ্টি করে।

  • একটি আপগ্রেডের মধ্যে, প্রতিটি ধাপ এক এক করে করুন। একবার আপনি সমস্যাটির কারণ হওয়া আপগ্রেডটি শনাক্ত করতে পারলে, আপগ্রেডের ভেতরের ধাপগুলো একে একে বন্ধ করা সম্ভব হতে পারে। যদি তা সম্ভব হয়, তবে ত্রুটির জন্য দায়ী ধাপটি খুঁজে বের করতে প্রতিটি ধাপ এক এক করে করে দেখুন। যদি আপনি দায়ী ধাপটি খুঁজে না পান, তবে Gradle বা AGP-এর সাথে সামঞ্জস্যতার সমস্যা আছে কিনা তা জানতে আপনার ব্যবহৃত অন্য যেকোনো Gradle প্লাগইনের রিলিজ নোট পরীক্ষা করুন। কখনও কখনও, একটি নতুন রিলিজে অপ্রচলিত বা অভ্যন্তরীণ API-এর ব্যবহার সমাধান করা হয়।

  • বাগ রিপোর্ট করুন কখনও কখনও সমস্ত প্রস্তুতিমূলক ধাপ এবং সিঙ্ক সফল হলেও চূড়ান্ত আপগ্রেড ধাপটি ব্যর্থ হয়। এই ক্ষেত্রে, অনুগ্রহ করে একটি বাগ রিপোর্ট করুন। এমনকি যদি আপনি নিজে থেকেই ত্রুটিটি সমাধান করতে সফল হন, তবুও মূল ব্যর্থতার বিষয়টি বাগ ট্র্যাকারে রিপোর্ট করুন , যাতে ডেভেলপমেন্ট টিম সমস্যাটির সমাধান করতে পারে।