প্রতিটি চলমান ভার্চুয়াল ডিভাইস একটি কনসোল সরবরাহ করে যা আপনাকে অনুকরণ করা ডিভাইসের পরিবেশকে জিজ্ঞাসা করতে এবং নিয়ন্ত্রণ করতে দেয়। উদাহরণস্বরূপ, যখন আপনার অ্যাপটি এমুলেটরে চলছে তখন আপনি পোর্ট পুনঃনির্দেশ, নেটওয়ার্ক বৈশিষ্ট্য এবং টেলিফোনি ইভেন্ট পরিচালনা করতে কনসোল ব্যবহার করতে পারেন।
নিম্নলিখিত কমান্ডগুলির জন্য আপনার ইতিমধ্যেই একটি এমুলেটর চালু থাকা প্রয়োজন। একটি এমুলেটর চালানো সম্পর্কে আরও তথ্যের জন্য, অ্যান্ড্রয়েড এমুলেটরে অ্যাপ চালান এবং কমান্ড লাইন থেকে এমুলেটর শুরু করুন দেখুন।
একটি কনসোল সেশন শুরু করুন এবং বন্ধ করুন
কনসোল অ্যাক্সেস করতে এবং টার্মিনাল উইন্ডো থেকে কমান্ড লিখতে, কনসোল পোর্টের সাথে সংযোগ করতে telnet
ব্যবহার করুন এবং আপনার প্রমাণীকরণ টোকেন প্রদান করুন। প্রতিবার কনসোল OK প্রদর্শন করে, এটি কমান্ড গ্রহণ করার জন্য প্রস্তুত। একটি সাধারণ প্রম্পট নেই.
চলমান ভার্চুয়াল ডিভাইসের কনসোলের সাথে সংযোগ করতে:
- একটি টার্মিনাল উইন্ডো খুলুন এবং নিম্নলিখিত কমান্ড লিখুন:
- কনসোল
OK
প্রদর্শিত হওয়ার পরে,auth auth_token
কমান্ডটি প্রবেশ করান। - আপনি কনসোলে সংযুক্ত হওয়ার পরে, কনসোল কমান্ড লিখুন।
- কনসোল সেশন থেকে প্রস্থান করতে, প্রস্থান
quit
বাexit
।
telnet localhost console-port
এমুলেটর উইন্ডো শিরোনাম একটি পৃথক উইন্ডোতে চলার সময় কনসোল পোর্ট নম্বর তালিকাভুক্ত করে কিন্তু একটি টুল উইন্ডোতে চালানোর সময় নয়। উদাহরণস্বরূপ, কনসোল পোর্ট 5554 ব্যবহার করে একটি এমুলেটরের উইন্ডো শিরোনাম হতে পারে Pixel8_API_34:5554
। এছাড়াও, adb devices
কমান্ড চলমান ভার্চুয়াল ডিভাইস এবং তাদের কনসোল পোর্ট নম্বরগুলির একটি তালিকা প্রিন্ট করে। আরও তথ্যের জন্য, ডিভাইসের জন্য ক্যোয়ারী দেখুন।
দ্রষ্টব্য: এমুলেটর 5554 থেকে 5585 পোর্টে সংযোগের জন্য শোনে এবং শুধুমাত্র localhost
থেকে সংযোগ গ্রহণ করে।
আপনি কনসোল কমান্ড প্রবেশ করার আগে, এমুলেটর কনসোলের প্রমাণীকরণ প্রয়োজন। auth_token
অবশ্যই আপনার হোম ডিরেক্টরির .emulator_console_auth_token
ফাইলের বিষয়বস্তুর সাথে মেলে।
যদি সেই ফাইলটি বিদ্যমান না থাকে, telnet localhost console-port
কমান্ড ফাইলটি তৈরি করে, যাতে একটি এলোমেলোভাবে জেনারেট করা প্রমাণীকরণ টোকেন থাকে। প্রমাণীকরণ নিষ্ক্রিয় করতে, .emulator_console_auth_token
ফাইল থেকে টোকেনটি মুছুন বা এটি বিদ্যমান না থাকলে একটি খালি ফাইল তৈরি করুন৷
কনসোল কমান্ডের তালিকা দেখতে এবং নির্দিষ্ট কমান্ড সম্পর্কে জানতে help
, help command
, বা help-verbose
লিখুন।
এখানে একটি উদাহরণ সেশন:
$ telnet localhost 5554 Trying ::1... telnet: connect to address ::1: Connection refused Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. Android Console: Authentication required Android Console: type 'auth <auth_token>' to authenticate Android Console: you can find your <auth_token> in '/Users/me/.emulator_console_auth_token' OK auth 123456789ABCdefZ Android Console: type 'help' for a list of commands OK help-verbose Android console command help: help|h|? Prints a list of commands help-verbose Prints a list of commands with descriptions ping Checks if the emulator is alive automation Manages emulator automation event Simulates hardware events geo Geo-location commands gsm GSM related commands cdma CDMA related commands crash Crashes the emulator instance crash-on-exit Simulates crash on exit for the emulator instance kill Terminates the emulator instance restart Restarts the emulator instance network Manages network settings power Power related commands quit|exit Quits control session redir Manages port redirections sms SMS related commands avd Controls virtual device execution qemu QEMU-specific commands sensor Manages emulator sensors physics Manages physical model finger Manages emulator finger print debug Controls the emulator debug output tags rotate Rotates the screen clockwise by 90 degrees screenrecord Records the emulator's display fold Folds the device unfold Unfolds the device multidisplay Configures the multi-display nodraw turn on/off NoDraw mode. (experimental) resize-display resize the display resolution to the preset size virtualscene-image customize virtualscene image for virtulscene camera proxy manage network proxy server settings phonenumber set phone number for the device try 'help <command>' for command-specific help OK exit Connection closed by foreign host.
এমুলেটর কমান্ড রেফারেন্স
নিম্নলিখিত টেবিলটি তাদের পরামিতি এবং মান সহ এমুলেটর কনসোল কমান্ডগুলি বর্ণনা করে:
সাধারণ আদেশ | বর্ণনা |
---|---|
avd {stop|start|status|name} | নিম্নরূপ ভার্চুয়াল ডিভাইস অনুসন্ধান, নিয়ন্ত্রণ এবং পরিচালনা করে:
|
avd snapshot {list|save name |load name |delete name } | স্ন্যাপশটগুলিতে ডিভাইসের অবস্থা সংরক্ষণ এবং পুনরুদ্ধার করে, নিম্নরূপ:
নিম্নলিখিত উদাহরণটি avd snapshot save firstactivitysnapshot |
fold | ডিভাইসটিকে ভাঁজ করে তার ছোট পর্দার কনফিগারেশন প্রদর্শন করতে, যদি ডিভাইসটি ভাঁজ করা যায় এবং বর্তমানে খোলা থাকে। |
unfold | ডিভাইসটি ভাঁজ করা যায় এবং বর্তমানে ভাঁজ করা থাকলে তার বড় স্ক্রীন কনফিগারেশন প্রদর্শন করতে ডিভাইসটিকে উন্মোচন করে। |
kill | ভার্চুয়াল ডিভাইস বন্ধ করে। |
ping | ভার্চুয়াল ডিভাইস চলছে কিনা তা পরীক্ষা করে। |
rotate | 45 ডিগ্রী বৃদ্ধিতে AVD ঘড়ির কাঁটার বিপরীত দিকে ঘোরায়। |
এমুলেটর ক্র্যাশ করুন | বর্ণনা |
crash | অ্যাপ এক্সিকিউশনের সময় এমুলেটর ক্র্যাশ করে। |
crash-on-exit | অ্যাপ থেকে বেরিয়ে গেলে এমুলেটর ক্র্যাশ করে। |
ডিবাগ ট্যাগ | বর্ণনা |
debug tags ... | এমুলেটরের নির্দিষ্ট অংশ থেকে ডিবাগ বার্তা সক্রিয় বা নিষ্ক্রিয় করে। tags প্যারামিটারটি অবশ্যই ডিবাগ ট্যাগের তালিকা থেকে একটি মান হতে হবে যা আপনি যখন নিম্নলিখিত উদাহরণ debug radio |
পোর্ট পুনঃনির্দেশ | বর্ণনা |
redir list | বর্তমান পোর্ট পুনঃনির্দেশ তালিকা. |
redir add protocol : host-port : guest-port | একটি নতুন পোর্ট পুনঃনির্দেশ যোগ করে, নিম্নরূপ:
|
redir del protocol : host-port | একটি পোর্ট পুনঃনির্দেশ মুছে দেয়।
|
ভৌগলিক অবস্থান | বর্ণনা |
এমুলেটরে একটি GPS ফিক্স পাঠিয়ে একটি এমুলেটরের ভিতরে চলমান অ্যাপগুলিতে রিপোর্ট করা ভৌগলিক অবস্থান সেট করে৷ ভার্চুয়াল ডিভাইস চালু হওয়ার সাথে সাথে আপনি নিম্নলিখিত | |
geo fix longitude latitude [altitude] [satellites] [velocity] | এমুলেটরে একটি সাধারণ GPS ফিক্স পাঠায়। দশমিক ডিগ্রীতে longitude এবং latitude নির্দিষ্ট করুন। অবস্থান নির্ধারণ করতে satellites সংখ্যা নির্দিষ্ট করতে 1 থেকে 12 পর্যন্ত একটি সংখ্যা ব্যবহার করুন এবং মিটারে altitude এবং নটগুলিতে velocity নির্দিষ্ট করুন। |
geo nmea sentence | অনুকরণ করা ডিভাইসে একটি NMEA 0183 বাক্য পাঠায় যেন এটি একটি অনুকরণ করা GPS মডেম থেকে পাঠানো হয়েছে। '$GP' দিয়ে sentence শুরু করুন। শুধুমাত্র '$GPGGA' এবং '$GPRCM' বাক্যগুলি বর্তমানে সমর্থিত। নিম্নলিখিত উদাহরণ হল একটি GPGGA (গ্লোবাল পজিশনিং সিস্টেম ফিক্স ডেটা) বাক্য যা একটি GPS রিসিভারের জন্য সময়, অবস্থান এবং ফিক্স ডেটা পায়: geo nmea $GPGGA ,hhmmss.ss,llll.ll,a,yyyyy.yy,a,x,xx,x.x,x.x,M,x.x,M,x.x,xxxx |
জাল হার্ডওয়্যার ঘটনা | বর্ণনা |
event types | সমস্ত জাল ইভেন্ট প্রকারের তালিকা করে। কোড আছে এমন ইভেন্টের জন্য, কোডের সংখ্যা ডানদিকে বন্ধনীতে তালিকাভুক্ত করা হয়।
event types event <type> can be an integer or one of the following aliases: EV_SYN EV_KEY (405 code aliases) EV_REL (2 code aliases) EV_ABS (27 code aliases) EV_MSC EV_SW (4 code aliases) EV_LED EV_SND EV_REP EV_FF EV_PWR EV_FF_STATUS EV_MAX OK |
event send types [types ...] | এক বা একাধিক জাল ইভেন্টের ধরন পাঠায়। |
event codes type | নির্দিষ্ট জাল ইভেন্ট ধরনের জন্য ইভেন্ট কোড তালিকাভুক্ত. |
event send type [: code ]:[ value ] [...] | ঐচ্ছিক কোড এবং কোড মান সহ এক বা একাধিক জাল ইভেন্ট পাঠায়। ঠিক কোন ইভেন্টটি পাঠাতে হবে তা আবিষ্কার করতে, আপনি এমুলেটরের বোতামগুলি ম্যানুয়ালি টিপে আপনি পাওয়ার বোতাম টিপলে এই ইভেন্টগুলি তৈরি হয়: adb shell getevent -lt /dev/input/event12: EV_KEY KEY_POWER DOWN /dev/input/event12: EV_SYN SYN_REPORT 00000000 /dev/input/event12: EV_KEY KEY_POWER UP /dev/input/event12: EV_SYN SYN_REPORT 00000000উদাহরণস্বরূপ, পাওয়ার বোতামের একটি দীর্ঘ প্রেস অনুকরণ করতে, কীডাউন এবং কী-আপের জন্য দুটি EV_KEY ইভেন্ট পাঠান: event send EV_KEY:KEY_POWER:0 OK event send EV_KEY:KEY_POWER:1 OK |
event text message | অক্ষরের একটি স্ট্রিং পাঠায় যা কীপ্রেস অনুকরণ করে। বার্তাটি অবশ্যই একটি UTF-8 স্ট্রিং হতে হবে৷ ইউনিকোড পোস্টগুলি বর্তমান ডিভাইস কীবোর্ড অনুসারে বিপরীত-ম্যাপ করা হয় এবং অসমর্থিত অক্ষরগুলি নিঃশব্দে বাতিল করা হয়। |
ক্ষমতা রাষ্ট্র নিয়ন্ত্রণ | বর্ণনা |
power display | ব্যাটারি এবং চার্জারের অবস্থা প্রদর্শন করে। |
power ac {on|off} | এসি চার্জিং অবস্থা on বা off সেট করে। |
power status {unknown|charging|discharging|not-charging|full} | নির্দিষ্ট করা হিসাবে ব্যাটারির স্থিতি পরিবর্তন করে। |
power present {true|false} | ব্যাটারির উপস্থিতির অবস্থা সেট করে। |
power health {unknown|good|overheat|dead|overvoltage|failure} | ব্যাটারির স্বাস্থ্যের অবস্থা সেট করে। |
power capacity percent | 0 থেকে 100 এর মধ্যে একটি শতাংশ হিসাবে ব্যাটারি ক্ষমতার অবশিষ্ট অবস্থা সেট করে। |
নেটওয়ার্ক সংযোগের অবস্থা | বর্ণনা |
network status | নেটওয়ার্ক স্থিতি এবং বর্তমান বিলম্ব এবং গতি বৈশিষ্ট্য পরীক্ষা করে। |
network delay latency | এমুলেটেড নেটওয়ার্ক লেটেন্সি পরিবর্তন করে। এমুলেটর আপনাকে বিভিন্ন নেটওয়ার্ক লেটেন্সি লেভেল সিমুলেট করতে দেয় যাতে আপনি আপনার অ্যাপটিকে বাস্তব চলমান অবস্থার আরও সাধারণ পরিবেশে পরীক্ষা করতে পারেন। আপনি এমুলেটর স্টার্টআপে একটি লেটেন্সি লেভেল বা রেঞ্জ সেট করতে পারেন, অথবা এমুলেটরে অ্যাপটি চলাকালীন আপনি লেটেন্সি পরিবর্তন করতে কনসোল ব্যবহার করতে পারেন। নেটওয়ার্ক latency ফর্ম্যাট হল নিম্নলিখিতগুলির মধ্যে একটি (সংখ্যা হল মিলিসেকেন্ড): নেটওয়ার্ক লেটেন্সি ফরম্যাট:
এমুলেটর স্টার্টআপে লেটেন্সি সেট করতে, একটি সমর্থিত emulator -netdelay gprs emulator -netdelay 40,100 এমুলেটর চলাকালীন নেটওয়ার্ক বিলম্বে পরিবর্তন করতে, কনসোলের সাথে সংযোগ করুন এবং পূর্ববর্তী নেটওয়ার্ক লেটেন্সি ফরম্যাট তালিকা থেকে সমর্থিত network delay gprs network delay 40 100 |
network speed speed | এমুলেটর আপনাকে বিভিন্ন নেটওয়ার্ক স্থানান্তর হার অনুকরণ করতে দেয়। আপনি এমুলেটর স্টার্টআপে একটি স্থানান্তর হার বা পরিসর সেট করতে পারেন, অথবা এমুলেটরে অ্যাপটি চলাকালীন হার পরিবর্তন করতে আপনি কনসোল ব্যবহার করতে পারেন। নেটওয়ার্ক নেটওয়ার্ক গতি বিন্যাস:
এমুলেটর স্টার্টআপে নেটওয়ার্ক গতি সেট করতে, একটি সমর্থিত emulator -netspeed gsm @Pixel_API_26 emulator -netspeed 14.4,80 @Pixel_API_26 এমুলেটর চলাকালীন নেটওয়ার্ক গতিতে পরিবর্তন করতে, কনসোলের সাথে সংযোগ করুন এবং পূর্ববর্তী নেটওয়ার্ক গতি বিন্যাস তালিকা থেকে একটি সমর্থিত network speed 14.4 80 |
network capture {start|stop} file | একটি ফাইলে প্যাকেট পাঠায়। নিম্নলিখিত তালিকা প্যারামিটার এবং পরামিতি মান বর্ণনা করে:
|
টেলিফোনি অনুকরণ | বর্ণনা |
অ্যান্ড্রয়েড এমুলেটরে এর নিজস্ব GSM এবং CDMA এমুলেটেড মডেম রয়েছে যা আপনাকে এমুলেটরে টেলিফোনি ফাংশন অনুকরণ করতে দেয়। উদাহরণস্বরূপ, জিএসএম-এর সাহায্যে আপনি ইনবাউন্ড ফোন কলগুলি অনুকরণ করতে পারেন এবং ডেটা সংযোগ স্থাপন এবং বন্ধ করতে পারেন। CDMA এর মাধ্যমে, আপনি একটি সাবস্ক্রিপশন উৎস এবং পছন্দের রোমিং তালিকা প্রদান করেন। অ্যান্ড্রয়েড সিস্টেম সিমুলেটেড কলগুলিকে ঠিক যেমন এটি বাস্তব কলগুলি পরিচালনা করে। এমুলেটর কল অডিও সমর্থন করে না। | |
gsm {call|accept|cancel|busy} phonenumber | gsm পরামিতিগুলি নিম্নরূপ:
|
gsm {data|voice} state | data state কমান্ড জিপিআরএস ডেটা সংযোগের অবস্থা পরিবর্তন করে এবং data voice state কমান্ড জিপিআরএস ভয়েস সংযোগের অবস্থাকে পরিবর্তন করে, নিম্নরূপ:
|
gsm hold | hold জন্য কলের অবস্থা পরিবর্তন করে। আপনি একটি কলের অবস্থা পরিবর্তন করতে পারেন যখন সেটির বর্তমান অবস্থা active থাকে বা waiting hold |
gsm list | সমস্ত ইনবাউন্ড এবং আউটবাউন্ড কল এবং তাদের রাজ্যগুলি তালিকাভুক্ত করে৷ |
gsm status | বর্তমান GSM ভয়েস/ডেটা অবস্থা রিপোর্ট করে। voice এবং data কমান্ডের জন্য বর্ণিত মানগুলি। |
gsm signal {rssi|ber} | আপডেটের পরবর্তী 15 সেকেন্ডে রিপোর্ট করা সংকেত শক্তি (rssi) এবং বিট ত্রুটির হার (ber) পরিবর্তন করে। নিম্নলিখিত তালিকা প্যারামিটার এবং তাদের মান বর্ণনা করে:
|
gsm signal-profile num | সংকেত শক্তি প্রোফাইল সেট করে। num হল 0 থেকে 4 পর্যন্ত একটি সংখ্যা। |
cdma ssource source | বর্তমান CDMA সাবস্ক্রিপশন সোর্স সেট করে, যেখানে source হল একটি নেটওয়ার্ক-ভিত্তিক অনুমোদিত তালিকা যাতে CDMA ক্যারিয়ারের গ্রাহক এবং তাদের মানগুলি নিম্নরূপ:
|
cdma prl_version version | বর্তমান পছন্দের রোমিং তালিকা (পিআরএল) সংস্করণ ডাম্প করে। সংস্করণ নম্বরটি PRL ডাটাবেসের জন্য যা সিস্টেম নির্বাচন এবং অধিগ্রহণ প্রক্রিয়ার সময় ব্যবহৃত তথ্য ধারণ করে। |
এমুলেটরে সেন্সর পরিচালনা করুন | বর্ণনা |
এই কমান্ডগুলি AVD-তে কোন সেন্সর পাওয়া যায় তার সাথে সম্পর্কিত। sensor কমান্ড ব্যবহার করার পাশাপাশি, আপনি অ্যাক্সিলোমিটার এবং অতিরিক্ত সেন্সর ট্যাবে ভার্চুয়াল সেন্সর স্ক্রিনে এমুলেটরে সেটিংস দেখতে এবং সামঞ্জস্য করতে পারেন। | |
sensor status | সমস্ত সেন্সর এবং তাদের অবস্থা তালিকা. নিম্নলিখিত sensor status কমান্ডের জন্য উদাহরণ আউটপুট: |
sensor get sensor-name | sensor-name জন্য সেটিংস পায়। নিম্নলিখিত উদাহরণটি ত্বরণ সেন্সরের মান পায়:sensor get acceleration acceleration = 2.23517e-07:9.77631:0.812348 কোলন(:) দ্বারা পৃথক করা |
sensor set sensor-name value-x : value-y : value-z | sensor-name জন্য মান সেট করে। নিম্নলিখিত উদাহরণটি কোলন দ্বারা পৃথক করা x, y এবং z মানগুলিতে ত্বরণ সেন্সর সেট করে। sensor set acceleration 2.23517e-07:9.77631:0.812348 |
এসএমএস অনুকরণ | বর্ণনা |
sms send sender-phone-number textmessage | একটি অনুকরণ করা ইনকামিং এসএমএস তৈরি করে। নিম্নলিখিত তালিকা প্যারামিটার এবং তাদের মান বর্ণনা করে:
নিম্নলিখিত উদাহরণটি 4085555555 ফোন নম্বরে "হাই সেখানে" বার্তা পাঠায়: sms send 4085555555 hi there কনসোল এসএমএস বার্তাটিকে অ্যান্ড্রয়েড ফ্রেমওয়ার্কে ফরোয়ার্ড করে, যা এটিকে এমুলেটরের একটি অ্যাপে পাঠায় যা এসএমএস পরিচালনা করে, যেমন বার্তা অ্যাপ। আপনি যদি 10টি নম্বর পাস করেন, অ্যাপটি এটিকে একটি ফোন নম্বর হিসাবে ফর্ম্যাট করে। দীর্ঘ বা ছোট সাংখ্যিক স্ট্রিংগুলি আপনি যেভাবে পাঠিয়েছেন তা প্রদর্শন করে। |
ফিঙ্গারপ্রিন্ট সিমুলেশন | বর্ণনা |
finger touch fingerprint-id | সেন্সর স্পর্শ করা একটি আঙুল অনুকরণ করে। |
finger remove | আঙুল অপসারণ simulates. এই কমান্ডগুলি কীভাবে ব্যবহার করবেন সে সম্পর্কে নির্দেশাবলীর জন্য, ফিঙ্গারপ্রিন্ট সিমুলেশন এবং বৈধতা সম্পর্কে নিম্নলিখিত বিভাগটি দেখুন। |
ফিঙ্গারপ্রিন্ট সিমুলেশন এবং বৈধতা
আপনার অ্যাপের জন্য ফিঙ্গারপ্রিন্ট প্রমাণীকরণ সিমুলেট এবং যাচাই করতে finger
কমান্ড ব্যবহার করুন। আপনার প্রয়োজন SDK টুলস 24.3 বা উচ্চতর এবং Android 6.0 (API স্তর 23) বা উচ্চতর।
ফিঙ্গারপ্রিন্ট প্রমাণীকরণ অনুকরণ এবং যাচাই করতে, এই পদক্ষেপগুলি অনুসরণ করুন:
- আপনার যদি এখনও ফিঙ্গারপ্রিন্ট আইডি না থাকে, তাহলে সেটিংস > নিরাপত্তা > ফিঙ্গারপ্রিন্ট নির্বাচন করে এবং তালিকাভুক্তির নির্দেশাবলী অনুসরণ করে এমুলেটরে একটি নতুন আঙুলের ছাপ নথিভুক্ত করুন।
- ফিঙ্গারপ্রিন্ট প্রমাণীকরণ গ্রহণ করতে আপনার অ্যাপ সেট আপ করুন৷ আপনি এই সেটআপটি সম্পাদন করার পরে, আপনার ডিভাইস ফিঙ্গারপ্রিন্ট প্রমাণীকরণ স্ক্রীন প্রদর্শন করে।
- যখন আপনার অ্যাপটি ফিঙ্গারপ্রিন্ট প্রমাণীকরণ স্ক্রীন প্রদর্শন করে, তখন কনসোলে যান এবং
finger touch
কমান্ড এবং আপনার তৈরি করা ফিঙ্গারপ্রিন্ট আইডি লিখুন। এটি একটি আঙুল স্পর্শ simulates. - তারপরে, আঙুল অপসারণ অনুকরণ করতে
finger remove
কমান্ডটি প্রবেশ করান।আপনার অ্যাপটিকে এমনভাবে প্রতিক্রিয়া জানানো উচিত যেন কোনও ব্যবহারকারী স্পর্শ করে এবং তারপর ফিঙ্গারপ্রিন্ট সেন্সর থেকে তাদের আঙুল সরিয়ে দেয়।