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