আপনি যদি আপনার অ্যাপটি Google Play-তে প্রকাশ করেন, তাহলে আপনার উচিত একটি Android অ্যাপ বান্ডেল তৈরি এবং আপলোড করা। আপনি যখন তা করেন, তখন Google Play স্বয়ংক্রিয়ভাবে প্রতিটি ব্যবহারকারীর ডিভাইস কনফিগারেশনের জন্য অপ্টিমাইজ করা APK তৈরি করে এবং পরিবেশন করে, তাই তারা আপনার অ্যাপ চালানোর জন্য প্রয়োজনীয় কোড এবং সংস্থানগুলি ডাউনলোড করে। আপনি যদি Google Play-এ প্রকাশ না করেন তবে একাধিক APK প্রকাশ করা কার্যকর, তবে আপনাকে অবশ্যই প্রতিটি APK নিজেই তৈরি, স্বাক্ষর এবং পরিচালনা করতে হবে।
Google Play-তে একাধিক APK-এর সুবিধা নেওয়ার জন্য আপনার অ্যান্ড্রয়েড অ্যাপ্লিকেশান ডেভেলপ করার সময়, শুরু থেকে কিছু ভাল অভ্যাস গ্রহণ করা এবং উন্নয়ন প্রক্রিয়ায় আরও অপ্রয়োজনীয় মাথাব্যথা প্রতিরোধ করা গুরুত্বপূর্ণ। এই পাঠটি আপনাকে দেখায় কিভাবে আপনার অ্যাপের একাধিক APK তৈরি করতে হয়, প্রতিটিতে একটি আলাদা শ্রেণির স্ক্রীন আকার রয়েছে। আপনি একটি একাধিক APK কোডবেসকে যতটা সম্ভব ব্যথাহীন করার জন্য প্রয়োজনীয় কিছু সরঞ্জামও পাবেন।
আপনার একাধিক APK প্রয়োজন তা নিশ্চিত করুন
একাধিক মাপের Android ডিভাইস জুড়ে কাজ করে এমন একটি অ্যাপ্লিকেশান তৈরি করার চেষ্টা করার সময়, স্বাভাবিকভাবেই আপনি চান যে আপনার অ্যাপ্লিকেশনটি ছোট স্ক্রিনে সামঞ্জস্য বা ব্যবহারযোগ্যতা ত্যাগ না করেই বড় ডিভাইসে সমস্ত উপলব্ধ স্থানের সুবিধা গ্রহণ করুক। এটি শুরুতে মনে হতে পারে যে একাধিক APK সমর্থন সর্বোত্তম সমাধান, তবে এটি প্রায়শই হয় না। একাধিক APK বিকাশকারী গাইডের পরিবর্তে একক APK ব্যবহার করা বিভাগে আমাদের সমর্থন লাইব্রেরির ব্যবহার সহ একটি একক APK দিয়ে কীভাবে এটি সম্পাদন করা যায় সে সম্পর্কে কিছু দরকারী তথ্য অন্তর্ভুক্ত রয়েছে। আপনাকে একাধিক স্ক্রীন সমর্থন করার জন্য নির্দেশিকাটিও পড়তে হবে, এবং এমনকি একটি সমর্থন লাইব্রেরি রয়েছে যা আপনি Android SDK ব্যবহার করে ডাউনলোড করতে পারেন, যা আপনাকে প্রাক-হানিকম্ব ডিভাইসগুলিতে টুকরো টুকরো ব্যবহার করতে দেয় (একটি APK-এ একাধিক-স্ক্রীন সমর্থনকে আরও সহজ করে)।
আপনি যদি এটি পরিচালনা করতে পারেন তবে আপনার অ্যাপ্লিকেশনটিকে একটি একক APK-এ সীমাবদ্ধ করার অনেক সুবিধা রয়েছে, যার মধ্যে রয়েছে:
- প্রকাশনা এবং পরীক্ষা করা সহজ
- বজায় রাখার জন্য শুধুমাত্র একটি কোডবেস আছে
- আপনার অ্যাপ্লিকেশন ডিভাইস কনফিগারেশন পরিবর্তনের সাথে মানিয়ে নিতে পারে
- সমস্ত ডিভাইস জুড়ে অ্যাপ পুনরুদ্ধার কাজ করে
- আপনাকে বাজারের পছন্দ, এক APK থেকে পরবর্তীতে "আপগ্রেড" থেকে আচরণ, বা কোন APK কোন শ্রেণীর ডিভাইসের সাথে যায় সে সম্পর্কে চিন্তা করতে হবে না
এই পাঠের বাকি অংশটি অনুমান করে যে আপনি বিষয়টি নিয়ে গবেষণা করেছেন, অধ্যয়নের সাথে লিঙ্কযুক্ত সংস্থানগুলির উপাদানগুলিকে শোষণ করেছেন এবং নির্ধারণ করেছেন যে একাধিক APK আপনার অ্যাপ্লিকেশনের জন্য সঠিক পথ।
আপনার প্রয়োজনীয়তা চার্ট করুন
আপনার কতগুলি APK প্রয়োজন এবং প্রতিটি APK কভার করে তা দ্রুত নির্ধারণ করতে একটি সাধারণ চার্ট তৈরি করে শুরু করুন। সৌভাগ্যবশত, আপনার প্রয়োজনীয়তাগুলি দ্রুত এবং সহজে চার্ট করা সহজ এবং পরবর্তীতে একটি রেফারেন্স আছে৷ Android প্ল্যাটফর্মে উপলব্ধ বিভিন্ন স্ক্রীন মাপের প্রতিনিধিত্বকারী কক্ষগুলির একটি সারি দিয়ে শুরু করুন৷
ছোট | স্বাভাবিক | বড় | বড় |
এখন শুধু চার্টে এমন রঙ করুন যাতে প্রতিটি রঙ একটি APK প্রতিনিধিত্ব করে। আপনি কীভাবে প্রতিটি APK একটি নির্দিষ্ট স্ক্রীন আকারে প্রয়োগ করতে পারেন তার একটি উদাহরণ এখানে।
ছোট | স্বাভাবিক | বড় | বড় |
আপনার প্রয়োজনের উপর নির্ভর করে, আপনার কাছে দুটি APK, "ছোট এবং অন্য সবকিছু" বা "xlarge এবং সবকিছু" থাকতে পারে। চার্টে রঙ করা আন্তঃ-টিম যোগাযোগকে আরও সহজ করে তোলে—আপনি এখন প্রতিটি APK কে "নীল", "সবুজ" বা "লাল" হিসাবে উল্লেখ করতে পারেন, এটি যত রকমের স্ক্রীন কভার করে না কেন।
একটি লাইব্রেরি প্রকল্পে সমস্ত সাধারণ কোড এবং সংস্থান রাখুন
আপনি একটি বিদ্যমান অ্যান্ড্রয়েড অ্যাপ্লিকেশান সংশোধন করছেন বা স্ক্র্যাচ থেকে শুরু করছেন না কেন, কোডবেসে আপনার এটিই প্রথম কাজ এবং সবচেয়ে গুরুত্বপূর্ণ। লাইব্রেরি প্রজেক্টের মধ্যে যা কিছু যায় তা শুধুমাত্র একবার আপডেট করা দরকার (ভাবুন ভাষা-স্থানীয় স্ট্রিং, রঙের থিম, ভাগ করা কোডে বাগ সংশোধন করা হয়েছে), যা আপনার বিকাশের সময়কে উন্নত করে এবং ভুল হওয়ার সম্ভাবনা কমিয়ে দেয় যা সহজেই এড়ানো যেত।
দ্রষ্টব্য: লাইব্রেরি প্রকল্পগুলি কীভাবে তৈরি এবং অন্তর্ভুক্ত করতে হবে তার বাস্তবায়নের বিশদগুলি এই পাঠের সুযোগের বাইরে হলেও, আপনি একটি Android লাইব্রেরি তৈরি করুন পড়ার মাধ্যমে গতি পেতে পারেন৷
আপনি যদি একাধিক APK সমর্থন ব্যবহার করার জন্য একটি বিদ্যমান অ্যাপ্লিকেশন রূপান্তর করে থাকেন, তাহলে প্রতিটি স্থানীয় স্ট্রিং ফাইল, মানগুলির তালিকা, থিমের রঙ, মেনু আইকন এবং লেআউটের জন্য আপনার কোডবেসটি ঘষে নিন যা APK গুলি জুড়ে পরিবর্তিত হতে যাচ্ছে না এবং এটি সবই রাখুন লাইব্রেরি প্রকল্প। যে কোডটি খুব বেশি পরিবর্তন করতে যাচ্ছে না তাও লাইব্রেরি প্রকল্পে যেতে হবে। আপনি সম্ভবত APK থেকে APK-তে একটি বা দুটি পদ্ধতি যোগ করতে এই ক্লাসগুলিকে প্রসারিত করতে দেখতে পাবেন।
অন্যদিকে, আপনি যদি স্ক্র্যাচ থেকে অ্যাপ্লিকেশনটি তৈরি করেন, লাইব্রেরি প্রজেক্টে প্রথমে কোড লেখার জন্য যতটা সম্ভব চেষ্টা করুন, তারপর প্রয়োজন হলে শুধুমাত্র এটিকে একটি পৃথক APK-এ সরান৷ এটি একটি, তারপরে আরেকটি, তারপরে আরেকটিতে যোগ করার চেয়ে দীর্ঘমেয়াদে এটি পরিচালনা করা অনেক সহজ, তারপরে কয়েক মাস পরে এই ব্লবটিকে লাইব্রেরি বিভাগে স্থানান্তরিত করা যেতে পারে কিনা তা বোঝার চেষ্টা করা ছাড়াই।
নতুন APK প্রকল্প তৈরি করুন
আপনি যে প্রতিটি APK প্রকাশ করতে যাচ্ছেন তার জন্য একটি আলাদা অ্যান্ড্রয়েড প্রকল্প থাকা উচিত। সহজ সংগঠনের জন্য, লাইব্রেরি প্রজেক্ট এবং সমস্ত সম্পর্কিত APK প্রোজেক্ট একই প্যারেন্ট ফোল্ডারের অধীনে রাখুন। এছাড়াও মনে রাখবেন যে প্রতিটি APK-এর একই প্যাকেজ নাম থাকা দরকার, যদিও তাদের লাইব্রেরির সাথে প্যাকেজের নাম শেয়ার করার প্রয়োজন নেই। পূর্বে বর্ণিত স্কিম অনুসরণ করে আপনার কাছে 3টি APK থাকলে, আপনার রুট ডিরেক্টরিটি এইরকম দেখতে পারে:
alexlucas:~/code/multi-apks-root$ ls foo-blue foo-green foo-lib foo-red
প্রকল্পগুলি তৈরি হয়ে গেলে, প্রতিটি APK প্রকল্পের রেফারেন্স হিসাবে লাইব্রেরি প্রকল্প যোগ করুন। যদি সম্ভব হয়, লাইব্রেরি প্রকল্পে আপনার শুরুর কার্যকলাপ সংজ্ঞায়িত করুন এবং আপনার APK প্রকল্পে সেই কার্যকলাপটি প্রসারিত করুন। লাইব্রেরি প্রজেক্টে সংজ্ঞায়িত একটি প্রারম্ভিক ক্রিয়াকলাপ আপনাকে এক জায়গায় আপনার সমস্ত অ্যাপ্লিকেশন আরম্ভ করার সুযোগ দেয়, যাতে প্রতিটি পৃথক APK কে অ্যানালিটিক্স শুরু করা, লাইসেন্সিং চেক চালানো এবং যেকোনও "সর্বজনীন" কাজগুলি পুনরায় প্রয়োগ করতে না হয়। অন্যান্য প্রারম্ভিক পদ্ধতি যা APK থেকে APK-তে খুব বেশি পরিবর্তন করে না।
ম্যানিফেস্টগুলি সামঞ্জস্য করুন
যখন একজন ব্যবহারকারী Google Play এর মাধ্যমে একাধিক APK ব্যবহার করে এমন একটি অ্যাপ্লিকেশন ডাউনলোড করেন, তখন দুটি সহজ নিয়ম ব্যবহার করে ব্যবহার করার জন্য সঠিক APK বেছে নেওয়া হয়:
- ম্যানিফেস্টকে দেখাতে হবে যে নির্দিষ্ট APK যোগ্য
- যোগ্য APKগুলির মধ্যে, সর্বোচ্চ সংস্করণ নম্বর জিতেছে
উদাহরণ স্বরূপ, আগে বর্ণিত একাধিক APK-এর সেট নেওয়া যাক, এবং ধরে নিই যে প্রতিটি APK তার "লক্ষ্য" স্ক্রীনের আকারের চেয়ে বড় সমস্ত স্ক্রীন সাইজ সমর্থন করার জন্য সেট করা হয়েছে। পৃথকভাবে নেওয়া হলে, প্রতিটি APK-এর সম্ভাব্য পরিসর দেখতে এইরকম হবে:
ছোট | স্বাভাবিক | বড় | বড় |
ছোট | স্বাভাবিক | বড় | বড় |
ছোট | স্বাভাবিক | বড় | বড় |
যাইহোক, "সর্বোচ্চ সংস্করণ নম্বর জয়" নিয়মটি ব্যবহার করে, যদি আমরা প্রতিটি APK-এ VersionCode অ্যাট্রিবিউট সেট করি যেমন লাল ≥ সবুজ ≥ নীল, তাহলে চার্টটি কার্যকরভাবে এতে নিচে নেমে যায়:
ছোট | স্বাভাবিক | বড় | বড় |
এখন, আরও অনুমান করা যাক যে রেড APK এর কিছু প্রয়োজনীয়তা রয়েছে যা অন্য দুটিতে নেই। অ্যান্ড্রয়েড ডেভেলপার গাইডের Google Play পৃষ্ঠায় ফিল্টারে সম্ভাব্য অপরাধীদের একটি সম্পূর্ণ তালিকা রয়েছে। উদাহরণের জন্য, ধরে নেওয়া যাক যে লাল রঙের জন্য সামনের দিকের ক্যামেরা প্রয়োজন। প্রকৃতপক্ষে, লাল APK-এর সম্পূর্ণ পয়েন্ট হল সামনের দিকের ক্যামেরা দিয়ে বিনোদনমূলক জিনিসগুলি করতে অতিরিক্ত উপলব্ধ স্ক্রীন স্থান ব্যবহার করা। কিন্তু, দেখা যাচ্ছে, সব বড় বড় ডিভাইসের এমনকি সামনের দিকের ক্যামেরাও নেই! +ভৌতিক !
সৌভাগ্যবশত, যদি একজন ব্যবহারকারী এই ধরনের একটি ডিভাইস থেকে Google Play ব্রাউজ করেন, Google Play ম্যানিফেস্টটি দেখবে, দেখবে যে Red একটি প্রয়োজন হিসাবে সামনের দিকের ক্যামেরাটিকে তালিকাভুক্ত করেছে এবং শান্তভাবে এটিকে উপেক্ষা করে, নির্ধারণ করে যে Red এবং সেই ডিভাইসটি একটি নয় ডিজিটাল স্বর্গে তৈরি ম্যাচ। তারপরে এটি দেখতে পাবে যে সবুজ শুধুমাত্র xlarge ডিভাইসের সাথে সামঞ্জস্যপূর্ণ নয়, তবে সামনের দিকের ক্যামেরা আছে কিনা তাও চিন্তা করে না! অ্যাপটি এখনও ব্যবহারকারীরা Google Play থেকে ডাউনলোড করতে পারেন, কারণ পুরো ফ্রন্ট-ক্যামেরা দুর্ঘটনা সত্ত্বেও, এখনও একটি APK ছিল যা সেই নির্দিষ্ট স্ক্রীনের আকারকে সমর্থন করে।
আপনার সমস্ত APK আলাদা "ট্র্যাকে" রাখার জন্য, একটি ভাল সংস্করণ কোড স্কিম থাকা গুরুত্বপূর্ণ৷ প্রস্তাবিত একটি আমাদের বিকাশকারী গাইডের সংস্করণ কোড এলাকায় পাওয়া যাবে। যেহেতু APK-এর উদাহরণ সেটটি শুধুমাত্র 3টি সম্ভাব্য মাত্রার একটির সাথে কাজ করছে, তাই প্রতিটি APK 1000 দ্বারা আলাদা করা এবং সেখান থেকে বৃদ্ধি করা যথেষ্ট। এটি দেখতে এরকম হতে পারে:
নীল: 1001, 1002, 1003, 1004...
সবুজ: 2001, 2002, 2003, 2004...
লাল: 3001, 3002, 3003, 3004...
এই সব একসাথে রাখলে, আপনার Android ম্যানিফেস্টগুলি সম্ভবত নিম্নলিখিতগুলির মতো দেখতে পাবে:
নীল:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1001" android:versionName="1.0" package="com.example.foo"> <supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:xlargeScreens="true" /> ...
সবুজ:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="2001" android:versionName="1.0" package="com.example.foo"> <supports-screens android:smallScreens="false" android:normalScreens="false" android:largeScreens="true" android:xlargeScreens="true" /> ...
লাল:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="3001" android:versionName="1.0" package="com.example.foo"> <supports-screens android:smallScreens="false" android:normalScreens="false" android:largeScreens="false" android:xlargeScreens="true" /> ...
মনে রাখবেন যে প্রযুক্তিগতভাবে, একাধিক APK হয় সমর্থন-স্ক্রিন ট্যাগ বা সামঞ্জস্যপূর্ণ-স্ক্রিন ট্যাগের সাথে কাজ করবে। সাপোর্ট-স্ক্রিনগুলি সাধারণত পছন্দ করা হয় এবং একই ম্যানিফেস্টে উভয় ট্যাগ ব্যবহার করা সাধারণত একটি খারাপ ধারণা। এটি জিনিসগুলিকে অপ্রয়োজনীয়ভাবে জটিল করে তোলে এবং ত্রুটির সুযোগ বাড়ায়। এছাড়াও মনে রাখবেন যে ডিফল্ট মানগুলির সুবিধা নেওয়ার পরিবর্তে (ছোট এবং স্বাভাবিক সর্বদা ডিফল্টভাবে সত্য), ম্যানিফেস্টগুলি স্পষ্টভাবে প্রতিটি পর্দার আকারের জন্য মান সেট করে। এটি লাইনের নিচে আপনার মাথাব্যথা সংরক্ষণ করতে পারে। উদাহরণস্বরূপ, <9 টার্গেট SDK সহ একটি ম্যানিফেস্টে xlarge স্বয়ংক্রিয়ভাবে মিথ্যাতে সেট হয়ে যাবে, যেহেতু সেই আকারটি এখনও বিদ্যমান ছিল না। তাই স্পষ্ট হতে!
আপনার প্রাক-লঞ্চ চেকলিস্ট পর্যালোচনা করুন
Google Play-এ আপলোড করার আগে, নিম্নলিখিত আইটেমগুলি দুবার চেক করুন৷ মনে রাখবেন যে এগুলি একাধিক APK-এর জন্য বিশেষভাবে প্রাসঙ্গিক, এবং Google Play-তে আপলোড করা সমস্ত অ্যাপ্লিকেশনের জন্য একটি সম্পূর্ণ চেকলিস্ট উপস্থাপন করে না৷
- সমস্ত APK-এর একই প্যাকেজের নাম থাকতে হবে
- সমস্ত APK একই শংসাপত্রের সাথে স্বাক্ষরিত হতে হবে৷
- প্রতিটি স্ক্রিনের আকার যা আপনি আপনার APK সমর্থন করতে চান, ম্যানিফেস্টে সত্য হিসাবে সেট করুন৷ প্রতিটি স্ক্রীন সাইজ আপনি এটি এড়াতে চান, মিথ্যা সেট করুন
- বিরোধপূর্ণ তথ্যের জন্য আপনার ম্যানিফেস্ট ফিল্টারগুলি দুবার চেক করুন (একটি APK যা শুধুমাত্র XLARGE স্ক্রিনে কাপকেক সমর্থন করে তা কেউ দেখতে পাবে না)
- প্রতিটি APK এর ম্যানিফেস্ট অবশ্যই স্বতন্ত্র হতে হবে অন্তত একটি সমর্থিত স্ক্রীন, openGL টেক্সচার বা প্ল্যাটফর্ম সংস্করণ জুড়ে
- অন্তত একটি ডিভাইসে প্রতিটি APK পরীক্ষা করার চেষ্টা করুন। এটি বাদ দিয়ে, আপনার ডেভেলপমেন্ট মেশিনে বসে থাকা ব্যবসার সবচেয়ে কাস্টমাইজযোগ্য ডিভাইস এমুলেটরগুলির মধ্যে একটি রয়েছে৷ বাদাম যান!
Google Play-তে আপনার অ্যাপ্লিকেশন লুকিয়ে রাখতে পারে এমন কোনো চমক নেই তা নিশ্চিত করতে বাজারে পাঠানোর আগে সংকলিত APK পরিদর্শন করাও মূল্যবান। এটি আসলে "aapt" টুল ব্যবহার করে বেশ সহজ। Aapt (অ্যান্ড্রয়েড অ্যাসেট প্যাকেজিং টুল) আপনার অ্যান্ড্রয়েড অ্যাপ্লিকেশানগুলি তৈরি এবং প্যাকেজ করার জন্য বিল্ড প্রক্রিয়ার অংশ এবং সেগুলি পরিদর্শনের জন্য একটি খুব সহজ টুলও৷
>aapt dump badging package: name='com.example.hello' versionCode='1' versionName='1.0' sdkVersion:'11' uses-permission:'android.permission.SEND_SMS' application-label:'Hello' application-icon-120:'res/drawable-ldpi/icon.png' application-icon-160:'res/drawable-mdpi/icon.png' application-icon-240:'res/drawable-hdpi/icon.png' application: label='Hello' icon='res/drawable-mdpi/icon.png' launchable-activity: name='com.example.hello.HelloActivity' label='Hello' icon='' uses-feature:'android.hardware.telephony' uses-feature:'android.hardware.touchscreen' main supports-screens: 'xlarge' supports-any-density: 'true' locales: '--_--' densities: '120' '160' '240'
আপনি যখন aapt আউটপুট পরীক্ষা করেন, তখন নিশ্চিত হয়ে নিন যে আপনার কাছে সমর্থন-স্ক্রিন এবং সামঞ্জস্যপূর্ণ-স্ক্রিনগুলির জন্য বিরোধপূর্ণ মান নেই এবং আপনার কাছে অনাকাঙ্ক্ষিত "ব্যবহার-বৈশিষ্ট্য" মান নেই যা আপনার অনুমতির ফলে যোগ করা হয়েছে ম্যানিফেস্টে সেট করুন। উপরের উদাহরণে, সমস্ত ডিভাইস না হলে APK বেশিরভাগের কাছেই অদৃশ্য হবে।
কেন? প্রয়োজনীয় অনুমতি SEND_SMS যোগ করে, android.hardware.telephony-এর বৈশিষ্ট্যের প্রয়োজনীয়তা নিহিতভাবে যোগ করা হয়েছে। যেহেতু বেশির ভাগ (যদি সব না হয়) x বৃহৎ ডিভাইসগুলি টেলিফোনি হার্ডওয়্যার ছাড়াই ট্যাবলেট, তাই Google Play এই ক্ষেত্রে এই APK ফিল্টার করবে, যতক্ষণ না ভবিষ্যতের ডিভাইসগুলি বড় আকারের স্ক্রীন আকার হিসাবে রিপোর্ট করার জন্য যথেষ্ট বড় এবং টেলিফোনি হার্ডওয়্যারের অধিকারী না হওয়া পর্যন্ত।
সৌভাগ্যবশত আপনার ম্যানিফেস্টে নিম্নলিখিতগুলি যোগ করে এটি সহজেই ঠিক করা হয়েছে:
<uses-feature android:name="android.hardware.telephony" android:required="false" />
android.hardware.touchscreen
প্রয়োজনীয়তাও অন্তর্নিহিতভাবে যোগ করা হয়েছে। আপনি যদি চান যে আপনার APK টিভিতে দৃশ্যমান হোক যা নন-টাচস্ক্রিন ডিভাইস আপনার ম্যানিফেস্টে নিম্নলিখিতগুলি যোগ করা উচিত:
<uses-feature android:name="android.hardware.touchscreen" android:required="false" />
একবার আপনি প্রি-লঞ্চ চেকলিস্ট সম্পূর্ণ করলে, Google Play-তে আপনার APK আপলোড করুন। Google Play ব্রাউজ করার সময় অ্যাপ্লিকেশনটি প্রদর্শিত হতে কিছুটা সময় লাগতে পারে, কিন্তু যখন এটি হয়, একটি শেষ পরীক্ষা করুন৷ যেকোন পরীক্ষামূলক ডিভাইসে অ্যাপ্লিকেশনটি ডাউনলোড করুন আপনাকে নিশ্চিত করতে হবে যে APKগুলি উদ্দেশ্যযুক্ত ডিভাইসগুলিকে লক্ষ্য করে।
Google Play-তে একাধিক APK প্রকাশ করার বিষয়ে আরও তথ্যের জন্য, একাধিক APK সমর্থন পড়ুন।