আগস্ট 2021-এ, Google একটি সিদ্ধান্ত নিয়েছিল যে Android অ্যাপগুলি কীভাবে বিতরণ করা হয় তা মৌলিকভাবে পরিবর্তন করেছে: Google Play Store-এ জমা দেওয়া সমস্ত নতুন অ্যাপকে প্রচলিত APK-এর পরিবর্তে Android অ্যাপ বান্ডেল (AAB) ফর্ম্যাট ব্যবহার করতে হবে। এই পরিবর্তনটি বিকাশকারী, ব্যবহারকারী এবং তৃতীয় পক্ষের অ্যাপ বিতরণের সমগ্র বাস্তুতন্ত্রকে প্রভাবিত করেছে। কিন্তু একটি অ্যাপ বান্ডেল ঠিক কী, এটি কীভাবে কাজ করে এবং কেন আপনার যত্ন নেওয়া উচিত?
এই নির্দেশিকাটি AAB ফর্ম্যাটের প্রযুক্তিগত অভ্যন্তরীণ থেকে শুরু করে এমন ব্যবহারকারীদের জন্য ব্যবহারিক প্রভাব যাঁরা বন্ধুদের সাথে অ্যাপগুলি শেয়ার করতে চান বা প্লে স্টোর অ্যাক্সেস ছাড়াই ডিভাইসে ইনস্টল করতে চান সবকিছুই কভার করে৷
একটি Android অ্যাপ বান্ডেল কি?
একটি Android অ্যাপ বান্ডেল হল একটি প্রকাশনার ফর্ম্যাট যাতে একটি অ্যাপের সমস্ত সংকলিত কোড এবং সংস্থান থাকে কিন্তু Google Play-তে চূড়ান্ত ইনস্টলযোগ্য APK তৈরি করাকে পিছিয়ে দেয়। এটিকে একটি মাস্টার টেমপ্লেট হিসাবে ভাবুন যেখান থেকে Google এর সার্ভারগুলি উড়তে থাকা অপ্টিমাইজ করা, ডিভাইস-নির্দিষ্ট প্যাকেজ তৈরি করে৷
একটি APK থেকে ভিন্ন, যা একটি রেডি-টু-ইনস্টল প্যাকেজ, একটি AAB ফাইল সরাসরি একটি ডিভাইসে ইনস্টল করা যায় না। এটি একটি বিল্ড আর্টিফ্যাক্ট যা প্লে স্টোরে আপলোড করা হয়, যেখানে Google এর পরিকাঠামো এটিকে প্রক্রিয়া করে এবং প্রতিটি ডিভাইস কনফিগারেশনের জন্য উপযোগী APK তৈরি করে।
ফাইল এক্সটেনশন হল .aab, এবং অভ্যন্তরীণভাবে এটি একটি জিপ-এর মতো কাঠামোর সাথে মিলিত একটি প্রোটোকল বাফার বিন্যাস ব্যবহার করে। এতে অ্যাপের DEX বাইটকোড, সংস্থান, সম্পদ, নেটিভ লাইব্রেরি এবং একটি বিশেষ বান্ডেল মেটাডেটা ফাইল রয়েছে যা Google Play-কে কীভাবে বিষয়বস্তু বিভক্ত করতে হয় তা জানায়।
কেন Google ম্যান্ডেটেড অ্যাপ বান্ডেল
অ্যাপ বান্ডেলের পিছনে প্রাথমিক প্রেরণা হল অ্যাপ ডাউনলোডের আকার হ্রাস করা। একটি সাধারণ Android অ্যাপের একাধিক স্ক্রিন ঘনত্ব (mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi), একাধিক CPU আর্কিটেকচার (armeabi-v7a, arm64-v8a, x86, x86_64) এবং একাধিক ভাষা সমর্থন করতে হবে। প্রথাগত APK মডেলে, এই সমস্ত সংস্থানগুলিকে একটি একক ফাইলে বান্ডিল করা হয়, যদিও যেকোন প্রদত্ত ডিভাইসের শুধুমাত্র একটি ভগ্নাংশের প্রয়োজন হয়৷
এমন একটি গেম বিবেচনা করুন যাতে চারটি সিপিইউ আর্কিটেকচারের জন্য নেটিভ লাইব্রেরি এবং পাঁচটি স্ক্রিনের ঘনত্বের জন্য টেক্সচার রয়েছে। সার্বজনীন APK 200 MB হতে পারে, কিন্তু শুধুমাত্র প্রাসঙ্গিক আর্কিটেকচার এবং ঘনত্ব ধারণকারী ডিভাইস-নির্দিষ্ট সংস্করণ 80 MB হতে পারে। এটি ডাউনলোডের আকারে 60% হ্রাস।
Google রিপোর্ট করেছে যে অ্যাপ বান্ডেল ব্যবহার করা অ্যাপগুলি তাদের সার্বজনীন APK সমতুল্য থেকে গড়ে 15% ছোট। বড় অ্যাপ এবং গেমের জন্য, সঞ্চয় অনেক বেশি নাটকীয় হতে পারে। ছোট ডাউনলোড মানে দ্রুত ইনস্টলেশন, কম ব্যান্ডউইথ খরচ, এবং আকারের উদ্বেগের কারণে কম পরিত্যক্ত ইনস্টলেশন।
কীভাবে অ্যাপ বান্ডেলগুলি অভ্যন্তরীণভাবে কাজ করে
বান্ডিল গঠন
একটি AAB ফাইল মডিউলে সংগঠিত হয়, প্রতিটি মডিউলের নিজস্ব কোড, সম্পদ এবং সম্পদ থাকে। সবচেয়ে সাধারণ গঠন অন্তর্ভুক্ত:
- বেস মডিউল: মূল অ্যাপ কোড এবং সম্পদ রয়েছে যা প্রতিটি ডিভাইসের প্রয়োজন। এই সবসময় ইনস্টল করা হয়.
- কনফিগারেশন বিভাজন: ভাষা সংস্থান, স্ক্রিন ঘনত্বের সংস্থান এবং ABI (CPU আর্কিটেকচার) নেটিভ লাইব্রেরির জন্য আলাদা বিভাগ।
- গতিশীল বৈশিষ্ট্য মডিউল: ঐচ্ছিক মডিউল যা প্রাথমিক ইনস্টলেশনের পরে চাহিদা অনুযায়ী ডাউনলোড করা যেতে পারে।
- সম্পদ প্যাক: গেমের স্তর বা মিডিয়ার মতো বড় সম্পদ যা ইনস্টলের সময়, চাহিদা অনুযায়ী বা পটভূমিতে বিতরণ করা যেতে পারে।
বিভক্ত APK জেনারেশন
যখন একজন ব্যবহারকারী প্লে স্টোর থেকে একটি অ্যাপ ডাউনলোড করেন, তখন Google এর সার্ভারগুলি ডিভাইসের কনফিগারেশন পরীক্ষা করে এবং সেই নির্দিষ্ট ডিভাইসের জন্য তৈরি করা স্প্লিট APKগুলির একটি সেট তৈরি করে। একটি সাধারণ ইনস্টলেশন অন্তর্ভুক্ত হতে পারে:
- base.apk, মূল অ্যাপ্লিকেশন কোড এবং প্রয়োজনীয় সম্পদ
- split_config.arm64_v8a.apk, ডিভাইসের CPU-এর জন্য নেটিভ লাইব্রেরি
- split_config.xxhdpi.apk, ডিভাইসের পর্দার ঘনত্বের জন্য সম্পদ
- split_config.en.apk, ব্যবহারকারীর লোকেলের জন্য ভাষা সম্পদ
এই বিভক্ত APKগুলি একক লজিক্যাল অ্যাপ হিসাবে একসাথে ইনস্টল করা আছে। Android প্যাকেজ ম্যানেজার তাদের একটি অ্যাপ্লিকেশন হিসাবে বিবেচনা করে, কিন্তু তারা ডিভাইসে শারীরিকভাবে পৃথক ফাইল। এটি এমন একটি প্রক্রিয়া যা আকার সঞ্চয়কে সক্ষম করে।
ডায়নামিক ডেলিভারি
অ্যাপ বান্ডেলের সবচেয়ে শক্তিশালী বৈশিষ্ট্যগুলির মধ্যে একটি হল ডায়নামিক ডেলিভারি। বিকাশকারীরা নির্দিষ্ট বৈশিষ্ট্যগুলিকে চাহিদা অনুসারে ডাউনলোডযোগ্য হিসাবে চিহ্নিত করতে পারে। উদাহরণস্বরূপ, একটি ফটো এডিটিং অ্যাপ একটি গতিশীল বৈশিষ্ট্য মডিউল হিসাবে উন্নত ফিল্টার অন্তর্ভুক্ত করতে পারে। যে ব্যবহারকারীরা কখনই এই ফিল্টারগুলি ব্যবহার করেন না তারা কখনই সেগুলি ডাউনলোড করেন না, স্টোরেজ স্পেস বাঁচায়।
গতিশীল বৈশিষ্ট্য মডিউল রানটাইমে প্লে কোর লাইব্রেরির মাধ্যমে ডাউনলোড এবং ইনস্টল করা হয়। অ্যাপটি একটি মডিউল ইনস্টল করা আছে কিনা তা পরীক্ষা করতে পারে এবং প্রয়োজনে এটি ডাউনলোডের অনুরোধ করতে পারে, যাতে ব্যবহারকারী সম্পূর্ণ পুনরায় ইনস্টল করার পরিবর্তে একটি ছোট ইন-অ্যাপ ডাউনলোড হিসাবে নতুন কার্যকারিতা অনুভব করে।
AAB বনাম APK: মূল পার্থক্য
এই ফরম্যাটের মধ্যে পার্থক্য বোঝা যখন প্রতিটি উপযুক্ত তখন স্পষ্ট করতে সাহায্য করে:
- ইনস্টলযোগ্যতা: APK ফাইলগুলি সরাসরি যেকোনো Android ডিভাইসে ইনস্টল করা যেতে পারে। AAB ফাইল সরাসরি ইনস্টল করা যাবে না এবং প্রথমে প্রক্রিয়া করতে হবে।
- আকার: একটি সর্বজনীন APK-এ সমস্ত কনফিগারেশনের জন্য সংস্থান রয়েছে৷ একটি AAB ডিভাইস-নির্দিষ্ট ডেলিভারি সক্ষম করে, যার ফলে ছোট ডাউনলোড হয়।
- স্বাক্ষর করা: APKs সহ, বিকাশকারী চূড়ান্ত ইনস্টলযোগ্য প্যাকেজ স্বাক্ষর করে। AABs-এর সাহায্যে, বিকাশকারী বান্ডিলটিতে স্বাক্ষর করে এবং Google Play অ্যাপ সাইনিং ব্যবহার করে জেনারেট করা APKগুলিতে পুনরায় স্বাক্ষর করে।
- বিতরণ: APK যেকোনো চ্যানেলের মাধ্যমে বিতরণ করা যেতে পারে। AAB গুলি প্রাথমিকভাবে প্লে স্টোরের জন্য ডিজাইন করা হয়েছে, যদিও বান্ডলেটুলের মতো টুলগুলি স্থানীয়ভাবে তাদের থেকে APK তৈরি করতে পারে।
- শেয়ারযোগ্যতা: আপনি সহজেই অন্য ব্যক্তির সাথে একটি APK ফাইল শেয়ার করতে পারেন। AAB থেকে ইনস্টল করা একটি অ্যাপ শেয়ার করার জন্য সমস্ত বিভক্ত APK সংগ্রহ করতে হবে, যা আরও জটিল।
সাইনিং বিতর্ক
AAB ম্যান্ডেটের সবচেয়ে বিতর্কিত দিকগুলির মধ্যে একটি হল প্লে অ্যাপ সাইনিং। যখন একজন বিকাশকারী একটি AAB আপলোড করে, তখন Google ব্যবহারকারীদের কাছে পৌঁছে দেওয়া চূড়ান্ত APKগুলিতে স্বাক্ষর করতে ব্যবহৃত সাইনিং কী ধরে রাখে। এর মানে হল যে Google প্রযুক্তিগতভাবে APK বিষয়বস্তু স্বাক্ষর করার এবং বিতরণ করার আগে সংশোধন করার ক্ষমতা রাখে৷
গুগল যুক্তি দেয় যে এটি প্রয়োজনীয় কারণ তাদের তাদের তৈরি করা বিভক্ত APKগুলিতে স্বাক্ষর করতে হবে। ডেভেলপাররা তাদের আপলোড প্রমাণীকরণের জন্য একটি আপলোড কী ধরে রাখে, কিন্তু প্রকৃত অ্যাপ সাইনিং কী Google-এর পরিকাঠামো দ্বারা পরিচালিত হয়।
বেশিরভাগ বিকাশকারীদের জন্য, এটি একটি যুক্তিসঙ্গত ট্রেড-অফ। Google কী ব্যাকআপ এবং পুনরুদ্ধার পরিষেবা প্রদান করে এবং মূল ক্ষতির ঝুঁকি (যা স্থায়ীভাবে অ্যাপ আপডেটগুলিকে প্রতিরোধ করবে) বাদ দেওয়া হয়। যাইহোক, গোপনীয়তা-কেন্দ্রিক বিকাশকারী এবং ওপেন সোর্স অ্যাডভোকেটরা বিশ্বাসের এই কেন্দ্রীকরণ নিয়ে উদ্বেগ প্রকাশ করেছেন।
অ্যাপগুলি শেয়ার করা ব্যবহারকারীদের জন্য এর অর্থ কী৷
অ্যাপ বান্ডিল-এ স্থানান্তরিত হওয়া ব্যবহারকারীদের জন্য উল্লেখযোগ্য প্রভাব রয়েছে যারা প্লে স্টোরের বাইরে অ্যাপ শেয়ার করতে চান:
ইনস্টল করা অ্যাপস বের করা হচ্ছে
আপনি যখন AAB থেকে ইনস্টল করা একটি অ্যাপ বের করেন, আপনি একটি একক APK ফাইল পাবেন না। পরিবর্তে, আপনি বিভক্ত APKগুলির একটি সংগ্রহ পাবেন। এই স্প্লিটগুলি ডিভাইস-নির্দিষ্ট, মানে ARM64 প্রসেসর এবং xxhdpi স্ক্রীন সহ একটি ফোন থেকে বের করা একটি অ্যাপ ভিন্ন কনফিগারেশনের ডিভাইসে কাজ করবে না।
XAPK এবং APKS ফরম্যাট
বিভক্ত APK শেয়ার করার চ্যালেঞ্জ মোকাবেলা করার জন্য, XAPK এবং APKS এর মত কনটেইনার ফর্ম্যাট তৈরি করা হয়েছিল। এই ফর্ম্যাটগুলি সমস্ত বিভক্ত APKগুলিকে একটি একক ডাউনলোডযোগ্য ফাইলে একত্রিত করে৷ আপনি যখন একটি XAPK ফাইলের মুখোমুখি হন, তখন সম্ভবত এটিতে একটি অ্যাপ থাকে যা মূলত একটি অ্যাপ বান্ডেল হিসাবে বিতরণ করা হয়েছিল।
আমাদের XAPK থেকে APK রূপান্তরকারী আপনাকে এই কন্টেইনার ফর্ম্যাটগুলি থেকে বেস APK বের করতে সাহায্য করতে পারে। যাইহোক, মনে রাখবেন যে প্রতিটি ডিভাইসে সঠিকভাবে কাজ করার জন্য অ্যাপ্লিকেশনটির জন্য প্রয়োজনীয় সমস্ত সংস্থান একা বেস APK-তে নাও থাকতে পারে, যেহেতু ঘনত্ব এবং ABI-নির্দিষ্ট সংস্থানগুলি বিভক্ত APKগুলিতে থাকতে পারে।
bundletool ব্যবহার করে
Google bundletool নামে একটি ওপেন-সোর্স টুল সরবরাহ করে যা স্থানীয়ভাবে একটি AAB ফাইল থেকে APK তৈরি করতে পারে। ডেভেলপাররা পরীক্ষা বা বিকল্প বিতরণের জন্য সার্বজনীন APK তৈরি করতে এটি ব্যবহার করতে পারেন। কমান্ডের মত দেখাচ্ছে:
bundletool build-apks --bundle=app.aab --output=app.apks --mode=universal
এটি একটি সর্বজনীন APK তৈরি করে যাতে সমস্ত কনফিগারেশনের জন্য সমস্ত সংস্থান রয়েছে৷ এটি একটি ডিভাইস-নির্দিষ্ট বিল্ডের চেয়ে বড় হবে কিন্তু যেকোনো ডিভাইসে কাজ করে। এটি আমাদের AAB থেকে APK রূপান্তরকারী দ্বারা ব্যবহৃত পদ্ধতি।
বিকল্প অ্যাপ স্টোরের উপর প্রভাব
AAB ম্যান্ডেট প্রাথমিকভাবে Google Play Store-কে প্রভাবিত করে। বিকল্প অ্যাপ স্টোর এবং সরাসরি বিতরণ চ্যানেলগুলি এখনও APK ফাইলগুলি গ্রহণ করতে পারে৷ যে বিকাশকারীরা Play এর বাইরে বিতরণ করতে চান তারা তাদের AAB আপলোডের পাশাপাশি সর্বজনীন APK তৈরি করা চালিয়ে যেতে পারেন।
যাইহোক, কিছু ডেভেলপার শুধুমাত্র AAB তৈরি করে এবং সম্পূর্ণভাবে প্লে ফর ডিস্ট্রিবিউশনের উপর নির্ভর করে। এর মানে হল যে এই বিকাশকারীদের থেকে অ্যাপগুলি প্লে স্টোর ইকোসিস্টেমের বাইরে পাওয়া কঠিন। থার্ড-পার্টি অ্যাপ রিপোজিটরিগুলি হয় বিভক্ত APK সংগ্রহগুলি হোস্ট করে (XAPK বা APKS ফাইল হিসাবে) অথবা সর্বজনীন APK তৈরি করতে bundletool ব্যবহার করে অভিযোজিত হয়েছে।
অনুশীলনে গতিশীল বৈশিষ্ট্য মডিউল
ডায়নামিক বৈশিষ্ট্য মডিউলগুলি অ্যাপ বান্ডেল ফর্ম্যাটের সবচেয়ে আকর্ষণীয় ক্ষমতাগুলির মধ্যে একটি উপস্থাপন করে। এখানে কিছু বাস্তব-বিশ্ব ব্যবহারের ক্ষেত্রে রয়েছে:
- ক্যামেরা বৈশিষ্ট্য: একটি অ্যাপে একটি ডায়নামিক মডিউল হিসাবে AR ফিল্টার অন্তর্ভুক্ত থাকতে পারে, যখন ব্যবহারকারী প্রথম ক্যামেরা বৈশিষ্ট্যটি অ্যাক্সেস করে তখনই ডাউনলোড করা হয়।
- ভাষা প্যাক: কম সাধারণ ভাষার জন্য অনুবাদ ডেটা প্রতিটি ইনস্টলেশনের সাথে বান্ডিল না করে চাহিদা অনুযায়ী বিতরণ করা যেতে পারে।
- খেলার মাত্রা: গেমগুলি খেলোয়াড়দের অগ্রগতির সাথে সাথে প্রাথমিক ডাউনলোড ছোট রেখে অতিরিক্ত সামগ্রী সরবরাহ করতে পারে।
- পেশাদার সরঞ্জাম: প্রোডাক্টিভিটি অ্যাপ্লিকেশানগুলিতে উন্নত বৈশিষ্ট্যগুলি শুধুমাত্র সেই ব্যবহারকারীদের কাছেই বিতরণ করা যেতে পারে যাদের তাদের প্রয়োজন৷
ব্যবহারকারীদের জন্য, এর মানে হল যে ডায়নামিক মডিউল ডাউনলোড হওয়ার সাথে সাথে একটি অ্যাপের ইনস্টল করা আকার সময়ের সাথে বৃদ্ধি পেতে পারে। এর মানে হল যে এই ধরনের একটি অ্যাপ শেয়ার করার জন্য সমস্ত ডাউনলোড করা মডিউল অন্তর্ভুক্ত করা প্রয়োজন, যা নিষ্কাশন প্রক্রিয়াকে আরও জটিল করে তোলে।
বিকাশকারীদের জন্য সর্বোত্তম অনুশীলন
আপনি যদি Android অ্যাপ্লিকেশানগুলি তৈরি করে থাকেন তবে অ্যাপ বান্ডেলগুলির সাথে কার্যকরভাবে কাজ করার জন্য এখানে সুপারিশ রয়েছে:
- প্লেতে আপলোড করার আগে সর্বদা স্থানীয়ভাবে bundletool দিয়ে পরীক্ষা করুন। ডিভাইস-নির্দিষ্ট APK তৈরি করুন এবং সেগুলি সঠিকভাবে কাজ করছে কিনা তা যাচাই করুন।
- Play Console-এর ইন্টারনাল টেস্টিং ট্র্যাক ব্যবহার করুন যাচাই করতে যে বিভক্ত APKগুলি বাস্তব ডিভাইসে সঠিকভাবে ইনস্টল এবং কাজ করে।
- যদি আপনার ব্যবহারকারীর ভিত্তি প্লে স্টোরের বাইরে প্রসারিত হয় তবে বিকল্প বিতরণ চ্যানেলগুলির জন্য একটি সার্বজনীন APK প্রদান বিবেচনা করুন।
- গতিশীল বৈশিষ্ট্য মডিউল সীমানা সচেতন হন. যে বৈশিষ্ট্যগুলি প্রায়শই ব্যবহৃত হয় সেগুলি বেস মডিউলে থাকা উচিত, গতিশীল মডিউল নয়৷
- বিভিন্ন কনফিগারেশন সহ ডিভাইসে পরীক্ষা করুন নিশ্চিত করতে যে কনফিগারেশন বিভাজন সঠিকভাবে তৈরি হয়েছে এবং কোনও সংস্থান অনুপস্থিত।
- আপনার আপলোড কী সুরক্ষিত রাখুন। যখন Google অ্যাপ সাইনিং কী পরিচালনা করে, আপনার আপলোড কী বিকাশকারী হিসাবে আপনার পরিচয়কে প্রমাণীকরণ করে৷
অ্যাপ বিতরণের ভবিষ্যত
অ্যাপ বান্ডেল ফরম্যাট বিকশিত হতে থাকে। Google বড় গেম অ্যাসেটের জন্য Play অ্যাসেট ডেলিভারি, SDK-এর বিজ্ঞাপনের জন্য SDK রানটাইম এবং Wear OS এবং Android TV কনফিগারেশনের জন্য উন্নত সমর্থনের মতো বৈশিষ্ট্যগুলি চালু করেছে। প্রবণতা আরও দানাদার, অ্যাপ্লিকেশন উপাদানগুলির চাহিদা অনুযায়ী বিতরণের দিকে।
ব্যবহারকারীদের জন্য, এর অর্থ হল প্লে স্টোর অ্যাপগুলির জন্য একটি একক, স্বয়ংসম্পূর্ণ অ্যাপ ফাইলের ধারণা কম সাধারণ হয়ে উঠছে। XAPK, APKS এর মতো ফর্ম্যাটগুলি বোঝা এবং তাদের সাথে কাজ করার জন্য উপলব্ধ সরঞ্জামগুলি ক্রমবর্ধমানভাবে গুরুত্বপূর্ণ হয়ে ওঠে যারা সাধারণ প্লে স্টোর প্রবাহের বাইরে অ্যাপগুলি পরিচালনা করেন।
কখন একটি AAB রাখতে হবে বনাম কখন একটি সর্বজনীন APK তৈরি করতে হবে
Android অ্যাপ বান্ডেল অ্যাপগুলি কীভাবে প্যাকেজ করা এবং বিতরণ করা হয় তার একটি মৌলিক পরিবর্তনের প্রতিনিধিত্ব করে। যদিও এটি ডাউনলোডের আকার এবং ডেলিভারির দক্ষতার ক্ষেত্রে প্রকৃত সুবিধা নিয়ে আসে, এটি সেই ব্যবহারকারীদের জন্য জটিলতাও প্রবর্তন করে যারা অ্যাপগুলি ভাগ করে বা বিকল্প উত্স থেকে ইনস্টল করে। AAB গুলি কীভাবে কাজ করে, তারা কীভাবে বিভক্ত APK তৈরি করে এবং ফর্ম্যাটের মধ্যে রূপান্তর করার জন্য কোন সরঞ্জামগুলি উপলব্ধ তা বোঝার ফলে আপনাকে সঠিক ফর্ম্যাট বেছে নিতে এবং আত্মবিশ্বাসের সাথে তাদের মধ্যে রূপান্তর করতে হবে৷
একটি অ্যাপ কীভাবে বিতরণ করা হয় তা অপ্টিমাইজ করতে বিকাশকারীরা AAB-এর কাছে পৌঁছান; বেশিরভাগ দৈনন্দিন ব্যবহারকারীরা শুধুমাত্র প্লে স্টোর অ্যাক্সেস ছাড়াই একটি ডিভাইসে কিছু ইনস্টল করার চেষ্টা করার সময় এটির সাথে দেখা করে। যেভাবেই হোক, মনে রাখার মতো জিনিসটি সহজ: AAB হল একটি প্রকাশনার বিন্যাস, একটি ইনস্টলেশন বিন্যাস নয়, এবং এমন সরঞ্জাম রয়েছে যা দুটির মধ্যে ব্যবধান কমিয়ে দেয়।