শুরু করুন

এই পৃষ্ঠায় কাটলফিশ ব্যবহার করে কীভাবে একটি AOSP বিল্ড চালু করতে হয় তা বর্ণনা করা হয়েছে।

KVM প্রাপ্যতা যাচাই করুন

কাটলফিশ একটি ভার্চুয়াল ডিভাইস এবং এটি হোস্ট মেশিনে ভার্চুয়ালাইজেশন উপলব্ধ থাকার উপর নির্ভরশীল।

আপনার হোস্ট মেশিনের টার্মিনালে, কার্নেল-ভিত্তিক ভার্চুয়াল মেশিন (KVM) দিয়ে ভার্চুয়ালাইজেশন উপলব্ধ আছে কিনা তা নিশ্চিত করুন:

grep -c -w "vmx\|svm" /proc/cpuinfo

এই কমান্ডটির ফলাফল একটি অশূন্য মান হওয়া উচিত।

ARM64 মেশিনে চালানোর সময়, সবচেয়ে সরাসরি উপায় হলো /dev/kvm চেক করা:

find /dev -name kvm

লঞ্চ কাটলফিশ

  1. টার্মিনাল উইন্ডোতে হোস্ট ডেবিয়ান প্যাকেজগুলি ডাউনলোড, বিল্ড এবং ইনস্টল করুন:

    sudo apt install -y git devscripts equivs config-package-dev debhelper-compat golang curl
    git clone https://github.com/google/android-cuttlefish
    cd android-cuttlefish
    tools/buildutils/build_packages.sh
    sudo dpkg -i ./cuttlefish-base_*_*64.deb || sudo apt-get install -f
    sudo dpkg -i ./cuttlefish-user_*_*64.deb || sudo apt-get install -f
    sudo usermod -aG kvm,cvdnetwork,render $USER
    sudo reboot

    রিবুট করার ফলে অতিরিক্ত কার্নেল মডিউল ইনস্টল হয় এবং udev নিয়মগুলো প্রয়োগ করা হয়।

  2. কাটলফিশ অ্যান্ড্রয়েড ওপেন-সোর্স প্ল্যাটফর্ম (AOSP)-এর একটি অংশ। ভার্চুয়াল ডিভাইসটির বিল্ডগুলো অ্যান্ড্রয়েড কন্টিনিউয়াস ইন্টিগ্রেশন সাইটে পাওয়া যায়। সমস্ত অ্যান্ড্রয়েড বিল্ডের সূচী খুঁজে পেতে, http://ci.android.com/ -এ অবস্থিত অ্যান্ড্রয়েড কন্টিনিউয়াস ইন্টিগ্রেশন সাইটে যান।

  3. একটি ব্রাঞ্চের নাম লিখুন। ডিফল্ট aosp-android-latest-release ব্রাঞ্চটি ব্যবহার করুন অথবা aosp-android13-gsi এর মতো একটি জেনেরিক সিস্টেম ইমেজ (GSI) ব্রাঞ্চ ব্যবহার করুন।

  4. aosp_cf_x86_64_only_phone বিল্ড টার্গেটে যান এবং সর্বশেষ বিল্ডের জন্য userdebug-এ ক্লিক করুন।

  5. এই বিল্ডটি নির্বাচন করতে userdebug-এর নিচের সবুজ বক্সটিতে ক্লিক করুন। একটি Details প্যানেল প্রদর্শিত হবে, যেখানে এই বিল্ডটির নির্দিষ্ট আরও তথ্য থাকবে। এই প্যানেলে, এই বিল্ডের সাথে সংযুক্ত সমস্ত আর্টিফ্যাক্টের তালিকা দেখতে Artifacts-এ ক্লিক করুন।

  6. আর্টিফ্যাক্টস প্যানেল থেকে কাটলফিশের জন্য আর্টিফ্যাক্টগুলো ডাউনলোড করুন।

    1. x86_64-এর জন্য aosp_cf_x86_64_phone-img-xxxxxx.zip আর্টিফ্যাক্টটি অথবা ARM64-এর জন্য aosp_cf_arm64_only_phone-xxxxxx.zip আর্টিফ্যাক্টটিতে ক্লিক করুন, যেটিতে ডিভাইস ইমেজগুলো রয়েছে। ফাইলের নামে, "xxxxxx" হলো এই ডিভাইসটির বিল্ড আইডি।

    2. প্যানেলে নিচে স্ক্রল করুন এবং cvd-host_package.tar.gz ডাউনলোড করুন। সবসময় আপনার ইমেজগুলোর বিল্ড থেকেই হোস্ট প্যাকেজটি ডাউনলোড করুন।

  7. আপনার স্থানীয় সিস্টেমে একটি কন্টেইনার ফোল্ডার তৈরি করুন এবং প্যাকেজগুলি এক্সট্র্যাক্ট করুন:

    1. x86_64 স্থাপত্য:

      mkdir cf
      cd cf
      tar -xvf /path/to/cvd-host_package.tar.gz
      unzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zip

    2. ARM64 স্থাপত্য:

      mkdir cf
      cd cf
      tar -xvf /path/to/cvd-host_package.tar.gz
      unzip /path/to/aosp_cf_arm64_only_phone-img-xxxxxx.zip

  8. কাটলফিশ চালু করুন:

    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