Android 12 থেকে শুরু করে, Android ঐচ্ছিকভাবে টাইম ডিটেক্টর পরিষেবাকে Unix এপক টাইম সাজেস্ট করার জন্য সময়ের এক্সটার্নাল সোর্স ব্যবহার করতে পারে। AOSP-তে এটি ডিফল্ট হিসেবে চালু করা থাকে না।
এক্সটার্নাল টাইম অরিজিন আপনাকে Android-এ সম্পূর্ণ কাস্টম টাইম সাজেশন
প্রদান করতে দেয়। এক্সটার্নাল টাইম অরিজিন থেকে সাজেশন পাওয়ার পরে,
time_detector পরিষেবা, কনফিগার করা অটোমেটিক টাইম প্রায়োরিটাইজেশন নিয়ম-এর উপর ভিত্তি করে
সিস্টেম ক্লক আপডেট করা হবে কিনা তা নির্ধারণ করে।
প্রয়োগ
এক্সটার্নাল টাইম ডিটেকশন কাজ করানোর জন্য, আপনাকে এমন একটি কম্পোনেন্ট প্রয়োগ করতে হবে যা
সিস্টেম API
কলের মাধ্যমে time_detector পরিষেবায় এক্সটার্নাল টাইম সাজেশন জমা দেয়।
এক্সটার্নাল অরিজিন কনফিগার করতে, core/res/res/values/config.xml
সিস্টেম সার্ভার কনফিগারেশন ফাইল ব্যবহার করুন। config_autoTimeSourcesPriority-এ external মানটি যোগ করুন।
নিচের উদাহরণটি Android-কে সিস্টেম ক্লক সেট করার সময় এক্সটার্নাল টাইম সাজেশনকে
সর্বোচ্চ অগ্রাধিকার দিতে বলে। যদি কোনও বৈধ এক্সটার্নাল
টাইম সাজেশন উপলভ্য না থাকে, তাহলে পরবর্তী অরিজিন, gnss এই ক্ষেত্রে, ব্যবহার করা হয়:
<string-array name="config_autoTimeSourcesPriority">
<item>external</item>
<item>gnss</item>
</string-array>
সিস্টেমকে এক্সটার্নাল টাইম সাজেশন দিতে, TimeManager-এ
suggestExternalTime পদ্ধতি ব্যবহার করুন। কনফিগারেশন ফাইলে config_autoTimeSourcesPriority ব্যবহার করে এক্সটার্নাল সোর্স কনফিগার করা হলে এবং
আরও বেশি অগ্রাধিকারের সময় সংক্রান্ত সাজেশন উপলভ্য না থাকলে, বর্তমান Unix epoch সময় সেট করার জন্য
এই পদ্ধতিতে পাস করা টাইমস্ট্যাম্প Android ব্যবহার করে।