ADB: Android Debug Bridge নিয়ে কাজ করার মূল বিষয় এবং জনপ্রিয় কমান্ড

লেখক: IT Sectr প্রকাশিত: 2026-02-12 পড়ার সময়: 10 মিনিট

ADB (Android Debug Bridge) একটি বহুমুখী কমান্ড-লাইন ইউটিলিটি যা Android SDK এর অংশ। এটি কম্পিউটারকে USB কেবল বা Wi-Fi এর মাধ্যমে সরাসরি Android ডিভাইসের সাথে যোগাযোগ করতে দেয়। ADB দিয়ে আপনি অ্যাপ্লিকেশন ইনস্টল এবং আনইনস্টল করতে পারেন, ফাইল কপি করতে পারেন, শেল কমান্ড চালাতে পারেন, সিস্টেম লগ দেখতে পারেন, স্ক্রিনশট এবং স্ক্রিন রেকর্ডিং নিতে পারেন, সেটিংস পরিচালনা করতে পারেন এবং এমনকি স্বয়ংক্রিয় পরীক্ষা চালাতে পারেন। টুলটি ডেভেলপার, টেস্টার এবং উত্সাহীদের জন্য অপরিহার্য যারা ডিভাইসের উপর সম্পূর্ণ নিয়ন্ত্রণ চান।

মূল পয়েন্ট

  • ADB — Android ডিবাগিংয়ের জন্য কমান্ড-লাইন টুল, SDK প্ল্যাটফর্ম টুলসের অংশ
  • সংযোগ — USB এবং Wi-Fi এর মাধ্যমে কাজ করে (adb tcpip / adb connect)
  • মৌলিক কমান্ড — adb devices, adb shell, adb install, adb uninstall, adb pull / push
  • লগ নিয়ে কাজ — ট্যাগ এবং গুরুত্ব স্তর দ্বারা ফিল্টারিং সহ adb logcat
  • স্ক্রিনশট এবং রেকর্ডিং — adb shell screencap এবং adb shell screenrecord
  • একাধিক ডিভাইস — নির্দিষ্ট ডিভাইসের জন্য adb -s
  • অটোমেশন — ট্যাপ, সোয়াইপ এবং টেক্সট ইনপুট অনুকরণের জন্য adb shell input

ADB কী এবং কেন এটি প্রয়োজন

Android Debug Bridge (ADB) একটি ক্লায়েন্ট-সার্ভার অ্যাপ্লিকেশন যা তিনটি উপাদান নিয়ে গঠিত: ক্লায়েন্ট (কম্পিউটারে চলে), সার্ভার (কম্পিউটারে ব্যাকগ্রাউন্ড প্রক্রিয়া) এবং ডেমন adbd (Android ডিভাইসেই চলে)। যখন একজন ডেভেলপার বা ইঞ্জিনিয়ার স্মার্টফোনকে PC তে সংযুক্ত করেন, ADB একটি নির্ভরযোগ্য যোগাযোগ চ্যানেল তৈরি করে যার মাধ্যমে কমান্ড, ফাইল এবং ডেটা প্রেরণ করা যায়।

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

ADB সমর্থন Android সংস্করণ 2.1 (API 7) থেকে শুরু করে সমস্ত অফিসিয়াল Android বিল্ডে অন্তর্নির্মিত। এর জন্য ডেভেলপার সেটিংসে USB ডিবাগিং বিকল্প চালু থাকা প্রয়োজন। Android 4.2 থেকে শুরু করে, প্রথম সংযোগে ডিভাইসটি নিশ্চিতকরণ চায়: আপনাকে তার RSA কী দ্বারা নির্দিষ্ট কম্পিউটারের জন্য ডিবাগিং অনুমতি দিতে হবে।

কম্পিউটারে ADB ইনস্টল করা

Windows এর জন্য — Google Developers এর অফিসিয়াল ওয়েবসাইট থেকে Platform Tools ডাউনলোড করুন, আর্কাইভটি C:\adb ফোল্ডারে আনজিপ করুন এবং এই পথটি PATH এনভায়রনমেন্ট ভেরিয়েবলে যোগ করুন। টার্মিনাল পুনরায় চালু করার পরে adb কমান্ড বিশ্বব্যাপী উপলব্ধ হবে।

macOS এর জন্য — সবচেয়ে সহজ উপায় হল Homebrew প্যাকেজ ম্যানেজারের মাধ্যমে ADB ইনস্টল করা: brew install android-platform-tools চালান। সমস্ত নির্ভরতা স্বয়ংক্রিয়ভাবে সমাধান হবে।

Linux এর জন্য — Debian / Ubuntu ভিত্তিক ডিস্ট্রিবিউশনে: sudo apt install adb। ইনস্টলেশনের পরে ব্যবহারকারীকে plugdev গ্রুপে যোগ করুন: sudo usermod -aG plugdev $USER এবং ADB যাতে USB ডিভাইস অ্যাক্সেস করতে পারে সেজন্য পুনরায় লগইন করুন।

adb version কমান্ড দিয়ে ইনস্টলেশনের সঠিকতা যাচাই করুন। যদি আউটপুট Android Debug Bridge এর সংস্করণ নম্বর দেখায়, তাহলে টুলটি ব্যবহারের জন্য প্রস্তুত।

ডিভাইস সংযোগ এবং মৌলিক কমান্ড

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

adb devices
List of devices attached
emulator-5554   device
0123456789ABCD  device

অ্যাপ্লিকেশন ইনস্টল করা — সবচেয়ে সাধারণ অপারেশনগুলির মধ্যে একটি। শুধু APK ফাইলের পাথ নির্দিষ্ট করুন:

adb install C:\apps\myapp.apk

যদি অ্যাপ্লিকেশনটি আগে থেকেই ইনস্টল করা থাকে কিন্তু আপডেটেড সংস্করণ দিয়ে প্রতিস্থাপন করতে হয়, তাহলে -r (replace) ফ্ল্যাগ যোগ করুন:

adb install -r C:\apps\myapp-v2.apk

অ্যাপ্লিকেশন আনইনস্টল করা প্যাকেজ নাম দিয়ে করা হয়:

adb uninstall com.example.myapp

ফাইল কপি করা — adb pull ডিভাইস থেকে কম্পিউটারে ফাইল নিয়ে আসে, adb push ডিভাইসে ফাইল আপলোড করে:

adb pull /sdcard/DCIM/screenshot.png .
adb push myfile.txt /sdcard/Documents/

ইন্টারঅ্যাকটিভ শেল — adb shell কমান্ড ডিভাইসের কমান্ড শেল খোলে। এর ভিতরে আপনি স্ট্যান্ডার্ড Linux কমান্ড চালাতে পারেন: ls, ps, top, dumpsys, pm, am এবং অন্যান্য।

adb shell
tissot_sprout:/ $ ls -la /sdcard/
tissot_sprout:/ $ ps | grep com.android.chrome

অ্যাক্টিভিটি শুরু করা ADB এর মাধ্যমে ম্যানুয়ালি আইকন খুঁজে না নিয়েই যেকোনো অ্যাপ্লিকেশন বা স্ক্রিন খোলার অনুমতি দেয়:

adb shell am start -n com.android.chrome/com.google.android.apps.chrome.Main

লগ নিয়ে কাজ: Logcat

Logcat Android লগিং সিস্টেম যা অ্যাপ্লিকেশন, সিস্টেম সার্ভিস এবং কার্নেল থেকে বার্তা সংগ্রহ করে। ডিবাগিংয়ের জন্য টুলটি অপরিহার্য: লগ থেকে আপনি বুঝতে পারেন কেন একটি অ্যাপ্লিকেশন ক্র্যাশ হয়েছে, কোন পদ্ধতি ব্যতিক্রম ঘটিয়েছে বা একটি নির্দিষ্ট অপারেশন কতক্ষণ চলে।

ফিল্টার ছাড়া সাধারণ শুরু — adb logcat। লগ স্ট্রিম অসীম; বন্ধ করতে Ctrl+C চাপুন। ট্যাগ অনুসারে বার্তা ফিল্টার করতে -s প্যারামিটার ব্যবহার করুন:

adb logcat -s MainActivity:V

লগিং গুরুত্ব স্তর (সবচেয়ে বিস্তারিত থেকে গুরুতর): V (Verbose), D (Debug), I (Info), W (Warning), E (Error), F (Fatal)। ট্যাগ এবং স্তরের সংমিশ্রণ শুধুমাত্র প্রয়োজনীয় বার্তাগুলি হাইলাইট করতে দেয়।

পরীক্ষার আগে সঞ্চিত বাফার সাফ করতে:

adb logcat -c

এবং লগ ফাইলে সংরক্ষণ করতে:

adb logcat -d > app_logs.txt

-d (dump) ফ্ল্যাগ বর্তমান বাফার আউটপুট করে এবং টার্মিনাল ব্লক না করে শেষ হয়। এটি অটোমেশন স্ক্রিপ্টের জন্য সুবিধাজনক।

স্ক্রিনশট, স্ক্রিন রেকর্ডিং এবং উপযোগী ডায়াগনস্টিক কমান্ড

স্ক্রিনশট adb shell screencap কমান্ড দিয়ে নেওয়া হয়। ফলাফল একটি ফাইলে সংরক্ষিত হয় যা পরে adb pull এর মাধ্যমে নিষ্কাশিত হয়:

adb shell screencap /sdcard/screen.png
adb pull /sdcard/screen.png

প্রতিস্থাপন এবং পাইপিংয়ের মাধ্যমে উভয় অপারেশনকে এক লাইনে একত্রিত করা যায়। অনুশীলনে এটি ডকুমেন্টেশন এবং পরীক্ষা রিপোর্ট তৈরির গতি বাড়ায়।

স্ক্রিন রেকর্ডিং Android 4.4+ (API 19) এ উপলব্ধ। ডিফল্ট রেকর্ডিং সময় 180 সেকেন্ড, বিটরেট 4 Mbps। মূল কমান্ড:

adb shell screenrecord /sdcard/demo.mp4

রেকর্ডিং বন্ধ করতে Ctrl+C চাপুন। ভিডিও রেজোলিউশন ডিভাইস স্ক্রিন রেজোলিউশনের সাথে মেলে কিন্তু 1080p এর বেশি হয় না। বিটরেট পরিবর্তন করতে --bit-rate নির্দিষ্ট করুন:

adb shell screenrecord --bit-rate 8000000 /sdcard/demo.mp4

ডায়াগনস্টিক কমান্ড: adb shell dumpsys সমস্ত সিস্টেম সার্ভিসের অবস্থা আউটপুট করে। শুধুমাত্র ব্যাটারি তথ্য পেতে:

adb shell dumpsys battery

ইনস্টল করা প্যাকেজের তালিকা Package Manager এর মাধ্যমে পাওয়া যেতে পারে:

adb shell pm list packages

অ্যাপ্লিকেশন সেটিংস রিসেট করা (সেটিংসে ডেটা সাফ করার সমতুল্য):

adb shell pm clear com.example.myapp

ADB এর উন্নত ক্ষমতা

Wi-Fi ডিবাগিং ডিভাইসটিকে USB এর সাথে সংযুক্ত রাখার প্রয়োজনীয়তা দূর করে। নিশ্চিত করুন যে কম্পিউটার এবং ডিভাইস একই নেটওয়ার্কে আছে। প্রথমে adb tcpip 5555 চালান, USB সংযোগ বিচ্ছিন্ন করুন, তারপর IP এর মাধ্যমে সংযোগ করুন:

adb tcpip 5555
adb connect 192.168.1.100:5555

যদি ডিভাইসের IP ঠিকানা অজানা থাকে, কেবল সংযোগ বিচ্ছিন্ন করার আগে adb shell ip addr show wlan0 এর মাধ্যমে খুঁজুন।

ডেটা ব্যাকআপ অ্যাপ্লিকেশন বা সম্পূর্ণ সিস্টেমের রুট ছাড়াই করা যেতে পারে:

adb backup -apk -shared -all -system -f mybackup.ab

ব্যাকআপ থেকে পুনরুদ্ধার:

adb restore mybackup.ab

ইনপুট অনুকরণ — adb shell input কমান্ড ট্যাপ, সোয়াইপ, কী প্রেস এবং টেক্সট ইনপুট অনুকরণ করতে দেয়। এটি অতিরিক্ত ফ্রেমওয়ার্ক ছাড়াই UI পরীক্ষা অটোমেশনের ভিত্তি:

adb shell input tap 500 1000
adb shell input swipe 300 500 800 500
adb shell input text "Hello, ADB!"

বিভিন্ন মোডে রিবুট:

adb reboot          # normal reboot
adb reboot recovery # recovery mode
adb reboot bootloader # bootloader (fastboot)

ফাস্টবুট মোড ইমেজ ফ্ল্যাশ করার, বুটলোডার আনলক করার এবং কাস্টম রিকভারি ইনস্টল করার অ্যাক্সেস দেয়।

একাধিক ডিভাইসের সাথে কাজ

যখন একাধিক ডিভাইস বা ইমুলেটর একসাথে সংযুক্ত থাকে, ADB নির্দিষ্ট সিরিয়াল নম্বর প্রয়োজন। adb devices কমান্ড তাদের সিরিয়াল নম্বরসহ সমস্ত সংযুক্ত ডিভাইস দেখায়।

একটি নির্দিষ্ট ডিভাইসে কমান্ড পাঠাতে -s ফ্ল্যাগ ব্যবহার করুন:

adb -s 0123456789ABCD install myapp.apk

যদি শুধুমাত্র একটি ডিভাইস থাকে, ফ্ল্যাগ বাদ দেওয়া যেতে পারে। তবে CI পরিবেশে যেখানে একসাথে একাধিক ইমুলেটর চলে, সিরিয়াল নম্বর নির্দিষ্ট করা বাধ্যতামূলক।

ADB সার্ভার কিল করা — যদি ডিভাইস শনাক্ত হওয়া বন্ধ করে বা ত্রুটি দেয়, সার্ভার পুনরায় চালু করতে সাহায্য করে:

adb kill-server
adb start-server

এর পরে adb devices চালান — সার্ভার পুনরায় চালু হবে এবং ডিভাইস ডেমনগুলিতে অনুরোধ পুননির্দেশ করবে।

প্রধান ADB কমান্ড: রেফারেন্স টেবিল

কমান্ড বর্ণনা
adb devices সংযুক্ত ডিভাইসের তালিকা দেখান
adb install ডিভাইসে APK ফাইল ইনস্টল করুন
adb uninstall প্যাকেজ নাম দিয়ে অ্যাপ্লিকেশন আনইনস্টল করুন
adb shell ইন্টারঅ্যাকটিভ কমান্ড শেল খুলুন
adb push কম্পিউটার থেকে ডিভাইসে ফাইল কপি করুন
adb pull ডিভাইস থেকে কম্পিউটারে ফাইল কপি করুন
adb logcat সিস্টেম এবং অ্যাপ্লিকেশন লগ দেখুন
adb shell screencap স্ক্রিনশট নিন
adb shell screenrecord স্ক্রিন ভিডিও রেকর্ড করুন
adb reboot ডিভাইস রিবুট করুন
adb tcpip 5555 Wi-Fi এর জন্য ADB কে TCP/IP মোডে সুইচ করুন
adb connect :5555 Wi-Fi এর মাধ্যমে ডিভাইসে সংযোগ করুন

সচরাচর জিজ্ঞাসিত প্রশ্ন

USB ডিবাগিং কীভাবে চালু করবেন যদি ডেভেলপার অপশন মেনু লুকানো থাকে?

সেটিংস → ফোন সম্পর্কে খুলুন এবং বিল্ড নম্বরে 7 বার ট্যাপ করুন। মূল সেটিংস মেনুতে ফিরে যান — ডেভেলপার অপশন বিভাগ দেখা যাবে। ভিতরে USB ডিবাগিং চালু করুন। Android 4.2 থেকে শুরু করে, প্রথমবার কম্পিউটারে সংযোগ করার সময়, ডিভাইস স্ক্রিনে RSA ডিবাগিং কী নিশ্চিত করতে হবে।

adb devices কমান্ড কেন unauthorized অবস্থা দেখায়?

ডিভাইসটি কম্পিউটারকে বিশ্বাস করে না। ফোন স্ক্রিন আনলক করুন, যখন USB ডিবাগিং অনুমতি দিন ডায়ালগ দেখা যায়, এই কম্পিউটারের জন্য সর্বদা অনুমতি দিন চেক করে OK চাপুন। যদি ডায়ালগ না দেখা যায়, USB কেবল সংযোগ বিচ্ছিন্ন করে পুনরায় সংযোগ করুন বা adb kill-server && adb start-server চালান।

স্ক্রিন ছাড়া (ভাঙা ডিসপ্লে) ডিভাইসে APK কীভাবে ইনস্টল করবেন?

ADB এর স্ক্রিন ইন্টারঅ্যাকশনের প্রয়োজন নেই। USB এর মাধ্যমে ডিভাইস সংযোগ করুন, adb devices এ প্রদর্শিত হওয়ার জন্য অপেক্ষা করুন (যদি ডিবাগিং আগে থেকেই চালু ছিল) এবং adb install চালান। অ্যাপ্লিকেশন খুলতে adb shell am start -n <প্যাকেজ>/<অ্যাক্টিভিটি> ব্যবহার করুন। যদি ডিবাগিং আগে থেকে চালু না করা থাকে, স্ক্রিন ছাড়া অ্যাক্সেস পুনরুদ্ধার করা অনেক কঠিন — কাস্টম রিকভারির প্রয়োজন হবে।

adb install এবং Google Play এর মাধ্যমে ইনস্টল করার মধ্যে পার্থক্য কী?

ADB সরাসরি APK ইনস্টল করে, ইনস্টলেশনের সময় Google Play Protect চেক এড়িয়ে, যা প্রকাশের আগে অ্যাপ্লিকেশন পরীক্ষা করার অনুমতি দেয়। তবে ইনস্টলেশনের পরেও চূড়ান্ত ম্যালওয়্যার চেক চলে। ADB এর Google অ্যাকাউন্টের প্রয়োজন নেই, যা কর্পোরেট কিয়স্ক এবং Google সার্ভিস ছাড়া ডিভাইসের জন্য গুরুত্বপূর্ণ।

ডিভাইসে রুট অ্যাক্সেস ছাড়া ADB ব্যবহার করা যায় কি?

হ্যাঁ, অধিকাংশ ADB কমান্ড রুট ছাড়াই কাজ করে। ব্যতিক্রম হল সেগুলি যেগুলির সুরক্ষিত সিস্টেম পার্টিশনে অ্যাক্সেস প্রয়োজন (যেমন বুট পার্টিশনের সরাসরি ডাম্প বা সিস্টেম ফাইল পরিবর্তন)। দৈনন্দিন কাজের জন্য — অ্যাপ্লিকেশন ইনস্টল করা, লগিং, স্ক্রিনশট, ব্যাকআপ, ইনপুট অনুকরণ — রুট প্রয়োজন নেই।

উপসংহার

ADB (Android Debug Bridge) পেশাদার স্তরে Android এর সাথে কাজ করা প্রত্যেকের জন্য একটি মৌলিক টুল। মৌলিক অ্যাপ্লিকেশন ইনস্টলেশন থেকে জটিল পরীক্ষা অটোমেশন এবং ডিভাইস পুনরুদ্ধার পর্যন্ত — ADB কম্পিউটার এবং স্মার্টফোন বা ট্যাবলেটের মধ্যে মিথস্ক্রিয়ার প্রায় প্রতিটি পরিস্থিতি কভার করে।

এই নিবন্ধে বর্ণিত কমান্ডগুলি আয়ত্ত করে, আপনি টার্মিনালের মাধ্যমে আত্মবিশ্বাসের সাথে Android ডিভাইস পরিচালনা করতে, লগ বিশ্লেষণ করতে, ডকুমেন্টেশনের জন্য স্ক্রিনশট নিতে, ব্যাকআপ করতে এবং উন্নয়ন প্রক্রিয়া ত্বরান্বিত করতে সক্ষম হবেন। নিয়মিত অনুশীলন এবং adb help এর আউটপুট অধ্যয়ন আপনাকে এই শক্তিশালী টুলের একজন অভিজ্ঞ ব্যবহারকারী করে তুলবে।

সারসংক্ষেপ

  • ADB — Android ডিবাগিংয়ের জন্য কমান্ড-লাইন টুল, Platform Tools Android SDK এর অংশ
  • সংযোগ — USB এবং Wi-Fi এর মাধ্যমে adb tcpip এবং adb connect কমান্ড দিয়ে কাজ করে
  • মৌলিক কমান্ড — adb devices, adb shell, adb install, adb uninstall, adb pull / adb push
  • Logcat — ট্যাগ এবং গুরুত্ব স্তর V/D/I/W/E/F দ্বারা ফিল্টারিং সহ Android লগিং সিস্টেম
  • স্ক্রিনশট এবং রেকর্ডিং — স্ক্রিনের ছবি এবং ভিডিও তৈরির জন্য adb shell screencap এবং adb shell screenrecord
  • উন্নত ক্ষমতা — Wi-Fi ডিবাগিং, ডেটা ব্যাকআপ, ইনপুট অনুকরণ, ফাস্টবুট এবং রিকভারিতে রিবুট
  • একাধিক ডিভাইস — সমান্তরাল সংযোগে নির্দিষ্ট ডিভাইস নির্বাচনের জন্য -s ফ্ল্যাগ

আমরা একটি মোবাইল অ্যাপ্লিকেশন টার্নকি তৈরি করব

IT Sectr 2017 সাল থেকে স্টার্টআপ এবং ব্যবসার জন্য iOS এবং Android অ্যাপ্লিকেশন তৈরি করে। আমরা আপনাকে পরামর্শ দেব এবং সেরা সমাধান প্রস্তাব করব।

প্রকল্প নিয়ে আলোচনা করুন

আরও পড়ুন