ফ্ল্যাশিং ডিভাইস

এই পৃষ্ঠাটি নির্দিষ্ট ডিভাইসে বিল্ড চালানোর জন্য বিশদ প্রদান করে। এই বিবরণগুলি বিল্ডিং অ্যান্ড্রয়েডের তথ্যের পরিপূরক।

বিল্ডিং fastboot এবং adb

যদি আপনার কাছে ইতিমধ্যেই fastboot এবং adb না থাকে তবে আপনি সেগুলিকে নিয়মিত বিল্ড সিস্টেম দিয়ে তৈরি করতে পারেন। অ্যান্ড্রয়েড তৈরিতে নির্দেশাবলী ব্যবহার করুন এবং এটির সাথে প্রধান make কমান্ড প্রতিস্থাপন করুন:

make fastboot adb

অ্যান্ড্রয়েড ডিবাগ ব্রিজ (এডিবি) সম্পর্কে বিস্তারিত জানার জন্য অ্যান্ড্রয়েড ডিবাগ ব্রিজ (এডিবি) দেখুন।

ফাস্টবুট মোডে বুট করা হচ্ছে

fastboot বুটলোডার মোডে থাকা অবস্থায় আপনি একটি ডিভাইস ফ্ল্যাশ করতে পারেন। fastboot মোডে প্রবেশ করতে যখন একটি ডিভাইস কোল্ড বুটের মধ্য দিয়ে যাচ্ছে, ফাস্টবুট কী সংমিশ্রণে তালিকাভুক্ত কী সমন্বয়গুলি ব্যবহার করুন।

আপনি সরাসরি বুটলোডারে পুনরায় বুট করতে adb reboot bootloader কমান্ডটি ব্যবহার করতে পারেন। সম্পূর্ণ নির্দেশাবলীর জন্য ফ্ল্যাশিং নির্দেশাবলী দেখুন।

বুটলোডার আনলক করা হচ্ছে

বুটলোডার অনুমতি দিলেই আপনি একটি কাস্টম সিস্টেম ফ্ল্যাশ করতে পারবেন। উল্লেখ্য, যদিও, বুটলোডার ডিফল্টরূপে লক করা আছে। আপনি বুটলোডার আনলক করতে পারেন, কিন্তু এটি করার ফলে গোপনীয়তার কারণে ব্যবহারকারীর ডেটা মুছে যায়। আনলক করার পরে, ডিভাইসের সমস্ত ডেটা মুছে ফেলা হয়, অর্থাৎ, ব্যক্তিগত অ্যাপ ডেটা এবং শেয়ার করা ডেটা উভয়ই USB-এর মাধ্যমে অ্যাক্সেসযোগ্য (ফটো এবং চলচ্চিত্র সহ)৷ বুটলোডার আনলক করার চেষ্টা করার আগে, ডিভাইসে যেকোনো গুরুত্বপূর্ণ ফাইলের ব্যাক আপ নিন।

আপনি শুধুমাত্র একবার বুটলোডার আনলক করতে হবে, এবং প্রয়োজন হলে আপনি এটি পুনরায় লক করতে পারেন।

সাম্প্রতিক ডিভাইসগুলি আনলক করা হচ্ছে

2014 সাল থেকে প্রকাশিত সমস্ত Nexus এবং Pixel ডিভাইসে (Nexus 6 এবং Nexus 9 থেকে শুরু করে) ফ্যাক্টরি-রিসেট সুরক্ষা রয়েছে এবং বুটলোডার আনলক করার জন্য একটি মাল্টিস্টেপ প্রক্রিয়ার প্রয়োজন।

  1. ডিভাইসে OEM আনলকিং সক্ষম করতে:
    1. সেটিংসে, ফোন সম্পর্কে আলতো চাপুন, তারপরে বিল্ড নম্বরে সাতবার আলতো চাপুন।
    2. আপনি যখন বার্তাটি দেখেন আপনি এখন একজন বিকাশকারী! , পিছনের বোতামে আলতো চাপুন।
    3. সেটিংসে, সিস্টেমে আলতো চাপুন, তারপরে বিকাশকারী বিকল্পগুলি আলতো চাপুন এবং OEM আনলকিং এবং USB ডিবাগিং সক্ষম করুন৷ (যদি OEM আনলকিং অক্ষম করা থাকে, তাহলে ইন্টারনেটের সাথে সংযোগ করুন যাতে ডিভাইসটি অন্তত একবার চেক ইন করতে পারে। যদি এটি অক্ষম থেকে যায়, আপনার ডিভাইসটি আপনার ক্যারিয়ার দ্বারা সিম লক করা হতে পারে এবং বুটলোডার আনলক করা যাবে না।)
  2. বুটলোডারে রিবুট করুন এবং এটি আনলক করতে fastboot ব্যবহার করুন।
    • নতুন ডিভাইসের জন্য (2015 এবং উচ্চতর):
      fastboot flashing unlock
    • পুরানো ডিভাইসের জন্য (2014 এবং নিম্ন):
      fastboot oem unlock
    টিপ: আপনি যদি রিবুট করার আগে `adb ডিভাইস` আউটপুট দেখতে পান কিন্তু ফাস্টবুট বা ফ্ল্যাশ স্ক্রিপ্ট খারাপ আচরণ করছে, তাহলে আপনার USB তারের সমস্যা হতে পারে। একটি ভিন্ন পোর্ট এবং/অথবা সংযোগকারী স্যুইচ করার চেষ্টা করুন। আপনি যদি আপনার কম্পিউটারে একটি USB C পোর্ট ব্যবহার করেন তবে পরিবর্তে একটি USB A পোর্ট ব্যবহার করে দেখুন৷
  3. অনস্ক্রিন আনলক নিশ্চিত করুন.

বুটলোডার পুনরায় লক করা

বুটলোডার পুনরায় লক করতে:

  • নতুন ডিভাইসের জন্য (2015 এবং উচ্চতর):
    fastboot flashing lock
  • পুরানো ডিভাইসের জন্য (2014 এবং নিম্ন):
    fastboot oem lock

ফ্ল্যাশ লক স্টেট ব্যবহার করে

getFlashLockState() সিস্টেম API বুটলোডার স্থিতি প্রেরণ করে এবং PersistentDataBlockManager.getFlashLockState() সিস্টেম API অনুগত ডিভাইসগুলিতে বুটলোডারের লক স্থিতি প্রদান করে।

ফেরত মূল্য শর্তাবলী
FLASH_LOCK_UNKNOWN শুধুমাত্র Android 7.x বা উচ্চতর সংস্করণে আপগ্রেড করা ডিভাইসগুলির দ্বারা প্রত্যাবর্তন করা হয়েছে যেগুলি পূর্বে ফ্ল্যাশ লক স্ট্যাটাস পাওয়ার জন্য প্রয়োজনীয় বুটলোডার পরিবর্তনগুলিকে সমর্থন করে না যদি তারা ফ্ল্যাশিং লক/আনলক ক্ষমতা সমর্থন করে।
  • Android 7.x বা উচ্চতর সংস্করণে চলমান নতুন ডিভাইসগুলি অবশ্যই FLASH_LOCK_LOCKED বা FLASH_LOCK_UNLOCKED অবস্থায় থাকতে হবে৷
  • ফ্ল্যাশিং আনলক/লক ক্ষমতা সমর্থন করে না এমন Android 7.x বা উচ্চতর ডিভাইসে আপগ্রেড করা ডিভাইসগুলিকে একটি FLASH_LOCK_LOCKED অবস্থা ফিরিয়ে দেওয়া উচিত।
FLASH_LOCK_LOCKED ফ্ল্যাশিং লক/আনলক সমর্থন করে না এমন কোনও ডিভাইস (অর্থাৎ, ডিভাইসটি সর্বদা লক থাকে) অথবা যে কোনও ডিভাইস যা ফ্ল্যাশিং লক/আনলক সমর্থন করে এবং লক অবস্থায় থাকে তার দ্বারা ফেরত দেওয়া হয়।
FLASH_LOCK_UNLOCKED ফ্ল্যাশিং লক/আনলক সমর্থন করে এবং আনলক অবস্থায় আছে এমন যেকোনো ডিভাইসের মাধ্যমে ফেরত দেওয়া হয়।

নির্মাতাদের লক করা এবং আনলক করা বুটলোডার সহ ডিভাইসগুলির দ্বারা ফেরত দেওয়া মানগুলি পরীক্ষা করা উচিত। উদাহরণস্বরূপ, অ্যান্ড্রয়েড ওপেন সোর্স প্রজেক্টে (AOSP) একটি রেফারেন্স বাস্তবায়ন রয়েছে যা ro.boot.flash.locked বুট সম্পত্তির উপর ভিত্তি করে একটি মান প্রদান করে। উদাহরণ কোড নিম্নলিখিত ডিরেক্টরিতে অবস্থিত:

  • frameworks/base/services/core/java/com/android/server/PersistentDataBlockService.java
  • frameworks/base/core/java/android/service/persistentdata/PersistentDataBlockManager.java

একটি ডিভাইস বিল্ড নির্বাচন করা হচ্ছে

প্রস্তাবিত ডিভাইস বিল্ডগুলি lunch মেনু থেকে উপলব্ধ, কোন যুক্তি ছাড়াই lunch কমান্ড চালানোর সময় অ্যাক্সেস করা হয়। lunch কমান্ডের অতিরিক্ত তথ্যের জন্য, একটি লক্ষ্য চয়ন করুন দেখুন। বিল্ড লক্ষ্যগুলির একটি তালিকার জন্য, লক্ষ্য তৈরি করুন দেখুন।

আপনি developers.google.com থেকে Pixel এবং Nexus ডিভাইসের জন্য কারখানার ছবি এবং বাইনারি ডাউনলোড করতে পারেন। ডাউনলোডের জন্য ডিভাইস বাইনারি দেখুন। বিশদ বিবরণ এবং অতিরিক্ত সংস্থানগুলির জন্য, মালিকানাধীন বাইনারিগুলি প্রাপ্ত করা দেখুন।

যন্ত্র সাঙ্কেতিক নাম কনফিগারেশন তৈরি করুন
Pixel 7 Pro চিতা aosp_cheetah-userdebug
পিক্সেল 7 প্যান্থার aosp_panther-userdebug
Pixel 6 Pro কাক aosp_raven-userdebug
পিক্সেল 6 অরিওল aosp_oriole-userdebug
পিক্সেল 5 redfin aosp_redfin-userdebug
Pixel 4a 5G bramble aosp_bramble-userdebug
Pixel 4a sunfish aosp_sunfish-userdebug
Pixel 4 XL প্রবাল aosp_coral-userdebug
পিক্সেল 4 শিখা aosp_flame-userdebug
Pixel 3a XL বোনিতো aosp_bonito-userdebug
Pixel 3a সারগো aosp_sargo-userdebug
Pixel 3 XL ক্রসহ্যাচ aosp_crosshatch-userdebug
পিক্সেল 3 নীল রেখা aosp_blueline-userdebug
Pixel 2 XL তাইমেন aosp_taimen-userdebug
পিক্সেল 2 walleye aosp_walleye-userdebug
পিক্সেল এক্সএল মার্লিন aosp_marlin-userdebug
পিক্সেল sailfish aosp_sailfish-userdebug
হাইকি হাইকি hikey-userdebug
Nexus 6P angler aosp_angler-userdebug
Nexus 5X ষাঁড় aosp_bullhead-userdebug
নেক্সাস 6 শামু aosp_shamu-userdebug
নেক্সাস প্লেয়ার ফুগু aosp_fugu-userdebug
নেক্সাস 9 ভোলান্টিস (ফ্লাউন্ডার) aosp_flounder-userdebug
Nexus 5 (GSM/LTE) হাতুড়ি aosp_hammerhead-userdebug
Nexus 7 (Wi-Fi) ক্ষুর (ফ্লো) aosp_flo-userdebug
Nexus 7 (মোবাইল) razorg (দেব) aosp_deb-userdebug
নেক্সাস 10 মন্তরায় (মন্তা) full_manta-userdebug
নেক্সাস 4 occam (mako) full_mako-userdebug
Nexus 7 (Wi-Fi) নাকাসি (গ্রুপকারী) full_grouper-userdebug
Nexus 7 (মোবাইল) নাকাসিগ (তিলাপিয়া) full_tilapia-userdebug
গ্যালাক্সি নেক্সাস (GSM/HSPA+) ইয়াকজু (মাগুরো) full_maguro-userdebug
Galaxy Nexus (Verizon) মাইসিড (টোরো) √aosp_toro-userdebug
গ্যালাক্সি নেক্সাস (পরীক্ষামূলক) mysidspr (টরোপ্লাস) aosp_toroplus-userdebug
Motorola Xoom (US Wi-Fi) উইংরে full_wingray-userdebug
নেক্সাস এস সোজু (ক্রেসপো) full_crespo-userdebug
Nexus S 4G সোজুস (crespo4g) full_crespo4g-userdebug

একটি ডিভাইস ফ্ল্যাশিং

আপনি একটি একক কমান্ডে একটি সম্পূর্ণ অ্যান্ড্রয়েড সিস্টেম ফ্ল্যাশ করতে পারেন; এটি করার মাধ্যমে যাচাই করা হয় যে সিস্টেমটি ফ্ল্যাশ করা হচ্ছে ইনস্টল করা বুটলোডার এবং রেডিওর সাথে সামঞ্জস্যপূর্ণ, বুট, পুনরুদ্ধার এবং সিস্টেম পার্টিশন একসাথে লিখে, তারপর সিস্টেমটি পুনরায় বুট করে। ফ্ল্যাশিং সমস্ত ব্যবহারকারীর ডেটা মুছে দেয়, একইভাবে fastboot oem unlock

একটি ডিভাইস ফ্ল্যাশ করতে:

  1. ইমেজ ফাইলটিকে তার নিজস্ব ডিরেক্টরিতে আনজিপ করুন।
  2. ANDROID_PRODUCT_OUT এনভায়রনমেন্ট ভেরিয়েবল সেট করুন ধাপ 1 এ ব্যবহৃত একই ডিরেক্টরির দিকে নির্দেশ করতে।
  3. বুট করার সময় উপযুক্ত কী সংমিশ্রণটি ধরে রেখে বা নিম্নলিখিত কমান্ডটি ব্যবহার করে ডিভাইসটিকে fastboot মোডে রাখুন:
    adb reboot bootloader
  4. ডিভাইসটি ফাস্টবুট মোডে থাকার পরে, চালান:
    fastboot flashall -w
    -w বিকল্পটি ডিভাইসের /data পার্টিশনটি মুছে দেয়; এটি আপনার প্রথমবার একটি নির্দিষ্ট ডিভাইস ফ্ল্যাশ করার জন্য দরকারী কিন্তু অন্যথায় অপ্রয়োজনীয়।

ফ্ল্যাশিং কনফিগারেশন

ফাস্টবুট নির্দেশাবলী fastboot-info.txt নামক একটি আর্টিফ্যাক্টে বানান করা হয়েছে যা $ANDROID_PRODUCT_OUT/* m fastboot_info থাকে। এই ফাইলটি পরিবর্তন করে কাস্টম ফ্ল্যাশিং লজিক চালু করা যেতে পারে

সমর্থিত কমান্ড:

  1. ফ্ল্যাশ %s : একটি প্রদত্ত পার্টিশন ফ্ল্যাশ করুন। ঐচ্ছিক আর্গুমেন্টের মধ্যে রয়েছে --slot-other, {filename_path}, --apply-vbmeta
  2. update-super : সুপার পার্টিশন আপডেট করে
  3. if-wipe : যদি মুছা নির্দিষ্ট করা থাকে তবে শর্তসাপেক্ষে কিছু অন্যান্য কার্যকারিতা চালান
  4. মুছুন %s : একটি প্রদত্ত পার্টিশন মুছুন (শুধুমাত্র একযোগে ব্যবহার করা যেতে পারে) if-wipe -> যেমন। if-wipe erase cache

ডিভাইসগুলিকে কারখানার অবস্থায় পুনরুদ্ধার করা হচ্ছে

নেক্সাস এবং পিক্সেল ডিভাইসের ফ্যাক্টরি ইমেজ থেকে Google ডিভাইসের ফ্যাক্টরি ছবি পাওয়া যায়। Motorola Xoom-এর কারখানার ছবি সরাসরি Motorola দ্বারা বিতরণ করা হয়।

অনুমতি অস্বীকৃত ত্রুটিগুলি সমাধান করুন৷

বেশিরভাগ লিনাক্স সিস্টেমে ডিফল্টরূপে, সুবিধাবঞ্চিত ব্যবহারকারীরা USB পোর্ট অ্যাক্সেস করতে পারে না। আপনি যদি একটি অনুমতি অস্বীকার ত্রুটি দেখতে পান, তাহলে বিকাশের জন্য একটি ডিভাইস সেট আপ করতে Android স্টুডিওর নির্দেশাবলী পড়ুন।

যদি ADB ইতিমধ্যেই চলমান থাকে এবং ডিভাইসের সাথে সংযোগ করতে না পারে, তাহলে আপনি adb kill-server দিয়ে ADB বন্ধ করতে পারেন। এই কমান্ডের কারণে ADB নতুন কনফিগারেশনের সাথে পুনরায় চালু করতে পারে।