এমুলেটর কনসোল কমান্ড পাঠান

প্রতিটি চলমান ভার্চুয়াল ডিভাইস একটি কনসোল প্রদান করে, যা আপনাকে অনুকৃত ডিভাইসের পরিবেশ সম্পর্কে জানতে ও তা নিয়ন্ত্রণ করতে দেয়। উদাহরণস্বরূপ, আপনার অ্যাপটি এমুলেটরে চলার সময় আপনি পোর্ট রিডাইরেকশন, নেটওয়ার্কের বৈশিষ্ট্য এবং টেলিফোনি ইভেন্টগুলো পরিচালনা করতে কনসোলটি ব্যবহার করতে পারেন।

নিম্নলিখিত কমান্ডগুলো চালানোর জন্য আপনার একটি এমুলেটর আগে থেকেই চালু থাকা প্রয়োজন। এমুলেটর চালানো সম্পর্কে আরও তথ্যের জন্য, ‘অ্যান্ড্রয়েড এমুলেটরে অ্যাপ চালান’ এবং ‘কমান্ড লাইন থেকে এমুলেটর চালু করুন’ দেখুন।

একটি কনসোল সেশন শুরু এবং বন্ধ করুন

কনসোল অ্যাক্সেস করতে এবং টার্মিনাল উইন্ডো থেকে কমান্ড দিতে, telnet ব্যবহার করে কনসোল পোর্টে সংযোগ করুন এবং আপনার অথেনটিকেশন টোকেন প্রদান করুন। প্রতিবার যখন কনসোলে OK প্রদর্শিত হয়, তার মানে এটি কমান্ড গ্রহণ করার জন্য প্রস্তুত। এখানে কোনো সাধারণ প্রম্পট নেই।

চলমান ভার্চুয়াল ডিভাইসের কনসোলে সংযোগ করতে:

  1. একটি টার্মিনাল উইন্ডো খুলুন এবং নিম্নলিখিত কমান্ডটি প্রবেশ করান:
  2. telnet localhost console-port

    এমুলেটর উইন্ডোর শিরোনামে কনসোল পোর্ট নম্বরটি উল্লেখ করা থাকে যখন এটি একটি আলাদা উইন্ডোতে চলে, কিন্তু টুল উইন্ডোতে চলার সময় তা থাকে না। উদাহরণস্বরূপ, ৫৫৫৪ কনসোল পোর্ট ব্যবহারকারী একটি এমুলেটরের উইন্ডোর শিরোনাম হতে পারে Pixel8_API_34:5554 । এছাড়াও, adb devices কমান্ডটি চলমান ভার্চুয়াল ডিভাইস এবং তাদের কনসোল পোর্ট নম্বরের একটি তালিকা প্রিন্ট করে। আরও তথ্যের জন্য, Query for devices দেখুন।

    দ্রষ্টব্য: এমুলেটরটি ৫৫৫৪ থেকে ৫৫৮৫ পোর্টে সংযোগের জন্য অপেক্ষা করে এবং শুধুমাত্র localhost থেকে সংযোগ গ্রহণ করে।

  3. কনসোলে OK প্রদর্শিত হওয়ার পর, auth auth_token কমান্ডটি প্রবেশ করান।
  4. কনসোল কমান্ড দেওয়ার আগে, এমুলেটর কনসোলে প্রমাণীকরণের প্রয়োজন হয়। auth_token অবশ্যই আপনার হোম ডিরেক্টরিতে থাকা .emulator_console_auth_token ফাইলের তথ্যের সাথে মিলতে হবে।

    যদি সেই ফাইলটি বিদ্যমান না থাকে, তাহলে telnet localhost console-port কমান্ডটি ফাইলটি তৈরি করে, যেটিতে এলোমেলোভাবে তৈরি একটি অথেনটিকেশন টোকেন থাকে। অথেনটিকেশন নিষ্ক্রিয় করতে, .emulator_console_auth_token ফাইল থেকে টোকেনটি মুছে ফেলুন অথবা ফাইলটি বিদ্যমান না থাকলে একটি খালি ফাইল তৈরি করুন।

  5. কনসোলে সংযুক্ত হওয়ার পর, কনসোল কমান্ডগুলো লিখুন।
  6. কনসোল কমান্ডের তালিকা দেখতে এবং নির্দিষ্ট কমান্ড সম্পর্কে জানতে help , help command বা help-verbose লিখুন।

  7. কনসোল সেশন থেকে বের হতে quit বা exit লিখুন।

এখানে একটি সেশনের উদাহরণ দেওয়া হলো:

$ 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  (ethernet and cellular only)
    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} নিম্নলিখিতভাবে ভার্চুয়াল ডিভাইসটিকে কোয়েরি, নিয়ন্ত্রণ এবং পরিচালনা করে:
  • stop : ডিভাইসটির কার্যক্রম বন্ধ করে দেয়।
  • start : ডিভাইসটির কার্যক্রম শুরু করে।
  • status : ভার্চুয়াল ডিভাইসের অবস্থা জানতে চায়, যা running বা stopped থাকতে পারে।
  • name : ভার্চুয়াল ডিভাইসের নাম জানতে চায়।
avd snapshot {list|save name |load name |delete name } ডিভাইসের অবস্থা নিম্নরূপভাবে স্ন্যাপশটে সংরক্ষণ ও পুনরুদ্ধার করে:
  • list : সংরক্ষিত সকল স্ন্যাপশটের তালিকা দেখায়।
  • save name : স্ন্যাপশটটি name সংরক্ষণ করে।
  • load name : নির্দিষ্ট নামের স্ন্যাপশটটি লোড করে।
  • delete name : নির্দিষ্ট নামের স্ন্যাপশটটি মুছে দেয়।

নিম্নলিখিত উদাহরণটি firstactivitysnapshot নামে একটি স্ন্যাপশট সংরক্ষণ করে:

avd snapshot save firstactivitysnapshot
fold ডিভাইসটি ভাঁজযোগ্য এবং বর্তমানে খোলা অবস্থায় থাকলে, এটিকে ভাঁজ করে এর ছোট স্ক্রিন কনফিগারেশনটি প্রদর্শন করে।
unfold ডিভাইসটি যদি ভাঁজযোগ্য হয় এবং বর্তমানে ভাঁজ করা থাকে, তবে এর বড় স্ক্রিনটি দেখানোর জন্য ডিভাইসটিকে খুলে দেয়।
kill ভার্চুয়াল ডিভাইসটি বন্ধ করে দেয়।
ping ভার্চুয়াল ডিভাইসটি চালু আছে কিনা তা যাচাই করে।
rotate AVD-কে ঘড়ির কাঁটার বিপরীত দিকে ৪৫ ডিগ্রি ধাপে ঘোরায়।
এমুলেটরটি ক্র্যাশ করুন বর্ণনা
crash অ্যাপটি চালানোর সময় এমুলেটরটি ক্র্যাশ করে।
crash-on-exit অ্যাপটি বন্ধ করার সময় এমুলেটরটি ক্র্যাশ করে।
ডিবাগ ট্যাগ বর্ণনা
debug tags ...

এমুলেটরের নির্দিষ্ট অংশ থেকে ডিবাগ বার্তা চালু বা বন্ধ করে। ` tags প্যারামিটারটির মান অবশ্যই emulator -help-debug-tags চালানোর পর প্রদর্শিত ডিবাগ ট্যাগের তালিকা থেকে নিতে হবে। -help-debug-tags অপশনটি সম্পর্কে আরও তথ্যের জন্য, সচরাচর ব্যবহৃত অপশনগুলোর সারণী দেখুন।

নিম্নলিখিত উদাহরণটি radio ট্যাগ সক্রিয় করে:

debug radio
পোর্ট পুনঃনির্দেশনা বর্ণনা
redir list বর্তমান পোর্ট পুনঃনির্দেশনা তালিকাভুক্ত করে।
redir add protocol : host-port : guest-port নিম্নরূপ একটি নতুন পোর্ট রিডাইরেকশন যোগ করা হয়েছে:
  • protocol : অবশ্যই tcp অথবা udp হতে হবে।
  • host-port : হোস্টে খোলার জন্য পোর্ট নম্বর।
  • guest-port : এমুলেটরে ডেটা রাউট করার জন্য পোর্ট নম্বর।
redir del protocol : host-port পোর্ট পুনঃনির্দেশনা মুছে দেয়।
  • protocol : অবশ্যই tcp অথবা udp হতে হবে।
  • host-port : হোস্টে খোলার জন্য পোর্ট নম্বর।
ভৌগোলিক অবস্থান বর্ণনা

এমুলেটরে একটি জিপিএস ফিক্স পাঠানোর মাধ্যমে, এমুলেটরের ভেতরে চলমান অ্যাপগুলোতে জ্ঞাত ভৌগোলিক অবস্থান নির্ধারণ করা হয়।

একটি ভার্চুয়াল ডিভাইস চালু হওয়ার সাথে সাথেই আপনি নিম্নলিখিত geo কমান্ডগুলোর মধ্যে একটি ব্যবহার করতে পারেন। এমুলেটর একটি মক লোকেশন প্রোভাইডার তৈরি করার মাধ্যমে আপনার প্রবেশ করানো অবস্থানটি সেট করে। এই প্রোভাইডারটি অ্যাপ দ্বারা সেট করা লোকেশন লিসেনারগুলোতে সাড়া দেয় এবং LocationManager অবস্থানটি সরবরাহ করে। যেকোনো অ্যাপ LocationManager.getLastKnownLocation("gps") কল করে এমুলেটেড ডিভাইসটির বর্তমান জিপিএস ফিক্স পেতে লোকেশন ম্যানেজারকে কোয়েরি করতে পারে।

geo fix longitude latitude [altitude] [satellites] [velocity] এমুলেটরে একটি সাধারণ জিপিএস ফিক্স পাঠায়। longitude এবং latitude দশমিক ডিগ্রিতে উল্লেখ করুন। অবস্থান নির্ধারণের জন্য ব্যবহৃত satellites সংখ্যা নির্দিষ্ট করতে ১ থেকে ১২ পর্যন্ত একটি সংখ্যা ব্যবহার করুন এবং altitude মিটারে ও velocity নটে উল্লেখ করুন।
geo nmea sentence একটি এমুলেটেড জিপিএস মডেম থেকে পাঠানোর মতোই এমুলেটেড ডিভাইসে একটি NMEA 0183 সেন্টেন্স পাঠায়। sentence '$GP' দিয়ে শুরু করুন। বর্তমানে শুধুমাত্র '$GPGGA' এবং '$GPRCM' সেন্টেন্স সমর্থিত। নিচের উদাহরণটি একটি GPGGA (গ্লোবাল পজিশনিং সিস্টেম ফিক্স ডেটা) সেন্টেন্স, যা একটি জিপিএস রিসিভারের জন্য সময়, অবস্থান এবং ফিক্স ডেটা সংগ্রহ করে:
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 কমান্ডটি ব্যবহার করতে পারেন।

পাওয়ার বাটন চাপলে এই ইভেন্টগুলো তৈরি হয়:

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 অবশিষ্ট ব্যাটারি ধারণক্ষমতার অবস্থা ০ ​​থেকে ১০০ পর্যন্ত শতাংশ হিসাবে নির্ধারণ করে।
নেটওয়ার্ক সংযোগের অবস্থা
(শুধুমাত্র ইথারনেট এবং সেলুলার)
বর্ণনা
network status নেটওয়ার্কের অবস্থা এবং বর্তমান বিলম্ব ও গতির বৈশিষ্ট্য যাচাই করে।
network delay latency

অনুকৃত নেটওয়ার্ক লেটেন্সি পরিবর্তন করে।

এমুলেটরটি আপনাকে বিভিন্ন নেটওয়ার্ক ল্যাটেন্সি লেভেল অনুকরণ করার সুযোগ দেয়, যাতে আপনি আপনার অ্যাপটিকে প্রকৃত চলমান অবস্থার অনুরূপ একটি পরিবেশে পরীক্ষা করতে পারেন। আপনি এমুলেটর চালু করার সময় একটি ল্যাটেন্সি লেভেল বা রেঞ্জ সেট করতে পারেন, অথবা এমুলেটরে অ্যাপটি চলার সময় কনসোল ব্যবহার করে ল্যাটেন্সি পরিবর্তন করতে পারেন।

নেটওয়ার্ক latency ফরম্যাটটি নিম্নলিখিতগুলির মধ্যে একটি (সংখ্যাগুলি মিলিসেকেন্ডে):

নেটওয়ার্ক লেটেন্সি ফরম্যাট:

  • gprs (GPRS), যা সর্বনিম্ন ১৫০ এবং সর্বোচ্চ ৫৫০ ল্যাটেন্সি পরিসীমা ব্যবহার করে।
  • edge : EDGE/EGPRS, যা সর্বনিম্ন ৮০ এবং সর্বোচ্চ ৪০০ ল্যাটেন্সি পরিসীমা ব্যবহার করে।
  • umts : UMTS/3G, যা সর্বনিম্ন ৩৫ এবং সর্বোচ্চ ২০০ ল্যাটেন্সি পরিসীমা ব্যবহার করে।
  • none : কোনো ল্যাটেন্সি নেই।
  • num : মিলিসেকেন্ডে নির্দিষ্ট লেটেন্সি অনুকরণ করে।
  • min : max : নির্দিষ্ট লেটেন্সি পরিসর অনুকরণ করে।

এমুলেটর চালু হওয়ার সময় ল্যাটেন্সি সেট করতে, পূর্ববর্তী নেটওয়ার্ক ল্যাটেন্সি ফরম্যাট তালিকায় তালিকাভুক্ত একটি সমর্থিত latency মান সহ -netdelay এমুলেটর অপশনটি ব্যবহার করুন। এখানে কিছু উদাহরণ দেওয়া হলো:

emulator -netdelay gprs
emulator -netdelay 40,100

এমুলেটর চলার সময় নেটওয়ার্ক ডিলে পরিবর্তন করতে, কনসোলে সংযোগ করুন এবং পূর্ববর্তী নেটওয়ার্ক ল্যাটেন্সি ফরম্যাট তালিকা থেকে একটি সমর্থিত latency মান সহ netdelay কমান্ডটি ব্যবহার করুন।

network delay gprs
network delay 40 100
network speed speed এমুলেটরটি আপনাকে বিভিন্ন নেটওয়ার্ক ট্রান্সফার রেট অনুকরণ করতে দেয়।

আপনি এমুলেটর চালু করার সময় একটি ট্রান্সফার রেট বা রেঞ্জ সেট করতে পারেন, অথবা এমুলেটরে অ্যাপটি চলার সময় কনসোল ব্যবহার করে রেটটি পরিবর্তন করতে পারেন।

নেটওয়ার্ক speed ফরম্যাটটি নিম্নলিখিতগুলির মধ্যে একটি (সংখ্যাগুলি কিলোবিট/সেকেন্ডে):

নেটওয়ার্ক স্পিড ফরম্যাট:

  • gsm : জিএসএম/সিএসডি, যা ১৪.৪ আপ এবং ১৪.৪ ডাউন গতি ব্যবহার করে।
  • hscsd : HSCSD, যা আপলোডের জন্য ১৪.৪ এবং ডাউনলোডের জন্য ৪৩.২ গতি ব্যবহার করে।
  • gprs (GPRS), যা আপস্ট্রিম ৪০.০ এবং ডাউনস্ট্রিম ৮০.০ গতি ব্যবহার করে।
  • edge : EDGE/EGPRS, যা আপলোডের জন্য ১১৮.৪ এবং ডাউনলোডের জন্য ২৩৬.৮ গতি ব্যবহার করে।
  • umts : ইউএমটিএস/থ্রিজি (UMTS/3G), যা আপলোডের গতি ১২৮.০ এবং ডাউনলোডের গতি ১৯২০ ব্যবহার করে।
  • hsdpa (HSDPA), যা ৩৪৮.০ আপলোড এবং ১৪,৪০০.০ ডাউনলোড গতি ব্যবহার করে।
  • এলটিই lte ), যার আপলোড গতি ৫৮,০০০ এবং ডাউনলোড গতি ১৭৩,০০০।
  • evdo : EVDO, যা ৭৫,০০০ আপ এবং ২৮০,০০০ ডাউন গতি ব্যবহার করে।
  • full : সীমাহীন গতি, তবে এটি আপনার কম্পিউটারের সংযোগ গতির উপর নির্ভর করে।
  • num : আপলোড এবং ডাউনলোড উভয়ের জন্য ব্যবহৃত কিলোবিট/সেকেন্ডে একটি সঠিক হার নির্ধারণ করে।
  • up : down : আপলোড এবং ডাউনলোডের জন্য আলাদাভাবে কিলোবিট/সেকেন্ডে সঠিক হার নির্ধারণ করে।

এমুলেটর চালু হওয়ার সময় নেটওয়ার্কের গতি সেট করতে, পূর্ববর্তী নেটওয়ার্ক স্পিড ফরম্যাট তালিকার মতো একটি সমর্থিত speed মান সহ -netspeed এমুলেটর অপশনটি ব্যবহার করুন। এখানে কিছু উদাহরণ দেওয়া হলো:

emulator -netspeed gsm @Pixel_API_26
emulator -netspeed 14.4,80 @Pixel_API_26

এমুলেটর চলার সময় নেটওয়ার্কের গতি পরিবর্তন করতে, কনসোলে সংযোগ করুন এবং পূর্ববর্তী নেটওয়ার্ক স্পিড ফরম্যাট তালিকা থেকে একটি সমর্থিত speed মান সহ network speed কমান্ডটি ব্যবহার করুন।

network speed 14.4 80
network capture {start|stop} file

ফাইলে প্যাকেট পাঠায়। নিম্নলিখিত তালিকায় প্যারামিটার এবং প্যারামিটারের মানগুলো বর্ণনা করা হয়েছে:

  • start file : নেটওয়ার্ক প্যাকেট ক্যাপচার করা শুরু করে। নিরাপত্তার জন্য, file নাম অবশ্যই খালি হতে হবে (কোনো পাথ সেপারেটর যেমন / এবং .. ব্যবহার করা যাবে না)। প্যাকেট ক্যাপচার ফাইলটি আপনার AVD-এর কন্টেন্ট ডিরেক্টরির console_out/ ফোল্ডারে সেভ করা হবে (উদাহরণস্বরূপ, ~/.android/avd/ avd_name .avd/console_out/ file )।
  • stop file : নির্দিষ্ট ফাইলে প্যাকেট পাঠানো বন্ধ করে।
টেলিফোনি অনুকরণ বর্ণনা
অ্যান্ড্রয়েড এমুলেটরটিতে নিজস্ব জিএসএম এবং সিডিএমএ এমুলেটেড মডেম রয়েছে, যা আপনাকে এমুলেটরের মধ্যেই টেলিফোনি ফাংশনগুলো সিমুলেট করতে দেয়। উদাহরণস্বরূপ, জিএসএম ব্যবহার করে আপনি ইনকামিং ফোন কল সিমুলেট করতে এবং ডেটা সংযোগ স্থাপন ও বিচ্ছিন্ন করতে পারেন। সিডিএমএ-এর ক্ষেত্রে, আপনাকে একটি সাবস্ক্রিপশন সোর্স এবং পছন্দের রোমিং তালিকা প্রদান করতে হয়। অ্যান্ড্রয়েড সিস্টেমটি সিমুলেটেড কলগুলোকে ঠিক সেভাবেই পরিচালনা করে, যেভাবে এটি আসল কল পরিচালনা করে। এমুলেটরটি কলের অডিও সমর্থন করে না।
gsm {call|accept|cancel|busy} phonenumber gsm প্যারামিটারগুলো নিম্নরূপ:
  • call : phonenumber থেকে একটি ইনকামিং ফোন কলের অনুকরণ করে।
  • accept : phonenumber থেকে আসা একটি ইনকামিং কল গ্রহণ করে এবং কলের অবস্থা active পরিবর্তন করে। আপনি শুধুমাত্র তখনই একটি কলের অবস্থা active করতে পারবেন যখন সেটির বর্তমান অবস্থা waiting বা held থাকে।
  • cancel : ফোন নম্বর থেকে আসা বা phonenumber করা ফোন কল বন্ধ করে দেয়।
  • busy : phonenumber আসা আউটবাউন্ড কলটি বন্ধ করে এবং কলের অবস্থা busy -এ পরিবর্তন করে। আপনি শুধুমাত্র তখনই একটি কলের অবস্থা busy -এ পরিবর্তন করতে পারবেন যখন সেটির বর্তমান অবস্থা waiting থাকে।
gsm {data|voice} state data state কমান্ডটি GPRS ডেটা সংযোগের অবস্থা পরিবর্তন করে এবং data voice state কমান্ডটি GPRS ভয়েস সংযোগের অবস্থা পরিবর্তন করে, যা নিম্নরূপ:
  • unregistered : কোনো নেটওয়ার্ক উপলব্ধ নেই।
  • home : স্থানীয় নেটওয়ার্কে, নন-রোমিং।
  • roaming : রোমিং নেটওয়ার্কে আছে।
  • searching : নেটওয়ার্ক অনুসন্ধান করা হচ্ছে।
  • denied : শুধুমাত্র জরুরি কলের জন্য।
  • off : unregistered এর অনুরূপ।
  • on : home মতোই।
gsm hold একটি কলের অবস্থা hold -এ পরিবর্তন করে। আপনি শুধুমাত্র তখনই একটি কলের অবস্থা hold -এ পরিবর্তন করতে পারবেন, যখন সেটির বর্তমান অবস্থা active বা waiting থাকে।
gsm list সমস্ত ইনকামিং ও আউটবাউন্ড কল এবং তাদের অবস্থা তালিকাভুক্ত করে।
gsm status বর্তমান জিএসএম ভয়েস/ডেটা অবস্থা প্রতিবেদন করে। মানগুলো voice এবং data কমান্ডের জন্য বর্ণিত মানগুলোর অনুরূপ।
gsm signal {rssi|ber} আপডেটের পরবর্তী ১৫ সেকেন্ডে রিপোর্ট করা সিগন্যাল স্ট্রেংথ (RSSI) এবং বিট এরর রেট (BER) পরিবর্তন করে। নিম্নলিখিত তালিকায় প্যারামিটার এবং তাদের মান বর্ণনা করা হয়েছে:
  • rssi পরিসীমা ০ থেকে ৩১ এবং অজানা মানের জন্য ৯৯।
  • ber পরিসর ০ থেকে ৭ এবং অজানা মানের জন্য ৯৯।
gsm signal-profile num সিগন্যাল শক্তির প্রোফাইল নির্ধারণ করে। num হলো ০ থেকে ৪ পর্যন্ত একটি সংখ্যা।
cdma ssource source বর্তমান সিডিএমএ সাবস্ক্রিপশন উৎস নির্ধারণ করে, যেখানে source হলো একটি নেটওয়ার্ক-ভিত্তিক অনুমোদিত তালিকা যা সিডিএমএ ক্যারিয়ারের গ্রাহক এবং তাদের মান ধারণ করে, নিম্নরূপ:
  • nv: নন-ভোলাটাইল র‍্যাম থেকে সাবস্ক্রিপশন রিড করে।
  • ruim: রিমুভেবল ইউজার আইডেন্টিটি মডিউল (RUIM) থেকে সাবস্ক্রিপশন পড়ে।
cdma prl_version version বর্তমান পছন্দের রোমিং তালিকার (পিআরএল) সংস্করণটি প্রদর্শন করে। এই সংস্করণ নম্বরটি পিআরএল ডাটাবেসের জন্য, যেখানে সিস্টেম নির্বাচন এবং অধিগ্রহণ প্রক্রিয়ার সময় ব্যবহৃত তথ্য থাকে।
এমুলেটরে সেন্সরগুলি পরিচালনা করুন বর্ণনা
এই কমান্ডগুলো AVD-তে কোন সেন্সরগুলো উপলব্ধ আছে তার সাথে সম্পর্কিত। sensor কমান্ড ব্যবহার করা ছাড়াও, আপনি এমুলেটরের ভার্চুয়াল সেন্সর স্ক্রিনের অ্যাক্সেলেরোমিটার এবং অতিরিক্ত সেন্সর ট্যাবে সেটিংসগুলো দেখতে ও সামঞ্জস্য করতে পারেন।
sensor status সমস্ত সেন্সর এবং তাদের অবস্থা তালিকাভুক্ত করে। নিচে sensor status কমান্ডের একটি উদাহরণ আউটপুট দেওয়া হলো:
sensor get sensor-name sensor-name এর সেটিংসগুলো পায়। নিচের উদাহরণটি অ্যাক্সিলারেশন সেন্সরের মানটি পায়:
sensor get acceleration
acceleration = 2.23517e-07:9.77631:0.812348

কোলন (:) দ্বারা পৃথক করা acceleration মানগুলো ভার্চুয়াল সেন্সরগুলোর x, y, এবং z স্থানাঙ্ককে নির্দেশ করে।

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 একটি অনুকৃত ইনকামিং এসএমএস তৈরি করে। নিম্নলিখিত তালিকায় প্যারামিটার এবং তাদের মান বর্ণনা করা হয়েছে:
  • sender-phone-number : এতে যেকোনো সংখ্যাসূচক স্ট্রিং থাকে।
  • textmessage : এসএমএস বার্তা।

নিম্নলিখিত উদাহরণটি 4085555555 ফোন নম্বরে "hi there" বার্তাটি পাঠায়:

sms send 4085555555 hi there

কনসোলটি এসএমএস বার্তাটি অ্যান্ড্রয়েড ফ্রেমওয়ার্কে ফরোয়ার্ড করে, যা সেটিকে এমুলেটরের কোনো এসএমএস পরিচালনাকারী অ্যাপে, যেমন মেসেজেস অ্যাপে, পাঠিয়ে দেয়। আপনি যদি ১০টি সংখ্যা দেন, অ্যাপটি সেটিকে একটি ফোন নম্বর হিসেবে ফরম্যাট করে। এর চেয়ে দীর্ঘ বা সংক্ষিপ্ত সাংখ্যিক স্ট্রিংগুলো আপনি যেভাবে পাঠিয়েছেন সেভাবেই প্রদর্শিত হয়।

আঙুলের ছাপ সিমুলেশন বর্ণনা
finger touch fingerprint-id সেন্সরে আঙুল স্পর্শ করার অনুভূতি অনুকরণ করে।
finger remove আঙুল সরানোর অনুকরণ করে।

এই কমান্ডগুলো কীভাবে ব্যবহার করতে হয়, সে সম্পর্কে নির্দেশাবলীর জন্য ফিঙ্গারপ্রিন্ট সিমুলেশন ও ভ্যালিডেশন সম্পর্কিত নিম্নলিখিত বিভাগটি দেখুন।

আঙুলের ছাপের সিমুলেশন এবং যাচাইকরণ

চিত্র ১. আঙুলের ছাপ দিয়ে যাচাইকরণ স্ক্রিন।

আপনার অ্যাপের জন্য ফিঙ্গারপ্রিন্ট অথেন্টিকেশন সিমুলেট এবং ভ্যালিডেট করতে finger কমান্ডটি ব্যবহার করুন। এর জন্য আপনার এসডিকে টুলস ২৪.৩ বা তার উচ্চতর সংস্করণ এবং অ্যান্ড্রয়েড ৬.০ (এপিআই লেভেল ২৩) বা তার উচ্চতর সংস্করণ প্রয়োজন।

ফিঙ্গারপ্রিন্ট অথেন্টিকেশন সিমুলেট ও ​​ভ্যালিডেট করতে এই ধাপগুলো অনুসরণ করুন:

  1. আপনার যদি এখনও ফিঙ্গারপ্রিন্ট আইডি না থাকে, তাহলে সেটিংস > নিরাপত্তা > ফিঙ্গারপ্রিন্ট নির্বাচন করে এমুলেটরে একটি নতুন ফিঙ্গারপ্রিন্ট নথিভুক্ত করুন এবং নথিভুক্তকরণের নির্দেশাবলী অনুসরণ করুন।
  2. ফিঙ্গারপ্রিন্ট প্রমাণীকরণ গ্রহণ করার জন্য আপনার অ্যাপটি সেট আপ করুন। এই সেটআপটি সম্পন্ন করার পর, আপনার ডিভাইসটি ফিঙ্গারপ্রিন্ট প্রমাণীকরণ স্ক্রিনটি প্রদর্শন করবে।
  3. আপনার অ্যাপে ফিঙ্গারপ্রিন্ট অথেন্টিকেশন স্ক্রিনটি প্রদর্শিত হওয়ার সময়, কনসোলে গিয়ে ‘ finger touch কমান্ড এবং আপনার তৈরি করা ফিঙ্গারপ্রিন্ট আইডিটি প্রবেশ করান। এটি একটি আঙুলের স্পর্শকে অনুকরণ করে।
  4. এরপর, আঙুল সরানোর প্রক্রিয়াটি অনুকরণ করতে finger remove কমান্ডটি প্রবেশ করান।

    আপনার অ্যাপটি এমনভাবে সাড়া দেবে, যেন ব্যবহারকারী ফিঙ্গারপ্রিন্ট সেন্সরে আঙুল স্পর্শ করে আবার সরিয়ে নিয়েছেন।