বিকাশকারী টুল

AAB থেকে APK কনভার্টার অনলাইন বিনামূল্যে — কনভার্ট অ্যাপ বান্ডেল

বিনামূল্যে অনলাইন AAB থেকে APK রূপান্তরকারী — ইন্টারেক্টিভ কমান্ড নির্মাতা, AAB ফাইল এক্সপ্লোরার, ধাপে ধাপে রূপান্তর উইজার্ড এবং সমস্যা সমাধানের গাইড। Windows, ম্যাক এবং লিনাক্স এ কাজ করে।

1. আপনার OS নির্বাচন করুন৷

2. AAB ফাইল পাথ

3. আউটপুট APK পাথ

4. সাইনিং কনফিগারেশন

5. বিকল্প

উত্পন্ন কমান্ড


পূর্বশর্ত

Java JDK 8+ ইনস্টল করা হয়েছে
bundletool.jar ডাউনলোড করা হয়েছে
Android SDK (ঐচ্ছিক, ডিভাইস-নির্দিষ্ট জন্য)
bundletool ডাউনলোড করুন

এক্সপ্লোর করতে AAB ফাইল ড্রপ করুন

যেকোনো AAB ফাইলের অভ্যন্তরীণ গঠন দেখুন

.aab ফাইল সমর্থন করে
1

bundletool ডাউনলোড করুন

Bundletool হল AAB অপারেশনের জন্য Google এর অফিসিয়াল টুল। GitHub থেকে সর্বশেষ সংস্করণ ডাউনলোড করুন।

wget https://github.com/google/bundletool/releases/latest/download/bundletool-all.jar
2

AAB থেকে APK তৈরি করুন

আপনার AAB ফাইলকে APK-এর সেটে রূপান্তর করতে bundletool ব্যবহার করুন।

java -jar bundletool.jar build-apks --bundle=app.aab --output=app.apks
3

ইউনিভার্সাল APK তৈরি করুন

একটি একক সর্বজনীন APK তৈরি করুন যা সমস্ত ডিভাইসে কাজ করে৷

java -jar bundletool.jar build-apks --bundle=app.aab --output=app.apks --mode=universal
4

APKS থেকে APK বের করুন

আউটপুট .apks ফাইলটি একটি ZIP সংরক্ষণাগার। এটি থেকে universal.apk বের করুন।

unzip app.apks -d output_dir/
5

ডিভাইসে ইনস্টল করুন (ঐচ্ছিক)

জেনারেট করা APKগুলি সরাসরি একটি সংযুক্ত ডিভাইসে ইনস্টল করুন।

java -jar bundletool.jar install-apks --apks=app.apks

একটি Android অ্যাপ বান্ডেল (AAB) হল Google Play-তে Android অ্যাপের প্রকাশনার ফর্ম্যাট। এটিতে সমস্ত সংকলিত কোড এবং সংস্থান রয়েছে তবে Google Play-তে APK প্রজন্মকে পিছিয়ে দেয়, যা প্রতিটি ডিভাইস কনফিগারেশনের জন্য অপ্টিমাইজ করা APK তৈরি করে।

না। AAB থেকে APK রূপান্তরের জন্য bundletool (একটি জাভা অ্যাপ্লিকেশন) প্রয়োজন যা একটি ওয়েব ব্রাউজারে চলতে পারে না। আপনার স্থানীয়ভাবে জাভা JDK এবং bundletool ইনস্টল করা দরকার। আমাদের কমান্ড নির্মাতা সঠিক কমান্ড তৈরি করতে সাহায্য করে।

স্বাক্ষর করার তথ্য প্রদান না করা হলে এই ত্রুটি ঘটে। হয় স্বাক্ষরবিহীন পরীক্ষার জন্য --mode=universal ব্যবহার করুন, অথবা --ks, --ks-pass, --ks-key-alias, এবং --key-pass পরামিতি প্রদান করুন।

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

bundletool একটি JAR ফাইল, একটি সিস্টেম কমান্ড নয়। এটির সাথে ব্যবহার করুন: java -jar bundletool-all.jar। নিশ্চিত করুন Java JDK 8+ ইনস্টল করা আছে এবং JAR ফাইল পাথ সঠিক।

AAB কে APK অনলাইনে রূপান্তর করুন: এই টুলটি আসলে কী করে

Android অ্যাপ বান্ডেল (.aab) হল এমন ফর্ম্যাট যা Google Play ডেভেলপারদের আপলোড করতে বলে, কিন্তু এটি এমন কিছু নয় যা আপনি একটি ফোনে ইনস্টল করতে পারেন। আপনার যদি একটি বিল্ড সার্ভার, একটি CI পাইপলাইন, বা কোনো সহকর্মী থেকে একটি .aab ফাইল থাকে, তাহলে আপনাকে প্রথমে এটিকে একটি ইনস্টলযোগ্য .apk-এ পরিণত করতে হবে৷ এই পৃষ্ঠাটি আপনাকে সেই কাজের জন্য দুটি জিনিস দেয়: একটি ইন্টারেক্টিভ AAB থেকে APK কমান্ড নির্মাতা যা আপনার অপারেটিং সিস্টেমের জন্য সঠিক bundletool কমান্ড লেখে, এবং একটি AAB ফাইল এক্সপ্লোরার যা আপনার ব্রাউজারে বান্ডিলটি খোলে যাতে আপনি এটি রূপান্তর করার আগে ভিতরে কী আছে তা দেখতে পারেন৷

রূপান্তরটি নিজেই Google এর অফিসিয়াল bundletool এর মাধ্যমে চলে, যা একটি জাভা প্রোগ্রাম। যেহেতু bundletool-এর জাভা রানটাইম এবং আপনার কীস্টোরে অ্যাক্সেসের প্রয়োজন, প্রকৃত বিল্ড স্টেপটি আপনার নিজের মেশিনে ঘটে, আমাদের সার্ভারে নয়। আপনার .aab ফাইলটি কোথাও আপলোড করা হয় না। নির্মাতা কেবল অনুমানটি সরিয়ে দেয় যাতে আপনি পতাকার নামগুলি মুখস্থ করার পরিবর্তে একটি সঠিক, চালানোর জন্য প্রস্তুত কমান্ড অনুলিপি করতে পারেন।

AAB বনাম APK: কেন আপনি শুধু ফাইলের নাম পরিবর্তন করতে পারবেন না

অনেক লোক এক্সটেনশনের নাম পরিবর্তন করে AAB কে APK তে কীভাবে পরিবর্তন করবেন তা অনুসন্ধান করে এবং এটি কখনই কাজ করে না। একটি .apk হল একটি একক, স্বয়ংসম্পূর্ণ প্যাকেজ যা Android সরাসরি ইনস্টল করতে পারে৷ একটি .aab হল একটি প্রকাশনা ধারক: এটি আপনার সংকলিত কোড এবং সংস্থানগুলিকে মডিউলগুলিতে বিভক্ত করে রাখে এবং এটি Google Play বা bundletool এর থেকে চূড়ান্ত, ডিভাইস-অপ্টিমাইজ করা APKগুলি তৈরি করবে বলে আশা করে৷ ফাইলের নাম পরিবর্তন করা সেই মডিউলগুলিকে আনপ্যাক করে না বা কিছুতে স্বাক্ষর করে না, তাই Android এটি ইনস্টল করতে অস্বীকার করে। একটি Android অ্যাপ বান্ডিল থেকে APK রূপান্তর করার একমাত্র নির্ভরযোগ্য উপায় হল bundletool কে আপনার জন্য APK সেট তৈরি করতে দেওয়া।

Windows, ম্যাক এবং লিনাক্সে কীভাবে AAB কে APK তে রূপান্তর করবেন

ধাপগুলি প্রতিটি প্ল্যাটফর্মে একই, এবং শুধুমাত্র ফাইল-পাথের শৈলী পরিবর্তিত হয়, যার কারণে উপরের কমান্ড নির্মাতার একটি Windows, macOS এবং Linux সুইচ রয়েছে। এখানে শুরু থেকে শেষ পর্যন্ত সম্পূর্ণ প্রবাহ রয়েছে:

  1. Java JDK 8 বা নতুন ইনস্টল করুন। জাভা আপনার PATH-এ রয়েছে তা নিশ্চিত করতে একটি টার্মিনালে java -version চালান।
  2. bundletool ডাউনলোড করুন। Google-এর অফিসিয়াল GitHub রিলিজ পৃষ্ঠা থেকে সর্বশেষ bundletool-all.jar পান৷
  3. আপনার বান্ডেলে APK সেট তৈরি করুন। পয়েন্ট বান্ডলেটুল করুন এবং এটিকে একটি .apks সংরক্ষণাগার তৈরি করতে দিন: java -jar bundletool-all.jar build-apks --bundle=app.aab --output=app.apks --mode=universal
  4. .apks আর্কাইভ খুলুন। এটি শুধুমাত্র একটি জিপ ফাইল, তাই এটি বের করুন এবং আপনি universal.apk ভিতরে পাবেন।
  5. আপনার ডিভাইসে ইনস্টল করুন। আপনার ফোনে APK অনুলিপি করুন এবং এটি সাইডলোড করুন, অথবা USB-এর মাধ্যমে সংযুক্ত একটি ডিভাইসের সাথে bundletool install-apks ব্যবহার করুন।

ইউনিভার্সাল APK বনাম স্প্লিট APK: আপনার কোনটি তৈরি করা উচিত?

আপনি যদি একটি ফাইল চান যা যেকোনো ফোনে ইনস্টল হয়, তাহলে --mode=universal ব্যবহার করুন। এটি একটি একক আপনার AAB থেকে সার্বজনীন APK তৈরি করে যা প্রতিটি CPU আর্কিটেকচার, পর্দার ঘনত্ব এবং ভাষাকে একটি প্যাকেজে বান্ডিল করে। এটি বড়, কিন্তু প্লে স্টোরের বাইরে বিল্ড পরীক্ষা, সংরক্ষণাগার বা ভাগ করার জন্য এটি সবচেয়ে সহজ বিকল্প। আপনি যদি মোডটি ছেড়ে দেন, তবে bundletool পরিবর্তে বিভক্ত APK তৈরি করে যা একটি নির্দিষ্ট ডিভাইসের জন্য ছাঁটাই করা হয়, তাই সেগুলি ছোট আকারে ডাউনলোড করে তবে আপনাকে মিলিত সেটটি একসাথে ইনস্টল করতে হবে। বেশিরভাগ লোকের জন্য যাদের দ্রুত ইনস্টল করার জন্য একটি .aab রূপান্তর করতে হবে, সর্বজনীন APK হল সঠিক পছন্দ৷

আপনি AAB থেকে যে APK পান তা স্বাক্ষর করা

অ্যানড্রয়েড একটি APK ইনস্টল করবে না যদি না এটি স্বাক্ষরিত হয়। পরীক্ষার জন্য, bundletool স্বয়ংক্রিয়ভাবে একটি ডিবাগ কী দিয়ে স্বাক্ষর করতে পারে, যা নির্মাতার "ডিবাগ কীস্টোর ব্যবহার করুন" বিকল্পটি ঠিক তাই করে। আপনি যদি একটি রিলিজ বিল্ড প্রস্তুত করছেন, উদাহরণস্বরূপ আপনার নিজের ওয়েবসাইটে বিতরণ করার জন্য, কীস্টোর পাথ, কীস্টোর পাসওয়ার্ড, কী উপনাম এবং কী পাসওয়ার্ড ক্ষেত্রগুলি পূরণ করে আপনার নিজের কীস্টোর দিয়ে এটি সাইন ইন করুন। নির্মাতা তারপর --ks, --ks-pass, --ks-key-alias, এবং --key-pass ফ্ল্যাগগুলি যোগ করে যাতে আপনি যে APKটি পান তা থ্রোওয়ে ডিবাগের পরিবর্তে আপনার আসল উত্পাদন স্বাক্ষর বহন করে।

সাধারণ বান্ডলেটুল ত্রুটি এবং কীভাবে সেগুলি ঠিক করবেন

দুটি সমস্যা বারবার উঠে আসে। "bundletool: command not found" বার্তাটির অর্থ হল আপনি bundletool চালানোর চেষ্টা করেছেন যেন এটি একটি অন্তর্নির্মিত কমান্ড। এটি একটি JAR ফাইল, তাই আপনি সবসময় এটিকে java -jar bundletool-all.jar দিয়ে কল করুন। "কোন কী/শংসাপত্র নেই" ত্রুটির অর্থ স্বাক্ষর করার বিশদ অনুপস্থিত: হয় একটি স্বাক্ষরবিহীন পরীক্ষা বিল্ডের জন্য --mode=universal যোগ করুন, অথবা উপরে বর্ণিত হিসাবে আপনার কীস্টোর পতাকা সরবরাহ করুন৷ পৃষ্ঠার উপরের ট্রাবলশুটিং ট্যাবটি এর মধ্যে আরও অনেক কিছুকে কভার করে, এবং AAB এক্সপ্লোরার আপনাকে নিশ্চিত করতে দেয় যে আপনার বান্ডেলে সত্যিই এমন মডিউল রয়েছে যা আপনি একটি কমান্ড ডিবাগ করার সময় ব্যয় করার আগে আশা করেন৷

কখন আপনি আসলে একটি AAB রূপান্তর করতে হবে?

সাধারণ কারণগুলি হল আপনি প্রকাশ করার আগে একটি বাস্তব ডিভাইসে একটি রিলিজ বিল্ড পরীক্ষা করা, Google Play ব্যবহার করেন না এমন একজন পরীক্ষকের কাছে একটি বিল্ড হস্তান্তর করা, আপনার রেকর্ডের জন্য আপনার নিজের অ্যাপের একটি ইনস্টলযোগ্য অনুলিপি রাখা, বা প্লে স্টোরের অভ্যন্তরীণ পরীক্ষায় পৌঁছায় না এমন হার্ডওয়্যারে QA চালানো। কারণ যাই হোক না কেন, শুধুমাত্র সেই অ্যাপ বান্ডিলগুলিকে রূপান্তর করুন যেগুলি ব্যবহার করার অধিকার আপনার আছে, যেমন আপনার নিজের তৈরি বা বান্ডিলগুলির সাথে কাজ করার জন্য আপনার কাছে স্পষ্ট অনুমতি রয়েছে৷

Mst Shafale দ্বারা প্রকৌশলী এবং নথিভুক্ত লিড ডেভেলপার এবং Android প্যাকেজ আর্কিটেক্ট • Android 12-15-এ যাচাই করা হয়েছে

XAPK থেকে APK টুলকিটের প্রতিটি ইউটিলিটি JavaScript এবং WebAssembly এর মাধ্যমে আপনার ব্রাউজারে স্থানীয়ভাবে 100% চলে। একটি নির্দিষ্ট প্যাকেজ সঙ্গে একটি প্রান্ত কেস পাওয়া গেছে? আমাদের ইঞ্জিনিয়ারিং টিমকে রিপোর্ট করুন।