Hizmet paketi adları bir hiyerarşi içinde tanımlanır.
Her VM (VM adı ile tanımlanır), SDV Core profil işletim sisteminin tek bir dağıtımıdır.
Her paket (paket adıyla tanımlanır) birden fazla hizmet paketi içerebilir.
Her hizmet paketi (hizmet paketi adıyla tanımlanır) aynı sanal makinede birden çok kez oluşturulabilir.
Her hizmet paketi örneği, yükleme sırasında atanan bir hizmet paketi örneği adı ile tanımlanır.
SDV sanal makine adı
VM adı, Vehicle VM Config (vvmconfig) dosyasında belirtildiği gibi, SDV Core profilinin her dağıtımına eklenen benzersiz bir ad tanımlayıcısıdır. Sanal makine adı, bir araçtaki sanal makine sınırları boyunca hizmetlerin mantıksal olarak ayrılması için adlandırmada kullanılır. Örnekler:
cdcmechatronicspcutelematics-unit
Aşağıdaki adlandırma kısıtlamaları geçerlidir.
- Sanal makine adı bir harfle başlamalıdır.
[a-z] - Sanal makine adı kısa çizgiyle bitmemelidir
- Sanal makine adı 31 karakteri aşmamalıdır.
- Tüm karakterler küçük harfli alfanümerik veya tire
[a-z0-9\-]olmalıdır. - Addaki kısa çizgiler art arda birden fazla kez görünmemelidir.
Derleme süresi (statik analiz) ve vvmconfig yüklendiğinde sistem başlatma sırasında VM adının benzersiz olduğu doğrulanır.
Önyükleme sırasında doğrulama başarısız olduğunda önyükleme düzeyinde bir hata oluşur.
SDV paketi adı
SDV paket adı, standart Android'e benzer şekilde sisteme dağıtılan bir paketi benzersiz olarak tanımlar. Her paket adı için benzersiz bir APEX sağlanmalıdır. Örneğin:
com.android.sdv.datatunnelcom.android.sdv.sample.datatunnelcom.yourcompany.sdv.adas
Aşağıdaki kısıtlamalar geçerlidir:
- İş ortağına ait tüm SDV APEX'leri
com.<companyname>.sdv.ile başlamalıdır (com.android.sdv., Google'a ait SDV APEX'leri için ayrılmıştır). - Tüm karakterler alfanümerik veya alt çizgi (
[a-z0-9_]) olmalıdır. - Paket adı, noktayla ayrılmış en az dört segment içermelidir.
- Paket adı nokta ile bitemez.
- Paket adı 127 karakteri geçmemelidir.
- Her segment bir harfle başlamalıdır.
- Hiçbir segmentte ardışık alt çizgi (
__) bulunamaz. - Hiçbir segment alt çizgiyle bitemez,
_. - Segmentler boş olmamalıdır (ardışık nokta olmamalıdır).
Hizmet paketi adı
Standart Android'e benzer şekilde, her hizmet paketi, ait olduğu paket adında ad alanı oluşturulmuş, insanlar tarafından okunabilir bir ada sahiptir. Örneğin:
SomeServiceImportantService
Aşağıdaki adlandırma kısıtlamaları geçerlidir:
- Hizmet paketi adı BÜYÜK HARFLE başlamalıdır.
- Hizmet paketi adı BOŞ BIRAKILAMAZ
- Hizmet paketi adı 47 karakteri AŞMAMALIDIR.
- Hizmet paketi adı, art arda alt çizgi içermemelidir.
__ - Hizmet paketi adı alt çizgiyle başlamamalı veya bitmemelidir.
_ - Tüm karakterler alfanümerik veya alt çizgi olmalıdır.
[A-Za-z0-9_]
Hizmet paketi örneği adı
AAOS SDV'deki hizmet paketleri, standart Android uygulamalarından farklı olarak aynı sanal makineye birden çok kez yüklenebilir ve yüklenebilir. Sonuç olarak, aynı hizmet paketinin aynı AAOS SDV VM'sinde birden fazla örneği çalışabilir. Bu örneklere, kullanıcılar tarafından okunabilen bir hizmet paketi örneği adı atanır. Örneğin:
front-leftfront-rightmainclientsubscriber
Aşağıdaki kısıtlamalar geçerlidir:
Örnek adı:
- Harfle başlayın
[a-z] - Kısa çizgiyle bitmemelidir.
- 47 karakteri aşmamalıdır.
- Aynı hizmet için aynı sanal makinede benzersiz olmalıdır.
- Harfle başlayın
Tüm karakterler küçük harfli alfanümerik veya tire
[a-z0-9\-]olmalıdır.Kısa çizgiler art arda görünmemelidir.
Her hizmet örneğinin benzersiz bir örnek adı olmalıdır (hizmet başlatıldığında sağlanır veya oluşturulur).
Tam nitelikli hizmet paketi örneği adı (FQIN)
SDV VM adı, paket adı, hizmet paketi adı ve hizmet paketi örneği adı, tam nitelikli hizmet paketi örneği adı (FQIN) olarak birleştirilir. Bu ad, hizmet paketi örneğini araç genelinde benzersiz şekilde tanımlar.
Birkaç örnek:
cdc:com.android.sdv.datatunnel.SomeService/instance1cdc:com.android.sdv.datatunnel.SomeService/instance2mechatronics:com.yourcompany.sdv.adas.TirePressure/front-leftmechatronics:com.yourcompany.sdv.adas.TirePressure/front-rightmechatronics:com.yourcompany.sdv.adas.TirePressure/rear-rightpcu:com.android.sdv.cluster.InfoProvider/acceleration
Farklı paketlerdeki hizmet paketleri aynı hizmet paketi adına sahip olabilir. Örneğin, aynı SDV VM'de (mechatronics) dağıtılan bu iki hizmet paketi (ilgili FQIN'leriyle tanımlanır) TirePressure hizmet paketi adına sahiptir:
mechatronics:com.yourcompany1.sdv.adas.TirePressure/defaultmechatronics:com.yourcompany2.sdv.adas.TirePressure/default
Bu örnekte, iki hizmet paketi farklı paketlerde (biri com.yourcompany1.sdv.adas, diğeri com.yourcompany2.sdv.adas) olduğundan ad çakışması oluşmaz.
Konu adı
Konular, belirli bir mesaj türü için araç genelinde benzersiz olan dizelerle tanımlanır.
Örnek konu adları:
left-tirefront-windowengine-coolant-temp
Kısıtlamalar:
- Alfanümerik veya kısa çizgi (
[a-z0-9\-]) olmalıdır. - Harfle başlamalıdır.
- 127 karakteri aşmamalıdır.
Kanal adı
Kanallar, bir ad dizesiyle tanımlanır.
Örnek kanal adları:
main-controlhigh-prioritybackground
Kısıtlamalar:
- Alfanümerik veya kısa çizgi (
[a-z0-9\-]) olmalıdır. - Harfle başlamalıdır.
- 127 karakteri aşmamalıdır.
Servis birimi adı
Hizmet paketi geliştiriciler öncelikli olarak konular ve kanallarla etkileşim kurar. Hizmet birimi adları temel bir uygulama ayrıntısıdır ve öncelikle dumpsys gibi hata ayıklama araçları kullanılırken karşılaşılır.
SDV Hizmet Keşfi'ne kaydedilen hizmet birimlerinin hizmet birimi adı sağlaması gerekir. Bu hizmet birimi adı, hizmet keşfi sırasında kullanılabilir. Aşağıdaki örneklerde FQIN'lere sahip hizmet birimi adları gösterilmektedir:
( cdc:com.android.sdv.adas.Service1/default-inst , tp-provider )( cdc:com.yourcompany.sdv.adas.TirePressure/instance1 , tp-provider-1 )( mech:com.yourcompany.sdv.adas.TirePressure/instance2 , tp-instance )
Birim türü adları
Birim türü adları, Protobuf türü adlarına (tam nitelikli) eşittir. Örneğin:
com.android.sdv.datatunnel.IComponentHandlercom.android.sdv.datatunnel.IComponentHandlercom.yourcompany.sdv.adas.TirePressurecom.android.sdv.cluster.IWheelInfoCallbackcom.android.sdv.cluster.ISeatAlignmentCallback
Özet
Adlandırma koşulları aşağıdaki tabloda özetlenmiştir:
| Öğe | Sınır | İzin verilen karakterler | Destek kaydı türü |
|---|---|---|---|
| FQIN | 256 karakter | VM adı, paket adı, hizmet paketi adı ve hizmet paketi örneği adından oluşur. | Küçük harf |
| SDV sanal makine adı | 30 karakter |
|
Küçük harf |
| SDV paketi adı | 127 karakter |
|
Küçük harf |
| Hizmet paketi adı | 30 karakter |
|
Büyük/küçük harf karışımı |
| Hizmet paketi örneği adı | 48 karakter |
|
Küçük harf |
| Konu adı | 127 karakter |
|
Küçük harf |
| Kanal adı | 127 karakter |
|
Küçük harf |
| Servis birimi adı | 48 karakter |
|
Küçük harf |