ইনক্রিমেন্টালইনস্টলসেশন

public class IncrementalInstallSession
extends Object

java.lang.অবজেক্ট
com.android.incfs.install.Incrementalইনস্টল সেশন


একটি ক্রমবর্ধমান প্যাকেজ ইনস্টলেশন সেশন তৈরি করতে ব্যবহৃত হয় যেখানে ইনস্টল করা APK গুলির ব্লকগুলি পড়ার প্রয়োজন হলে ডিভাইসে স্ট্রিম করা হয়।

ইনক্রিমেন্টাল ইনস্টলেশন ইনক্রিমেন্টাল ফাইলসিস্টেম (IncFs) ব্যবহার করে সম্পূর্ণ APK ডিভাইসে স্ট্রিম করার আগে ইনস্টলেশন সম্পূর্ণ করার অনুমতি দেয়। এই ক্লাসটি ইনক্রিমেন্টাল ইনস্টলেশন শুরু করতে, APK-এর কোন ব্লকগুলি ডিভাইসে স্ট্রিম করার অনুমতি দেওয়া হবে তা নিয়ন্ত্রণ করতে এবং APK ইনস্টলেশন সম্পূর্ণ না হওয়া পর্যন্ত এবং/অথবা সমস্ত ব্লক ডিভাইসে স্ট্রিম না হওয়া পর্যন্ত অপেক্ষা করতে ব্যবহার করা যেতে পারে।

সেশন বন্ধ না হওয়া পর্যন্ত, ইনস্টলেশন ব্যর্থ না হওয়া পর্যন্ত, ডিভাইস সংযোগের সময়সীমা শেষ না হওয়া পর্যন্ত, অথবা ডিভাইস থেকে ব্লক অনুরোধ প্রক্রিয়া করার সময় কোনও ব্যতিক্রম না হওয়া পর্যন্ত ডিভাইসের সংযোগ খোলা থাকে।

এই ক্লাসের ব্যবহারের একটি উদাহরণ হল:

{@code try (IncrementalInstallSession session = new IncrementalInstallSession.Builder()
               .addApk(mTestApk0, mTestSignature0)
               .build()) {
         // Start the session on a separate thread.
         session.start(Executors.newCachedThreadPool(), mockDevice.getFactory());

         // Wait a maximum of 45 seconds for the install to finish.
         session.waitForInstallCompleted(45, TimeUnit.SECONDS);
 }

সারাংশ

নেস্টেড ক্লাস

class IncrementalInstallSession.Builder

পাবলিক পদ্ধতি

void close ()

ডিভাইসের সাথে যোগাযোগ বাতিল করে।

IncrementalInstallSession start (Executor executor, IDeviceConnection.Factory conFactory)

স্ট্রিমিং ইনস্টল সেশন শুরু করে।

void waitForAnyCompletion (long timeout, TimeUnit units)

ডিভাইসে APK ডেটা স্ট্রিম না হওয়া পর্যন্ত অথবা ইনস্টলেশন শেষ না হওয়া পর্যন্ত বর্তমান থ্রেডটিকে ব্লক করে।

void waitForInstallCompleted (long timeout, TimeUnit units)

সমস্ত APK সফলভাবে ইনস্টল না হওয়া পর্যন্ত বর্তমান থ্রেডটিকে ব্লক করে।

void waitForServingCompleted (long timeout, TimeUnit units)

সমস্ত APK ডেটা ডিভাইসে স্ট্রিম না হওয়া পর্যন্ত বর্তমান থ্রেডটিকে ব্লক করে।

পাবলিক পদ্ধতি

বন্ধ

public void close ()

ডিভাইসের সাথে যোগাযোগ বাতিল করে।

শুরু

public IncrementalInstallSession start (Executor executor, 
                IDeviceConnection.Factory conFactory)

স্ট্রিমিং ইনস্টল সেশন শুরু করে।

পরামিতি
executor Executor : ডিভাইস থেকে ব্লক অনুরোধগুলি পরিচালনা শুরু করার জন্য এক্সিকিউটর

conFactory IDeviceConnection.Factory : ডিভাইস সংযোগ কারখানা

রিটার্নস
IncrementalInstallSession

থ্রো
ডিভাইসের সাথে যোগাযোগ করার সময় যদি কোনও ত্রুটি ঘটে

যেকোনো সমাপ্তির জন্য অপেক্ষা করুন

public void waitForAnyCompletion (long timeout, 
                TimeUnit units)

ডিভাইসে APK ডেটা স্ট্রিম না হওয়া পর্যন্ত অথবা ইনস্টলেশন শেষ না হওয়া পর্যন্ত বর্তমান থ্রেডটিকে ব্লক করে।

পরামিতি
timeout long : অপেক্ষা করার সর্বোচ্চ সময়। 0 এর মান এই পদ্ধতিটিকে অনির্দিষ্টকালের জন্য অপেক্ষা করতে বাধ্য করবে।

units TimeUnit : অ-শূন্য timeout জন্য ইউনিট

থ্রো
যদি অপেক্ষার সময় শেষ হয়ে যায়, একটি APK ইনস্টল করা না যায়, অথবা ব্লক অনুরোধগুলি পরিচালনা করার সময় একটি ব্যতিক্রম ঘটে।

ইনস্টল করার জন্য অপেক্ষা করুন সম্পন্ন হয়েছে

public void waitForInstallCompleted (long timeout, 
                TimeUnit units)

সমস্ত APK সফলভাবে ইনস্টল না হওয়া পর্যন্ত বর্তমান থ্রেডটিকে ব্লক করে। ইনস্টল সফল হওয়ার আগে বা পরে ডেটা পরিবেশন শেষ হতে পারে।

পরামিতি
timeout long : ইনস্টলেশন শেষ হতে সর্বোচ্চ অপেক্ষা করার সময়। 0 এর মান এই পদ্ধতিটিকে অনির্দিষ্টকালের জন্য অপেক্ষা করতে বাধ্য করবে।

units TimeUnit : অ-শূন্য timeout জন্য ইউনিট

থ্রো
যদি অপেক্ষার সময় শেষ হয়ে যায়, একটি APK ইনস্টল করা না যায়, অথবা ব্লক অনুরোধগুলি পরিচালনা করার সময় একটি ব্যতিক্রম ঘটে।

waitForServingসম্পূর্ণ

public void waitForServingCompleted (long timeout, 
                TimeUnit units)

সমস্ত APK ডেটা ডিভাইসে স্ট্রিম না হওয়া পর্যন্ত বর্তমান থ্রেডটিকে ব্লক করে। পরিবেশন সম্পন্ন হওয়ার আগে বা পরে ইনস্টলেশন শেষ হতে পারে।

পরামিতি
timeout long : পরিবেশন শেষ হতে সর্বোচ্চ যে পরিমাণ সময় অপেক্ষা করতে হবে। ০ মান থাকলে এই পদ্ধতিটি অনির্দিষ্টকালের জন্য অপেক্ষা করবে।

units TimeUnit : অ-শূন্য timeout জন্য ইউনিট

থ্রো
যদি অপেক্ষার সময় শেষ হয়ে যায়, একটি APK স্ট্রিমিং ব্যর্থ হয়, অথবা ব্লক অনুরোধগুলি পরিচালনা করার সময় একটি ব্যতিক্রম ঘটে।