এই পৃষ্ঠায় কাটলফিশ ব্যবহার করে কীভাবে একটি AOSP বিল্ড চালু করতে হয় তা বর্ণনা করা হয়েছে।
KVM প্রাপ্যতা যাচাই করুন
কাটলফিশ একটি ভার্চুয়াল ডিভাইস এবং এটি হোস্ট মেশিনে ভার্চুয়ালাইজেশন উপলব্ধ থাকার উপর নির্ভরশীল।
আপনার হোস্ট মেশিনের টার্মিনালে, কার্নেল-ভিত্তিক ভার্চুয়াল মেশিন (KVM) দিয়ে ভার্চুয়ালাইজেশন উপলব্ধ আছে কিনা তা নিশ্চিত করুন:
grep -c -w "vmx\|svm" /proc/cpuinfoএই কমান্ডটির ফলাফল একটি অশূন্য মান হওয়া উচিত।
ARM64 মেশিনে চালানোর সময়, সবচেয়ে সরাসরি উপায় হলো /dev/kvm চেক করা:
find /dev -name kvmলঞ্চ কাটলফিশ
টার্মিনাল উইন্ডোতে হোস্ট ডেবিয়ান প্যাকেজগুলি ডাউনলোড, বিল্ড এবং ইনস্টল করুন:
sudo apt install -y git devscripts equivs config-package-dev debhelper-compat golang curlgit clone https://github.com/google/android-cuttlefishcd android-cuttlefishtools/buildutils/build_packages.shsudo dpkg -i ./cuttlefish-base_*_*64.deb || sudo apt-get install -fsudo dpkg -i ./cuttlefish-user_*_*64.deb || sudo apt-get install -fsudo usermod -aG kvm,cvdnetwork,render $USERsudo rebootরিবুট করার ফলে অতিরিক্ত কার্নেল মডিউল ইনস্টল হয় এবং
udevনিয়মগুলো প্রয়োগ করা হয়।কাটলফিশ অ্যান্ড্রয়েড ওপেন-সোর্স প্ল্যাটফর্ম (AOSP)-এর একটি অংশ। ভার্চুয়াল ডিভাইসটির বিল্ডগুলো অ্যান্ড্রয়েড কন্টিনিউয়াস ইন্টিগ্রেশন সাইটে পাওয়া যায়। সমস্ত অ্যান্ড্রয়েড বিল্ডের সূচী খুঁজে পেতে, http://ci.android.com/ -এ অবস্থিত অ্যান্ড্রয়েড কন্টিনিউয়াস ইন্টিগ্রেশন সাইটে যান।
একটি ব্রাঞ্চের নাম লিখুন। ডিফল্ট
aosp-android-latest-releaseব্রাঞ্চটি ব্যবহার করুন অথবাaosp-android13-gsiএর মতো একটি জেনেরিক সিস্টেম ইমেজ (GSI) ব্রাঞ্চ ব্যবহার করুন।aosp_cf_x86_64_only_phone বিল্ড টার্গেটে যান এবং সর্বশেষ বিল্ডের জন্য userdebug-এ ক্লিক করুন।
এই বিল্ডটি নির্বাচন করতে userdebug-এর নিচের সবুজ বক্সটিতে ক্লিক করুন। একটি Details প্যানেল প্রদর্শিত হবে, যেখানে এই বিল্ডটির নির্দিষ্ট আরও তথ্য থাকবে। এই প্যানেলে, এই বিল্ডের সাথে সংযুক্ত সমস্ত আর্টিফ্যাক্টের তালিকা দেখতে Artifacts-এ ক্লিক করুন।
আর্টিফ্যাক্টস প্যানেল থেকে কাটলফিশের জন্য আর্টিফ্যাক্টগুলো ডাউনলোড করুন।
x86_64-এর জন্য
aosp_cf_x86_64_phone-img-xxxxxx.zipআর্টিফ্যাক্টটি অথবা ARM64-এর জন্যaosp_cf_arm64_only_phone-xxxxxx.zipআর্টিফ্যাক্টটিতে ক্লিক করুন, যেটিতে ডিভাইস ইমেজগুলো রয়েছে। ফাইলের নামে, "xxxxxx" হলো এই ডিভাইসটির বিল্ড আইডি।প্যানেলে নিচে স্ক্রল করুন এবং
cvd-host_package.tar.gzডাউনলোড করুন। সবসময় আপনার ইমেজগুলোর বিল্ড থেকেই হোস্ট প্যাকেজটি ডাউনলোড করুন।
আপনার স্থানীয় সিস্টেমে একটি কন্টেইনার ফোল্ডার তৈরি করুন এবং প্যাকেজগুলি এক্সট্র্যাক্ট করুন:
x86_64 স্থাপত্য:
mkdir cfcd cftar -xvf /path/to/cvd-host_package.tar.gzunzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zipARM64 স্থাপত্য:
mkdir cfcd cftar -xvf /path/to/cvd-host_package.tar.gzunzip /path/to/aosp_cf_arm64_only_phone-img-xxxxxx.zip
কাটলফিশ চালু করুন:
HOME=$PWD ./bin/launch_cvd --daemon
যাচাই করুন যে কাটলফিশ adb-এর মাধ্যমে দেখা যাচ্ছে।
একটি ভৌত ডিভাইসের মতোই, অ্যান্ড্রয়েড ডিবাগ ব্রিজ (adb)- এর মাধ্যমে কাটলফিশ দেখা যায়।
আপনার হোস্ট মেশিনে adb-এর মাধ্যমে উপলব্ধ সমস্ত অ্যান্ড্রয়েড ডিভাইসের তালিকা দেখতে, যে ফোল্ডারে আপনি Cuttlefish চালু করেছেন, সেই একই ফোল্ডারে নিম্নলিখিত কমান্ডটি চালান:
./bin/adb devicesওয়েবে ভার্চুয়াল ডিভাইসটি দেখুন এবং এর সাথে ইন্টারঅ্যাক্ট করুন।
ডিফল্টরূপে, Cuttlefish --start_webrtc সহ চালু হয়, যা হোস্ট মেশিনে 8443 পোর্টের মাধ্যমে একটি ওয়েবভিউ সক্ষম করে।
আপনার ভার্চুয়াল ডিভাইসগুলো দেখতে ও ব্যবহার করতে, আপনার ওয়েব ব্রাউজারে https://localhost:8443- এ যান।
আরও তথ্যের জন্য, Cuttlefish: WebRTC Streaming দেখুন।
কাটলফিশ থামান
ডিভাইসটি চালু করার জন্য ব্যবহৃত একই ডিরেক্টরির মধ্যে ভার্চুয়াল ডিভাইসটি বন্ধ করুন:
HOME=$PWD ./bin/stop_cvd