Zamanın doğru şekilde gösterilmesi, otomotiv bilgi-eğlence sistemlerinden beklenen temel bir özelliktir. Bu durum, özellikle zaman ve saat dilimi yönetimi beklentileri düşük olduğunda ve karşılanması gerektiğinde yanıltıcı bir şekilde basit görünebilir. Ancak manuel müdahale olmadan güvenilir ve doğru bir tarih ve saatin gösterilmesi gerektiğinde zaman yönetimi hızla karmaşık bir hâl alır.
Genellikle çip üzerinde sistemde (SoC) kullanılan tüm gerçek zamanlı saatlerde, zaman içinde biriken ve düzeltilmediğinde önemli hatalara yol açabilen bir sapma bulunur. Ayrıca, yerel saatin doğru şekilde gösterilmesi beklentisi yüksek olduğundan, Eşgüdümlü Evrensel Saat'ten (UTC) doğru saat farkı dikkate alınmalıdır.
Saat dilimi bilgileri ve yaz saati uygulaması, bir aracın beklenen kullanım ömrü boyunca değişebilir. Örneğin, Brezilya yaz saati uygulamasını uzun yıllar boyunca uyguladıktan sonra 2019'da yaz saati uygulaması programına başlamamayı tercih etti.
Android, saat dilimi kuralı yönetiminin karmaşıklıklarını çözmek için gereken altyapıyı sağlar. Ayrıntılar için Saat dilimi kuralları başlıklı makaleyi inceleyin. Bu makalede, OEM'lerin sistem güncellemesi gerektirmeden güncellenmiş saat dilimi kuralları verilerini cihazlara göndermesine olanak tanıyan bilgiler yer almaktadır. Bu mekanizma sayesinde:
- Kullanıcılar, zamanında güncellemeler alır (Android cihazın kullanım ömrünü uzatır).
- OEM'ler, saat dilimi güncellemelerini sistem görüntüsü güncellemelerinden bağımsız olarak test edebilir.
Not: AAOS 10, Android 10 (ve sonraki sürümler) yayınlarında sağlanan APEX tabanlı modül güncelleme mekanizmasını desteklemez.
Not: Bu mekanizmayı uygulamak için sistemin yeniden başlatılması gerekir.
Araçlardaki saat (dilimi) bilgisi kaynakları
Android cihazlar, sistem düzeyinde Unix zamanında saati yönetir, istenen saat dilimi farkını uygular ve ardından değeri kullanıcılara göstermek için yerel saate dönüştürür. Mevcut kullanıcının bölge kimliği (genellikle Olson kimliği olarak adlandırılır) ayar olarak saklanır. Örneğin, Europe/London.
Aşağıda açıklanan mekanizmanın büyük bir kısmı zaman bilgileriyle ilgilidir. Bu standartların amacı, kullanıcılara geçerli saati bildirmek, geçerli saat dilimi kurallarını açıklamak değildir. Gerçek saat dilimini belirlemek için cihaz, bölge kimliğini ayarlamadan önce ülke, saat farkı ve yaz saati uygulaması saat farkı gibi faktörlerden geriye doğru çalışmalıdır.
Bu süreç zorlu olabilir. Mevcut bilgilere göre geriye doğru çalışmak belirsiz olabilir. Örneğin, Amerika/Denver saat dilimi YS'yi uygular ancak yaz aylarında Mountain Daylight Time (MDT) saatine geçerken Amerika/Phoenix saat dilimi MDT'yi tanımaya devam eder.
Hücresel radyo
Sistem bilgisi (SI), Long-Term Evolution (LTE) hava arayüzünün temel bir yönüdür ve temel istasyon (BS) tarafından yayın kontrol kanalı (BCCH) üzerinden iletilir. 3GPP TS 36.331, GPS ve Eşgüdümlü Evrensel Saat (UTC), yerel saat farkı ve yaz saati bilgileriyle ilgili bilgileri içeren SystemInformationBlockType16'yı (SIB16) belirtir.
Benzer işlevler, ağ kimliği ve saat dilimi (NITZ) bilgilerinin yayınlanabildiği 2G ve 3G'de de bulunur (ayrıntılar için 3GPP TS 22.042'ye bakın). Diğer hücresel radyo standartlarında da benzer özellikler bulunur.
Maalesef çoğu standartta bu bilgilerin gönderilmesi isteğe bağlıdır. Bu nedenle, bu bilgiler tüm ağlarda evrensel olarak kullanılamaz.
| Artıları | Eksileri |
|---|---|
|
|
Ağ saati protokolü
Network Time Protocol (NTP), Unix dönemine ait nispeten hassas zaman bilgilerini almak için sıklıkla kullanılır. Android, sistem saatinin RadioManager istemcilerine RadioTuner.getParameters() genel meta verileri aracılığıyla sunulabilmesi durumunda NTP sunucusuyla senkronize edilmesini destekler. NTP, sistem saati senkronizasyon dışı kaldığında ve operatör yakın zamanda NITZ güncellemesi sağlamadığında sistem saatini günceller. Kullanıcı, NITZ kullanılamadığında AUTO_TIME ayarını etkinleştirirse sistem hemen ağ saatini kontrol eder.
| Artıları | Eksileri |
|---|---|
|
Android tarafından desteklenen basitlik. |
|
Yayın radyo alıcısı
Saat ve saat dilimi bilgilerini almak için yerleşik bir tuner kullanmak cazip olsa da bu işlem bazı zorluklar içerir. Çok sayıda radyo yayını standardı, istenen bilgileri gösterme seçeneklerini tanımlar. Genel olarak, yayın radyo alıcısı, hücresel radyo ile aynı bilgileri sağlar.
ETSI EN 300 401 V1.4.1 (2006-06), bölüm 8.1, hem ses programı hem de Dijital Ses Yayıncılığı (DAB) sistemleri için veri hizmetleri hakkında ek bilgiler sağlayan hizmet bilgisi özelliklerini belirtir. Bölüm 8.1.3'te saat ve tarih biçiminin yanı sıra ülke ve yerel saat farkı bilgileri tanımlanmaktadır.
Benzer şekilde, FM tuner'larda yaygın olarak kullanılan Radyo Veri Sistemi (RDS) için EN 50067 standardının 3.1.5.6 bölümünde saat ve veri biçimi (dakikada bir kez iletilir) tanımlanır. Ayrıca, iletilen program kimliğinin bir parçası olarak genişletilmiş ülke kodu (ECC) da alınabilir.
HD Radio, İstasyon Bilgisi Hizmeti (SIS) Parametre Mesajı'ndaki (MSG ID 0111) HD Radio™ Air Interface Design Description Station Information Service Transport spesifikasyonunun bir parçası olarak ilgili seçenekleri içerir. 5. bölümde, yayının saat desteğini kullanmaya çalışırken dikkat edilmesi gereken uyarı sözleri açıkça belirtilmiştir. Aynı durum diğer sistemler için de geçerlidir:
| ... bu veriler, yayıncının bulunduğu yerdeki yerel gelenekleri açıklar. Bu gelenekler, alıcının bulunduğu yerdeki yerel geleneklerle aynı olabilir veya olmayabilir. Saat dilimi sınırlarına yakın yerlerde tüketiciler, farklı veriler sağlayan birden fazla istasyon alabilir. Bu nedenle, bu veriler yalnızca ipucu olarak sağlanır. Yorumlanması ve kullanılması, müşterinin kontrolüne tabi olarak isteğe bağlı olmalıdır. ..." |
Ayrıca, en azından HD Radyo için bu bilgilerin yayını isteğe bağlıdır ve yalnızca bu bilgilere güvenilmemelidir.
Avantajlar Dezavantajlar- Genellikle farklı bölgesel yayın radyo standartlarında kullanılabilir.
- İnternet bağlantısı gerekmez.
- Android bu özelliği kutudan çıktığı haliyle desteklemez.
- Bilgilerin güvenilir bir şekilde algılanması için radyo alıcısının (en azından ara sıra arka planda) açık olması gerekir.
-
Güvenilirlik, yayıncıya bağlıdır.
Uygulama ipuçları
Android, sistem saatininRadioManager istemcilerine sunulabiliyorsa NTP sunucusunun saatiyle senkronize edilmesini destekler. Önerilen çözüm, tedarikçi uzantısı özelliğinden yararlanmaktır.
Bu işlevselliğin uygulanması donanım soyutlama katmanında (HAL) gerçekleşmelidir. Ardından, genel RadioTuner.getParameters() yöntemiyle RadioManager istemcilerine sunulabilir.
Çözümün sağlamlığını korumak için bu tedarikçi uzantısının tüketicisi, HAL'nin özelliği desteklediğini belirlemelidir (özelliğin var olduğu varsayılmamalıdır). getParameters çağrısı için parametre dizeleri, sağlayıcılar arasında net bir şekilde kullanılabilmesi için düzenli bir şekilde organize edilmelidir. Örneğin, kuruluşunuzun ad alanını uygun alan adıyla önekleyerek kullanabilirsiniz (ör. com.me.timezoneTuner.currenttimezone).
Bilgilerin etkinliğe dayalı yapısı göz önüne alındığında, bu bilgileri almak için RadioTuner.Callback.onParametersUpdated() geri çağırmasını kullanmak faydalı olabilir. Bu tesisin yapılandırılabilir olması gerekiyorsa setParameters üzerinde bir dizi özel rutin tasarlayın. Örneğin:
com.me.timezoneTuner.currenttimezoneEvent.enable
Küresel Navigasyon Uydu Sistemi
Küresel Navigasyon Uydu Sistemi (GNSS) tek başına yalnızca doğru zaman bilgisi ve konum sağlayabilir.
Coğrafi konum
Bu sorunu çözmek için ters coğrafi kodlama yapın ve konuma göre arama yaparak ülkeyi ve saat dilimini belirleyin. GNSS, araçtaki konum bilgileri için açıkça en iyi (ve en kaliteli) seçenektir. Google'ın Saat Dilimi API'si, gerekli dönüşümü çalıştırmak için gereken her şeyi sunar. Elbette internet bağlantısı gereklidir. Bir online çözüm uygularken kullanıcı gizliliğini sağlamak en önemli öncelik olmalıdır. Kullanıcının veri kullanımı maliyetlerini kabul etme (veya etmeme) izni gereklidir ve istenmelidir.
Çevrimdışı kullanım için uygun bir çözüm oluşturmak mümkündür. Ülkeyi ve saat dilimini doğru bir şekilde belirlemek için yeterli çözünürlüğe sahip yerel bir harita veritabanı, aracın depolama alanına sığabilir. Bu ve saat dilimi (ve ülke) bilgilerini gerektiğinde güncellemek için tam olarak uygulanmış bir stratejiyle birlikte, konum alt sisteminden elde edilen GNSS konumuna göre ülke/saat dilimi ters coğrafi kodlaması yapılabilir.
| Artıları | Eksileri |
|---|---|
|
|
Bluetooth, kablosuz ağ veya USB üzerinden bağlanan telefon
Kullanıcının telefonundan saat ve saat dilimi verileri almak için çeşitli teknolojiler kullanılabilir. Tüm telefonlarda, telefona ve araç içi bilgi-eğlence (IVI) sistemine özel bir uygulama ve yardımcı uygulamalar yüklenmelidir. Ardından, zamanı istediğiniz aralıkta senkronize edebilirsiniz. Örneğin, bağlantı kurulduktan sonra ve telefon yeni bir saat dilimi algıladığında.
Bluetooth Düşük Enerji'yi (BDE) destekleyen bazı telefonlar, GATT Current Time özelliği ve Current Time Service Profile Specification 1.1 aracılığıyla saati alma seçeneği sunar. Ancak bu seçenek, yalnızca kendisine güvenilecek kadar büyük bir pazar segmentine hitap etmez.
| Artıları | Eksileri |
|---|---|
|
|
Kaynakları kullanma
Her cihaz tedarikçisi, hangi kullanıcı yolculuklarını en kritik olarak değerlendireceğini ve hangi eşiği belirleyeceğini belirlemelidir. En iyi karara ancak istenen kritik kullanıcı deneyimleri net bir şekilde anlaşıldığında varılabilir. Çoğu durumda, satıcılar kolaylık ile uygulama karmaşıklığı arasındaki dengeyi göz önünde bulundurmalıdır.
Yukarıda açıklanan her seçeneğin avantajları ve dezavantajları vardır. Örneğin, ara sıra kötü zaman gösterimine kıyasla ne kadar esnekliğin kabul edilebilir olduğu ve dezavantajların nasıl yönetileceği konusunda kritik bir tasarım tercihi yapılmalıdır. Tüm senaryolarda iyi çalışması beklenen ancak çeşitli bilgi kaynaklarının bir kombinasyonuna dayanması gereken tamamen otomatik bir çözüm. Hiçbir seçenek% 100 kullanılabilirlik sağlamaz.
Geçici bir yedek olarak manuel yapılandırma seçeneğinin uygulanması kolaydır ve pratikte birçok kullanıcı için yeterli olabilir.