IShellEnabledDevice

public interface IShellEnabledDevice

com.android.ddmlib.IShellEnabledDevice


একটি বিমূর্ত ডিভাইস যা শেল কমান্ড গ্রহণ করতে পারে।

সারসংক্ষেপ

জনসাধারণের পদ্ধতি

abstract void executeShellCommand (String command, IShellOutputReceiver receiver, long maxTimeout, long maxTimeToOutputResponse, TimeUnit maxTimeUnits)

ডিভাইসে একটি শেল কমান্ড কার্যকর করে এবং এর ফলাফল একজন receiver কাছে পাঠায়।

abstract void executeShellCommand (String command, IShellOutputReceiver receiver, long maxTimeToOutputResponse, TimeUnit maxTimeUnits)

ডিভাইসে একটি শেল কমান্ড কার্যকর করে এবং এর ফলাফল একজন receiver কাছে পাঠায়।

abstract String getName ()

এই ডিভাইসটির জন্য একটি সহজবোধ্য নাম প্রদান করে।

abstract ListenableFuture<String> getSystemProperty (String name)

সিস্টেম প্রপার্টির জন্য একটি সম্ভাব্য অ্যাসিঙ্ক্রোনাস কোয়েরি করুন।

জনসাধারণের পদ্ধতি

executeShellCommand

public abstract void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeout, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits)

ডিভাইসে একটি শেল কমান্ড কার্যকর করে এবং এর ফলাফল একজন receiver কাছে পাঠায়।

ডিভাইস থেকে কমান্ড আউটপুটের জন্য অপেক্ষা করার সর্বোচ্চ সময় হিসেবে maxTimeToOutputResponse ব্যবহৃত হয়।
যেকোনো সময়ে, যদি শেল কমান্ডটি maxTimeToOutputResponse চেয়ে বেশি সময় ধরে কোনো আউটপুট না দেয়, তাহলে মেথডটি ShellCommandUnresponsiveException থ্রো করবে।

লগ আউটপুটের মতো কমান্ডের জন্য, maxTimeToOutputResponse এর মান ০ ব্যবহার করা উচিত, যার অর্থ হলো মেথডটি কখনোই কোনো এরর থ্রো করবে না এবং রিসিভারের IShellOutputReceiver.isCancelled() true রিটার্ন না করা পর্যন্ত ব্লক হয়ে থাকবে।

প্যারামিটার
command String : কার্যকর করার জন্য শেল কমান্ড

receiver IShellOutputReceiver : যে IShellOutputReceiver টি শেল কমান্ডের আউটপুট গ্রহণ করবে।

maxTimeout long : কমান্ডটি রিটার্ন করার জন্য সর্বোচ্চ সময়সীমা। ০ মানটির অর্থ হলো কোনো সর্বোচ্চ সময়সীমা প্রযোজ্য হবে না।

maxTimeToOutputResponse long : সর্বোচ্চ সময়কাল, যে সময়ে কমান্ডটি কোনো প্রতিক্রিয়া না দিয়ে থাকতে পারে। ০ মানটির অর্থ হলো, মেথডটি কমান্ডের আউটপুটের জন্য অনির্দিষ্টকাল অপেক্ষা করবে (যতক্ষণ না receiver এক্সিকিউশন বাতিল করে) এবং কখনোই কোনো এরর থ্রো করবে না।

maxTimeUnits TimeUnit : অশূন্য maxTimeout এবং maxTimeToOutputResponse মানগুলির জন্য একক।

নিক্ষেপ
AdbCommandRejectedException যদি adb কমান্ডটি প্রত্যাখ্যান করে।
ShellCommandUnresponsiveException যদি শেল কমান্ডটি maxTimeToOutputResponse অপেক্ষা দীর্ঘ সময় ধরে কোনো আউটপুট না পাঠায়।
TimeoutException কমান্ড পাঠানোর সময় সংযোগে সময়সীমা শেষ হয়ে গেলে।
IOException সংযোগে I/O ত্রুটির ক্ষেত্রে।

আরও দেখুন:

executeShellCommand

public abstract void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits)

ডিভাইসে একটি শেল কমান্ড কার্যকর করে এবং এর ফলাফল একজন receiver কাছে পাঠায়।

ডিভাইস থেকে কমান্ড আউটপুটের জন্য অপেক্ষা করার সর্বোচ্চ সময় হিসেবে maxTimeToOutputResponse ব্যবহৃত হয়।
যেকোনো সময়ে, যদি শেল কমান্ডটি maxTimeToOutputResponse চেয়ে বেশি সময় ধরে কোনো আউটপুট না দেয়, তাহলে মেথডটি ShellCommandUnresponsiveException থ্রো করবে।

লগ আউটপুটের মতো কমান্ডের জন্য, maxTimeToOutputResponse এর মান ০ ব্যবহার করা উচিত, যার অর্থ হলো মেথডটি কখনোই কোনো এরর থ্রো করবে না এবং রিসিভারের IShellOutputReceiver.isCancelled() true রিটার্ন না করা পর্যন্ত ব্লক হয়ে থাকবে।

প্যারামিটার
command String : কার্যকর করার জন্য শেল কমান্ড

receiver IShellOutputReceiver : যে IShellOutputReceiver টি শেল কমান্ডের আউটপুট গ্রহণ করবে।

maxTimeToOutputResponse long : সর্বোচ্চ সময়কাল, যে সময়ে কমান্ডটি কোনো প্রতিক্রিয়া না দিয়ে থাকতে পারে। ০ মানটির অর্থ হলো, মেথডটি কমান্ডের আউটপুটের জন্য অনির্দিষ্টকাল অপেক্ষা করবে (যতক্ষণ না receiver এক্সিকিউশন বাতিল করে) এবং কখনোই কোনো এরর থ্রো করবে না।

maxTimeUnits TimeUnit : maxTimeToOutputResponse অশূন্য মানগুলোর জন্য একক।

নিক্ষেপ
AdbCommandRejectedException যদি adb কমান্ডটি প্রত্যাখ্যান করে।
ShellCommandUnresponsiveException যদি শেল কমান্ডটি maxTimeToOutputResponse অপেক্ষা দীর্ঘ সময় ধরে কোনো আউটপুট না পাঠায়।
TimeoutException কমান্ড পাঠানোর সময় সংযোগে সময়সীমা শেষ হয়ে গেলে।
IOException সংযোগে I/O ত্রুটির ক্ষেত্রে।

আরও দেখুন:

নাম পান

public abstract String getName ()

এই ডিভাইসটির জন্য একটি সহজবোধ্য নাম প্রদান করে। সাধারণত এটি এভিডি-এর জন্য এভিডি নাম এবং ডিভাইসগুলির জন্য প্রস্তুতকারকের নাম, মডেলের নাম ও সিরিয়াল নম্বরের একটি সংমিশ্রণ হয়ে থাকে।

ফেরত
String

getSystemProperty

public abstract ListenableFuture<String> getSystemProperty (String name)

সিস্টেম প্রপার্টির জন্য একটি সম্ভাব্য অ্যাসিঙ্ক্রোনাস কোয়েরি করুন।

প্যারামিটার
name String : যে মানটি ফেরত দেওয়া হবে তার নাম।

ফেরত
ListenableFuture<String> একটি ListenableFuture. null রিটার্ন করতে get