অ্যান্ড্রয়েড ডিভাইসের জন্য কীভাবে এডিবি অ্যাক্সেস কনফিগার করবেন?


39

আমি উবুন্টু ১২.১০ ব্যবহার করছি এবং আমি অ্যান্ড্রয়েড এসডিকে ইনস্টল করেছি, এটি আমার ব্যবহারকারীর জন্য সেট করুন .bashrcএবং এটি কার্যকর।

সমস্যাটি হ'ল আমার ফোনের অনুমতিগুলির জন্য মূলত অ্যাডবি চালানো দরকার তবে সুডোর সাথে অ্যাডবি চালানো আমি নিম্নলিখিত ত্রুটিটি পেয়েছি:

sudo: adb: কমান্ড পাওয়া যায় নি

আমি সহজভাবে ব্যবহার করার চেষ্টা করেছি sudo -E adb start-server, তবে এটি কার্যকর হয় না। এতে রফতানি পথের লাইনটি যুক্ত করার চেষ্টা করা হয়েছিল /root/.bashrcএবং (এটি বুঝতে সাহায্য করার পরেও) এতে যুক্ত হয়নি /etc/bash.bashrc

আমি মনে করি আমি এটি আমার আর্চ লিনাক্সে সেট করতে পারতাম, তবে আমি অনুমান করি যে আমার সমস্যাটি এখন উবুন্টু মূল অ্যাকাউন্টের সাথে সংযুক্ত, যেমনটি আমি আশা করি তেমন আচরণ করে না।


আমি যা বুঝতে পারি না তা হ'ল:

এগুলি কাজ করে না:

martin@alyx:~$ sudo adb devices
sudo: adb: command not found

এটি করে (পুরো পথটি টাইপ করা):

martin@alyx:~$ sudo /opt/android-sdk-linux/platform-tools/adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached 
CM7-Blade   device

এটি কাজ করে না (সুডোর সাথে-ই ব্যবহার করে):

martin@alyx:~$ sudo -E adb devices
sudo: adb: command not found

এটি কাজ করে (মূল হিসাবে):

martin@alyx:~$ sudo su
root@alyx:/home/martin# adb devices
List of devices attached 
CM7-Blade   device

আমি এখন সম্পূর্ণ বিভ্রান্ত এবং আমি কীভাবে সুডোর জন্য কোনও পথ নির্ধারণ করব বা কীভাবে আমি আমার সমস্যার সমাধান করতে পারব সে সম্পর্কে কিছু ব্যাখ্যা দেওয়ার জন্য আমি প্রশংসা করব।

(এবং দয়া করে, এডাবিকে মূল হিসাবে চালানো উচিত নয় বলে বলবেন না))

আগাম ধন্যবাদ!

সম্পাদনা করুন: মূল অনুমতিগুলির প্রয়োজনের দ্বারা আমার অর্থ হ'ল আমার সেগুলি দরকার কারণ অন্যথায় আমি পেয়েছি:

$ adb devices 
List of devices attached 
????????????    no permissions

যা সুপারভাইজার হিসাবে ঘটে না। যদি এটি ভুল বুঝে থাকে তবে দুঃখিত।


আমি উইন্ডোজ এবং উবুন্টু উভয়ের সাথেই লক্ষ্য করেছি যে অ্যান্ড্রয়েড ডিভাইসগুলি প্রায়শই উপস্থিত হয় না যদি আপনি সেগুলি একটি ইউএসবি 3 পোর্টে প্লাগ ইন করে থাকেন তবে সেগুলি একটি ইউএসবি 3 পোর্টে প্লাগিং করলে সমস্যাটি হ্রাস পায়।
পল গ্রেগোয়ার 15

ডক্স থেকে: source.android.com/source/...
Paschalis

উত্তর:


48

দয়া করে প্রথমে নিম্নলিখিতটি পড়ুন: আমি কীভাবে অ্যান্ড্রয়েড এডিবি সেট আপ করব?


ইউএসবি অ্যাক্সেস কনফিগার করা

প্রথমত, আপনি যদি সেই অনুযায়ী অনুমতিগুলি সেট করে থাকেন তবে আপনাকে এডিবি চালানোর জন্য রুট অনুমতি প্রয়োজন হবে না। এওএসপি সাইট পিক্সেল / নেক্সাস ডিভাইসগুলির জন্য ইউএসবি অ্যাক্সেস কনফিগার করার উদাহরণ সরবরাহ করে । নেক্সাস ডিভাইসগুলির জন্য আপনি নিম্নলিখিত স্কিমটি ব্যবহার করতে পারেন:

SUBSYSTEM=="usb", ATTR{idVendor}=="xxxx", ATTR{idProduct}=="xxxx", MODE="0600", OWNER="<username>"

lsusbআপনার ডিভাইসটি ব্যবহার করে এবং অনুসন্ধানের মাধ্যমে বিক্রেতা এবং পণ্য আইডি পাওয়া যাবে । (দ্রষ্টব্য: ডিভাইসটি আসলে একটি গ্যালাক্সি নেক্সাস)

$ lsusb | grep -i samsung
Bus 002 Device 103: ID 04e8:6860 Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II]

সুতরাং আমার /etc/udev/rules.d/51-android.rulesউদেব নিয়মটি এরকম দেখাচ্ছে:

# adb protocol on maguro/toro (Galaxy Nexus)
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="6860", MODE="0600", OWNER="username"

প্রয়োজনে আপনি অন্য ফোন স্ট্যাটাস যেমন ফাস্টবুট এর জন্য এটি পুনরাবৃত্তি করতে চাইতে পারেন। পরিবর্তনগুলি কার্যকর হওয়ার জন্য udev ( sudo udevadm control --reload) পুনরায় লোড করুন বা পুনরায় বুট করুন (প্রস্তাবিত)।

প্রোগ্রাম উপলব্ধ করা

পাথ ভেরিয়েবলটি পরিবর্তনের পরিবর্তে আমি এক্সিকিউটেবলের সাথে ~/bin/(কেবল ব্যবহারকারী) অথবা /usr/local/bin/(সিস্টেমের প্রশস্ত) ইন একটি প্রতীকী লিঙ্ক যুক্ত করার পরামর্শ দেব ।

mkdir ~/bin/
ln -s /opt/android-sdk-linux/platform-tools/adb ~/bin/

1
আমি আমার ফোনের জন্য উদেব নিয়মগুলি যুক্ত করার চেষ্টা করেছি, তবে এটির সাহায্য হয়নি তাই আমি ভেবেছিলাম আমার সমস্যা সম্পর্কে আমি পরিষ্কার নই। দয়া করে, আপনার যদি সময় থাকে তবে আমার প্রশ্নের শেষ দেখুন।
মার্টিন ফেজেস

আপনি সঠিক আইডি যুক্ত করেছেন? modaco.com/topic/329317-guide-ubantu-and-the-blade আপনার মেশিনটি আবার চালু হয়েছে? adb devicesমূল অধিকার ছাড়াই আমার জন্য কাজ করে।
LiveWireBT

4
হ্যাঁ, এটি কাজ করে! আমি ude নিয়মগুলিকে /etc/udev/rules.d/51-android-rules এ যুক্ত করেছি এবং দৃশ্যত এটি একটি ভুল ছিল। /Lib/udev/rules.d/11-android.rules ব্যবহার করার পরে, সবকিছু ঠিকঠাক ছিল! আমার রুট পার্সিমেন্টের দরকার নেই! অনেক ধন্যবাদ!
মার্টিন ফেজেস

একই ছিল ?????????????? কোনও অনুমতিের পরিস্থিতি নেই এবং আপনার উত্তর এটি সমাধান করেছে, ধন্যবাদ।
পানথ্রো

কোনও কারণে এটি এখানে কাজ করে না, আমাকে sudo দিয়ে অ্যাডবি সার্ভার শুরু করতে হয়েছিল; কোন ধারণা কেন আমি এটি দেখতে না পারে কেন এটি কাজ করে না?
অ্যাকোরিয়াস শক্তি

29

আমি একই ইস্যুতে চীন থেকে কোনও ট্যাবলেট (কিছু অদ্ভুত প্রস্তুতকারক) নিয়ে এসেছি।

/etc/udev/rules.d/51-android.rulesফাইল ছাড়াও আমারও পরিবর্তন ~/.android/adb_usb.iniকরা দরকার ।

টার্মিনালে নীচে চালান;

sudo gedit ~/.android/adb_usb.ini

এবং আপনার adb_usb.iniফাইলটি দেখতে হবে:

# ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.
# USE 'android update adb' TO GENERATE.
# 1 USB VENDOR ID PER LINE.
# ie 0x2207
0x<!!!Your Vendor ID here!!!>

সংযোগ বিচ্ছিন্ন এবং পুনরায় সংযুক্ত ডিভাইস এবং টার্মিনালে কমান্ডের নীচে চালানোর প্রয়োজন;

adb kill-server

এবং পরে

adb start-server

এবং ডিভাইসটি সনাক্ত করা হয়েছিল।


আমি আপনার টিপটি দিয়ে চেষ্টা করেছি কিন্তু কিছুই বদলেনি, আমি এখানে দেখতে পেলাম এমন ধারণা কেন এটি এখানে কাজ করে না?
অ্যাকোরিয়াস শক্তি

সুন্দর. এটা আমার জন্য কাজ করেছে। সেই সাথে আমাকে আমার অ্যাডবি আপডেট করতে হয়েছিল
ওয়াফলের ক্রেজি চিনাবাদাম

এই সমাধানটি উবুন্টু 14.04 এ কাজ করে না। ডিভাইসের তালিকাটি এখনও খালি বাইরে আসে।
Luís de Sousa

1
অনেক ধন্যবাদ, উইগার, অবশেষে আমি আমার জন্য কার্যকর সমাধানটি খুঁজে পেয়েছি।
দিমিত্রি পপভ

এটাই আমি মিস করছিলাম। আসলে, 0x2207আপনার উদাহরণটিতে একই ডিভাইসটি ব্যবহার করে ID
ssokolow

2

আমার ক্ষেত্রে এমটিপি মোডের পরিবর্তে কিছু স্মার্টফোনগুলি কেবলমাত্র পিটিপি মোডে সেট করার দরকার ছিল এমন বেশিরভাগ ডিভাইসগুলির বিপরীতে যাদের আমার অ্যান্ড্রয়েড স্টুডিও (v1.5.1) দ্বারা সনাক্ত হওয়া এমটিপি মোডের প্রয়োজন ছিল।

সুতরাং ইউনিক্সের আরও জটিল এডিপি কনফিগারেশনে সময় ব্যয় না করে এবং সম্ভবত তাদের ক্ষতি করার আগে প্রথমে এমটিপি এবং পিটিপি উভয় ক্ষেত্রেই চেষ্টা করে দেখুন।

নতুন ডিভাইসে আপনি এটি সরাসরি দেব বিকল্পগুলিতে চয়ন করতে পারেন, পুরানো ক্ষেত্রে এটি স্ট্যাটাস বারের ইউএসবি সংযুক্ত বিকল্পগুলিতে থাকে।

তবুও আমার জন্য জেড 5 এবং এরপরের নতুন সনি এক্স্পেরিয়া ডিভাইসগুলি ইউএসবি মোডে কার্যকর হবে না। হতে পারে আমার অ্যান্ড্রয়েড স্টুডিও পুরানো বা ইউনিক্স এডিপি কনফিগারেশনের সাহায্যে আমার খনন করা দরকার।


1

এই পদক্ষেপগুলি অনুসরণ করুন:

  1. অ্যান্ড্রয়েড ভারসেট সেট করুন

    প্রাথমিকভাবে আপনার বাড়িতে যান এবং এটি টিপুন Ctrl+ Hএটি আপনাকে লুকানো ফাইলগুলি এখন ফাইল সন্ধান করতে দেখাবে .bashrc, কোনও পাঠ্য সম্পাদক দিয়ে খুলুন এবং তারপরে ফাইলের শেষে নীচে লাইনগুলি রাখুন:

    export ANDROID_HOME=/myPathSdk/android-sdk-linux
    export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
    
  2. রিবুট

  3. ডিবাগ করতে ডিভাইস ব্যবহার করা হচ্ছে

    সংযোগের জন্য শুনুন:

    adb -a
    

    আপনার অ্যান্ড্রয়েড ডিভাইস সংযুক্ত করুন এবং এটি অনুমোদিত করুন:

    cordova run android --device
    

0

ইউএসবি অ্যাক্সেস কনফিগার করা

প্রস্তাবিত পদ্ধতির মধ্যে একটি ফাইল তৈরি করা হয় /etc/udev/rules.d/51-android.rules

টার্মিনাল টাইপ করুন:

wget -S -O - http://source.android.com/source/51-android.txt | sed "s/<username>/$USER/" | sudo tee >/dev/null /etc/udev/rules.d/51-android.rules; sudo udevadm control --reload-rules

এই নতুন নিয়মগুলি পরবর্তী সময় কোনও ডিভাইস প্লাগ ইন করার পরে কার্যকর হয় therefore সুতরাং ডিভাইসটি আনপ্লাগ করে কম্পিউটারে আবার প্লাগ করা প্রয়োজন হতে পারে।


0

যদিও গৃহীত উত্তর আমাকে কাজগুলি করতে সহায়তা করেছে, তবে আমি এখনও বিভ্রান্ত ছিলাম:

martin@alyx:~$ sudo adb devices
sudo: adb: command not found

এবং বিশেষ করে

martin@alyx:~$ sudo -E adb devices
sudo: adb: command not found

অনুসারে sudo --help:

-E, --preserve-env          preserve user environment when running command

দেখা যাচ্ছে যে অনেকগুলি লিনাক্স বিতরণে (এতে ডেবিয়ান এবং উবুন্টু অন্তর্ভুক্ত) secure_pathএবং env_resetঅপশনগুলি ডিফল্টরূপে চালু হয়, যা আপনার PATHপরিবর্তনশীলটিকে পুনরায় সেট করে এবং এতে সেট করে secure_path। আপনি /etc/sudoersভিজুডো ব্যবহার করে ফাইলটিতে এটি পরিবর্তন করতে পারেন ।

বিকল্পভাবে আপনি চালাতে পারেন:

sudo env PATH=$PATH adb devices

-1

এই আদেশটি ব্যবহার করে দেখুন: sudo tools/android update sdk --no-ui

এসডিকে পুনরায় পড়া:

অ্যান্ড্রয়েড এসডিকে আপনাকে স্বাগতম! অ্যান্ড্রয়েড এসডিকে সংরক্ষণাগারটিতে প্রাথমিকভাবে কেবলমাত্র বেসিক এসডিকে সরঞ্জাম রয়েছে। এটিতে অ্যান্ড্রয়েড প্ল্যাটফর্ম বা কোনও তৃতীয় পক্ষের লাইব্রেরি নেই। আসলে, অ্যাপ্লিকেশন বিকাশের জন্য আপনার প্রয়োজনীয় সমস্ত সরঞ্জাম এমনকি এটিতে নেই। অ্যাপ্লিকেশনগুলির বিকাশ শুরু করতে, আপনাকে এসডিকে ম্যানেজার ব্যবহার করে প্ল্যাটফর্ম-সরঞ্জাম এবং অ্যান্ড্রয়েড প্ল্যাটফর্মের কমপক্ষে একটি সংস্করণ ইনস্টল করতে হবে। প্ল্যাটফর্ম-সরঞ্জামগুলিতে বিল্ড সরঞ্জাম রয়েছে যা অ্যান্ড্রয়েড প্ল্যাটফর্মের নতুন বৈশিষ্ট্যগুলি সমর্থন করার জন্য পর্যায়ক্রমে আপডেট করা হয় (এজন্য তারা বেসিক এসডিকে সরঞ্জামগুলি থেকে পৃথক হয়), এডিবি, ডেক্সডাম্প এবং অন্যান্য সহ। প্ল্যাটফর্ম-সরঞ্জামগুলি, অ্যান্ড্রয়েড প্ল্যাটফর্ম এবং অন্যান্য অ্যাড-অন ইনস্টল করতে আপনার অবশ্যই একটি ইন্টারনেট সংযোগ থাকতে হবে, তাই আপনি অফলাইনে থাকাকালীন এসডিকে ব্যবহারের পরিকল্পনা করেন, দয়া করে অনলাইনে থাকাকালীন প্রয়োজনীয় উপাদানগুলি ডাউনলোড করার বিষয়টি নিশ্চিত করুন। এসডিকে ম্যানেজারটি শুরু করতে, দয়া করে প্রোগ্রামটি "অ্যান্ড্রয়েড" সম্পাদন করুন। কমান্ড-লাইন থেকে আপনি সরাসরি কার্যকর করে একটি আপডেট ট্রিগার করতে পারেন:tools/android update sdk --no-ui


আমি নিশ্চিত না যে এই ঠিকানাগুলি মূল প্রশ্ন ...
landroni
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.