ডিভাইসে ইউএসবি ডিবাগিং সক্ষম করুন
এটি সেটিংস ›বিকাশে করা হয় । আপনার সেটিংস মেনুতে যদি এন্ট্রি না থাকে তবে সেটিংস ›সম্পর্কে যান," বিল্ড নম্বর "এ স্ক্রোল করুন এবং আপনার ডিভাইসটি বিকাশকারী হওয়ার জন্য অভিনন্দন না জানা পর্যন্ত এটিকে বানরের মতো হাতুড়ি দিন। সেটিংস মেনুটির মূল পৃষ্ঠায় ফিরে যান এবং নীচের দিকে এখনই আপনার "বিকাশ" (বা "বিকাশকারী") সেটিংস দেখতে হবে। এটি প্রবেশ করান এবং এখানে ইউএসবি ডিবাগিং সক্ষম করুন।
ডিভাইসটি সনাক্ত করুন
প্রথমে আমাদের ইউএসবি বাসে ডিভাইসটি কীভাবে সনাক্ত করে তা জানতে হবে। তার জন্য, অ্যান্ড্রয়েড ডিভাইসটি সংযুক্ত না হয়ে , একটি শেল ধরুন এবং কমান্ডটি চালান lsusb
। তারপরে ডিভাইসটি সংযুক্ত করুন এবং আবার কমান্ডটি চালান। নতুন লাইন স্পট করুন। উইলেফক্স সুইফ্টের জন্য এটি একটি " নামবিহীন ডিভাইস":
Bus 004 Device 003: ID 2970:2282
এডিবি-র জন্য বিধি বিধান প্রণয়ন
আমরা এখন উপরে লাইনের শেষে সংখ্যার প্রয়োজন: 2970:2282
। এগুলি বিক্রেতা (2970) এবং ডিভাইস নিজেই (2282) নির্দিষ্ট করে। এই বিবরণগুলি সহ, ফাইলটি সম্পাদনা করতে (বা তৈরি করতে, এটি এখনও উপস্থিত না থাকলে) তৈরি করতে আমাদের লিনাক্স মেশিনে একটি রুট শেল দরকার /etc/udev/rules.d/51-android.rules
। সেখানে, আপনার ডিভাইসের জন্য একটি লাইন যুক্ত করুন। নিম্নলিখিত উদাহরণের লাইনটি উইলিফক্স সুইফটকে কীভাবে দেখায় তা দেখায় : ¹
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2970", ATTRS{idProduct}=="2282", MODE="0666" GROUP="androiddev", SYMLINK+="android%n"
আপনার যদি অন্য কোনও ডিভাইস থাকে তবে চালানোর সময় উপরে যা পেয়েছেন তার সাথে বিক্রেতা এবং পণ্য আইডি প্রতিস্থাপন করুন lsusb
। লাইনটির একটি সংক্ষিপ্ত ব্যাখ্যা:
SUBSYSTEMS=="usb"
: স্পষ্টতই এই বিধিটি কেবল ইউএসবি-র জন্য;)
ATTRS{idVendor}=="2970"
: এই নিয়মের জন্য ডিভাইসটির বিক্রেতার আইডি
ATTRS{idProduct}=="2282"
: ডিভাইস আইডি
MODE="0666"
: ডিভাইস নোডের অনুমতি পাবে। 0666
আপনার সিস্টেমের প্রতিটি ব্যবহারকারীর পড়ার এবং লেখার অনুমতি দেওয়ার ক্ষেত্রে বেশ শিথিলতা - সুতরাং যদি আপনি উদ্বিগ্ন হন তবে আপনি 0660
এটির পরিবর্তে চেষ্টা করতে পারেন (কেবলমাত্র মালিক এবং গোষ্ঠীর পাঠ্য-লেখাই এবং অন্যকে সবকিছু অস্বীকার) দিয়ে।
GROUP="androiddev"
: ডিভাইস নোডটি কোন গ্রুপের অন্তর্ভুক্ত। এটি এমন একটি গ্রুপ হওয়া উচিত যা ব্যবহারকারীদের অন্তর্ভুক্ত ডিভাইসের সাথে কাজ করার ইচ্ছা করেছিল intended
SYMLINK+="android%n"
: কেবল নোডকে একটি সুন্দর নাম দেওয়ার জন্য, যাতে আপনি এটি আরও সহজে খুঁজে পেতে পারেন /dev
(আমার ক্ষেত্রে এটি পরে সেখানে প্রদর্শিত হয়েছিল /dev/android5
)
এই নিয়মটি প্রবেশ করেছে /etc/udev/rules.d/51-android.rules
, udev
এটির ব্যবহার করতে আমাদের অবশ্যই বলতে হবে। নিরাপদ উপায়ে (একটি রিবুটের পাশে;) udev
পরিষেবাটি পুনঃসূচনা করছে । আপনার লিনাক্স ডিস্ট্রোর উপর নির্ভর করে এটি হয় service udev restart
বা এর মাধ্যমে করা যেতে পারে /etc/init.d/udev restart
।
হয়ে গেল, রুট শেলটি ছেড়ে দিন। আপনার অ্যান্ড্রয়েড ডিভাইস সংযোগ বিচ্ছিন্ন করুন এবং পুনরায় সংযোগ করুন, adb devices
আবার চেষ্টা করুন । বেশিরভাগ ডিভাইস এখনই প্রদর্শিত হয়েছে, তবে উইলিফক্স সুইফট নয় - যা স্পষ্টতই কিছু অতিরিক্ত চাদর চায়। আপনি যদি এই পরিস্থিতিতে থাকেন তবে ফাইলটি খুলুন (বা এটি উপস্থিত না থাকলে তৈরি করুন) ~/.android/adb_usb.ini
এবং উপরে একটি লাইন যুক্ত করুন, আপনি lsusb
উপরে যে বিক্রেতার সন্ধান পেয়েছেন তাদের নামকরণ করুন ; জন্য সুইফট যে হবে 0x2970
(yupp, এখানে আপনি এটা তার প্রিফিক্স প্রয়োজন 0x
এটা একটি হেক্সাডেসিমেল সংখ্যা নির্দেশ)। তারপর এডিবি সার্ভার পুনরায় আরম্ভ করুন: adb kill-server && adb start-server
। সংযোগ বিচ্ছিন্ন এবং আবার ডিভাইস। এখন adb devices
এটি দেখতে হবে।
ডিভাইসটি সংযুক্ত হচ্ছে
আপনি লক্ষ্য করে থাকবেন পারে adb devices
আপনার মত কিছু বলেন 0123456789ABCDEF unauthorized
। এটি ঠিক আছে এবং আপনার (ডিভাইস) সুরক্ষার জন্য: ডিভাইসটি অ্যাক্সেস করতে সক্ষম হওয়ার জন্য আপনার কম্পিউটারকে প্রথমে অনুমোদিত করতে হবে। সুতরাং adb shell
এখনই ইস্যু করুন - যা একটি error: device unauthorized. Please check the confirmation dialog on your device.
পরামর্শ দিয়ে প্রস্থান করা হবে সেই পরামর্শটি অনুসরণ করুন (স্থায়ীভাবে আপনার কম্পিউটারকে অনুমোদন দেওয়ার জন্য চেক-বাক্স চিহ্নিত করুন) এবং আপনার কাজ শেষ হয়েছে: এখন আপনি নিজের ডিভাইসে অ্যাক্সেস করতে অ্যাডবি ব্যবহার করতে পারেন ।
আপডেট:
¹ নোট করুন যে পরবর্তী লিনাক্স সংস্করণগুলিতে, ইউডিইভি বিধিগুলির জন্য সিনট্যাক্সটি কিছুটা পরিবর্তিত হয়েছে, যেমন: জেমকমাউটিক্স তার মন্তব্যে উল্লেখ করেছেন। আমরা উপরে যে মানগুলি পেয়েছি তার জন্য এটি হবে:
SUBSYSTEM=="usb", ATTR{idVendor}=="2970", ATTR{idProduct}=="2282", MODE="0666", GROUP="plugdev", SYMLINK+="android%n"
দুটি পার্থক্য: এটি এখন SUBSYSTEM
(বহুবচন নয়), এবং গোষ্ঠীটি থেকে পরিবর্তিত androiddev
হয়েছে plugdev
(সাম্প্রতিক সিস্টেমে পূর্ববর্তীটি বিদ্যমান নেই, পরবর্তীটি এটি করেন এবং সাধারণত কমপক্ষে প্রথম ব্যবহারকারীর কাছে নিযুক্ত করা হয়)।
অতিরিক্তভাবে, আপনার নিজের ভেন্ডোরিড যুক্ত করতে হবে ~/.android/adb_usb.ini
(হেক্স নোটেশনে প্রতি লাইনে একটি আইডি):
# ANDROID 3RD PARTY USB VENDOR ID LIST
# 1 USB VENDOR ID PER LINE.
0x2970