অ্যাপের জন্য ChromeOS ডিভাইস সমর্থন

আপনি Google Play Store ব্যবহার করে বেশ কিছু Google Chromebook-এ Android অ্যাপ ইনস্টল করতে পারেন। এই দস্তাবেজটি Chromebooks, Chromeboxes এবং Chromebases বর্ণনা করে যেগুলিতে আপনি Android অ্যাপগুলি ইনস্টল করতে পারেন৷

ওভারভিউ

বেশিরভাগ অ্যান্ড্রয়েড ফোনে এআরএম চিপসেট থাকে। যাইহোক, অনেক ChromeOS ডিভাইস x86 চিপ ব্যবহার করে। কোটলিন বা জাভাতে লেখা মৌলিক অ্যাপগুলির জন্য পার্থক্যটি গুরুত্বপূর্ণ নয়। যাইহোক, গেম ইঞ্জিন দিয়ে তৈরি করা সহ নেটিভ কোডে লেখা অ্যাপগুলির জন্য, ডিভাইসের চিপসেট একটি গুরুত্বপূর্ণ উদ্বেগ হতে পারে।

আদর্শভাবে, চারটি প্রধান Android ABIs (অ্যাপ্লিকেশন বাইনারি ইন্টারফেস) : armeabi-v7a (arm32), arm64-v8a (arm64), x86 (x86_32), এবং x86_64 সহ নেটিভ কোড সহ সমস্ত অ্যাপ এবং গেম। এটি প্রতিটি ডিভাইসের জন্য সর্বোত্তম কর্মক্ষমতা এবং সর্বনিম্ন ব্যাটারি খরচ প্রদান করে। উদাহরণস্বরূপ, একটি cmake-ভিত্তিক build.gradle ফাইলে থাকতে পারে:

গ্রোভি

externalNativeBuild {
    cmake {
        abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
    }
}

কোটলিন

externalNativeBuild {
    cmake {
        abiFilters("armeabi-v7a", "arm64-v8a", "x86", "x86_64")
    }
}

অ্যান্ড্রয়েড প্যাকেজ কিট (এপিকে) আকার

একটি মনোলিথিক APK-এ প্রতিটি ABI এর আকার বাড়ায়। এটি আপনার ব্যবহারকারীদের ডিস্ক ব্যবহার, অ্যাপ ডাউনলোডের আকার এবং অ্যাপটি প্লে স্টোরের আকার সীমা দ্বারা প্রভাবিত কিনা তা প্রভাবিত করতে পারে। এটি এড়ানোর সর্বোত্তম উপায় হল অ্যান্ড্রয়েড অ্যাপ বান্ডেল ব্যবহার করা।

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

32-বিট এবং 64-বিট বিল্ড

সমস্ত অ্যান্ড্রয়েড অ্যাপকে অবশ্যই একটি 64-বিট বিল্ড সংস্করণ প্রদান করতে হবে। একটি 32-বিট বিল্ড এআরএম এবং x86 উভয় ডিভাইসের জন্য ঐচ্ছিক। আরও তথ্যের জন্য Android 64-বিট ডকুমেন্টেশন দেখুন৷

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

এআরএম অনুবাদ

x86 Chromebooks যখনই সম্ভব ARM কোড অনুবাদ করার চেষ্টা করে, কিন্তু অনুবাদ কর্মক্ষমতা ধীর করে দেয় এবং ব্যাটারির ব্যবহার বাড়ায়। সেরা ব্যবহারকারীর অভিজ্ঞতার জন্য, x86 বিল্ড প্রদান করুন। যদি আপনি না করতে পারেন, তাহলে আপনার বিল্ডে arm32 এবং arm64 ABI উভয়ই অন্তর্ভুক্ত করুন, কারণ কিছু x86 Chromebook arm64 কোড অনুবাদ নাও করতে পারে৷

যদিও arm32 অনুবাদ সমস্ত Android-সক্ষম Chromebook-এ উপলব্ধ, তবে সমস্ত Chromebook arm64 কোড অনুবাদ করতে পারে না। এর মানে হল যে যদি আপনার গেমে শুধুমাত্র arm64 বিল্ড টার্গেট থাকে, তাহলে এটি একটি বড় সংখ্যক ChromeOS ডিভাইসের জন্য উপলব্ধ নয়৷ আপনি যদি x86 বাইনারি পাঠাতে না পারেন, তাহলে আপনার বিল্ডে arm32 এবং arm64 ABI উভয়ই অন্তর্ভুক্ত করুন।

ABIs অন্তর্ভুক্ত ChromeOS এর জন্য সমর্থন
arm64 দরিদ্র
arm32 এবং arm64 ঠিক আছে (অনুবাদ সহ)
arm32, arm64, x86_32, এবং x86_64 সেরা