Android 10-এ, ফোন অ্যাকাউন্ট সাজেশন পরিষেবা কল করার সময় ব্যবহারকারীদের ফোন অ্যাকাউন্টের সাজেশন দেখানোর অনুমতি দেয়। যেমন, কোনও ব্যবহারকারীর ডিভাইসে একাধিক সিম থাকলে এবং ইন্ট্রা-নেটওয়ার্ক কলের জন্য কম রেট থাকলে, এই পরিষেবা প্রথমে যাকে কল করা হচ্ছে তার ক্যারিয়ার শনাক্ত করে এবং তারপর যাকে কল করা হচ্ছে তার নেটওয়ার্কের সিম ব্যবহার করার সাজেশন দেয়।
ফোন অ্যাকাউন্ট সাজেশন পরিষেবাটি ঐচ্ছিক এবং Android 10 বা তার পরবর্তী যেকোনও ভার্সনে রান করা ডিভাইসে এটি প্রয়োগ করা যেতে পারে।
প্রয়োগ
ফোন অ্যাকাউন্ট সংক্রান্ত সাজেশন প্রয়োগ করতে, একটি
PhoneAccountSuggestionService
অ্যাপে পরিষেবা প্রয়োগ করুন যেটি /system/priv-app/-এ অবস্থিত। একাধিক PhoneAccountSuggestionServiceপ্রয়োগ করা হলে পরিষেবাটি
কোয়েরি করা হয় না। সার্ভিসকে
android.Manifest.permission.BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE অনুমতি
ঘোষণা করতে হবে।
কোনও ব্যবহারকারী আউটগোয়িং কল করলে, যেখানে কল প্রাপকের জন্য
ডিফল্ট আউটগোয়িং ফোন অ্যাকাউন্ট
বা
পছন্দের ফোন অ্যাকাউন্ট
সেট করা নেই, সেক্ষেত্রে টেলিকম পরিষেবা
PhoneAccountSuggestionService-এর সাথে বাইন্ড করে অ্যাকাউন্ট সম্পর্কে তথ্য সংগ্রহ করে, onAccountSuggestionRequest(String number)
কল করা হয় এবং আউটগোয়িং কল প্রসেস সাসপেন্ড করা হয়।
PhoneAccountSuggestionService-কে
suggestPhoneAccounts(String number, List<PhoneAccountSuggestion> suggestions)
নম্বর থেকে কল করতে হবে যেটি
onAccountSuggestionRequest(String number)-এর মাধ্যমে ফেরত পাঠানো হয়েছে।
suggestPhoneAccounts(String number, List<PhoneAccountSuggestion> suggestions)
কল করা হলে, টেলিকম পরিষেবা সাজেস্ট করা ফোন অ্যাকাউন্টের একটি তালিকা রিটার্ন করে। তারপরে, ডায়লারকে অবশ্যই ব্যবহারকারীর জন্য সাজেস্ট করা ফোন অ্যাকাউন্টের তালিকা দেখাতে হবে, যাতে কল করার জন্য
সেখান থেকে কোনও একটি বেছে নিতে পারেন।
PhoneAccountSuggestion
সাজেশন দিতে, PhoneAccountSuggestion
ক্লাস ব্যবহার করুন।
যেমন, পরিষেবা যদি নির্ধারণ করে যে কল যাকে করা হচ্ছে তিনি ডিভাইসে থাকা কোনও একটি সিম কার্ডের
পরিষেবা প্রদানকারীর গ্রাহক, তাহলে পরিষেবাটি ফোন অ্যাকাউন্টে
REASON_INTRA_CARRIER চিহ্নটি যোগ করবে।
এই তথ্য ডায়ালারে ব্যবহারকারীকে জানানো যেতে পারে।
যেমন, কোনও পরিস্থিতিতে ব্যবহারকারী যদি তার ডিভাইসে এমনভাবে কনফিগার করেন যাতে
অফিসের Google অ্যাকাউন্টে
সব পরিচিতির জন্য অফিসের সিম ব্যবহার করা হয়, তাহলে পরিষেবাটি ফোন অ্যাকাউন্টকে
REASON_USER_SET
হিসেবে চিহ্নিত করবে এবং
shouldAutoSelect
সত্য হিসেবে সেট করবে যাতে ডায়ালার বেছে নেওয়ার ডায়ালগ বাইপাস করতে পারে এবং অটোমেটিক
ফোন অ্যাকাউন্ট ব্যবহার করে কল করতে পারে।
অন্যান্য সাজেশন সম্পর্কে তথ্য পেতে, PhoneAccountSuggestion দেখুন।
Dialer
কলটি
STATE_SELECT_PHONE_ACCOUNT
স্টেটে প্রবেশ করলে, ডায়লারকে
EXTRA_SUGGESTED_PHONE_ACCOUNTSম্যানেজ করার জন্য
PhoneAccountSuggestion
থেকে পাওয়া তথ্য ব্যবহার করতে হবে।
পরিষেবা বন্ধ করুন
নির্দিষ্ট পরিষেবা প্রদানকারীর জন্য আপনার ইমপ্লিমেন্টেশন কাস্টমাইজ করতে, আপনি
setComponentEnabledSetting ব্যবহার করে পরিষেবা চালু বা
বন্ধ করতে পারেন।
বন্ধ করা থাকলে পরিষেবা কোয়েরি করা হয় না।
সিস্টেম UI প্রয়োগ করা
আপনার ইমপ্লিমেন্টেশনের উপর নির্ভর করে, সিস্টেম UI-তে পরিবর্তন করার প্রয়োজন হতে পারে। যেমন, ব্যবহারকারীদের কোনও নির্দিষ্ট পরিচিতিতে করা সব কল কোনও নির্দিষ্ট ফোন অ্যাকাউন্ট থেকে করা হয়েছে তা উল্লেখ করার অনুমতি দিতে, আপনাকে ডিভাইসের জন্য একটি কাস্টমাইজ করা সেট-আপ ফ্লো এবং সেটিংস UI প্রয়োগ করতে হবে।
যাচাইকরণ
আপনার প্রয়োগ করা পদ্ধতি সঠিক কিনা তা যাচাই করতে, নিম্নলিখিত CTS পরীক্ষা চালান: