<hizmet>

söz dizimi:
<service android:description="string resource"
         android:directBootAware=["true" | "false"]
         android:enabled=["true" | "false"]
         android:exported=["true" | "false"]
         android:foregroundServiceType=["camera" | "connectedDevice" |
                                        "dataSync" | "health" | "location" |
                                        "mediaPlayback" | "mediaProjection" |
                                        "microphone" | "phoneCall" |
                                        "remoteMessaging" | "shortService" |
                                        "specialUse" | "systemExempted"]
         android:icon="drawable resource"
         android:isolatedProcess=["true" | "false"]
         android:label="string resource"
         android:name="string"
         android:permission="string"
         android:process="string"
         android:stopWithTask=["true" | "false"]>
    ...
</service>
Şunlarda bulunur:
<application>
Şunları içerebilir:
<intent-filter>
<meta-data>
description:
Bir hizmeti (Service alt sınıfı) uygulamanın bileşenlerinden biri olarak beyan eder. Etkinliklerin aksine hizmetlerde görsel kullanıcı arayüzü yoktur. Uzun süre çalışan arka plan işlemleri veya diğer uygulamalar tarafından çağrılabilecek zengin bir iletişim API'si uygulamak için kullanılırlar.

Tüm hizmetler, manifest dosyasında <service> öğeleriyle temsil edilmelidir. Burada tanımlanmayanlar sistem tarafından görülmez ve hiçbir zaman yayınlanmaz.

Not: Android 8.0 (API düzeyi 26) ve sonraki sürümlerde sistem, uygulamanızın arka planda çalışırken yapabileceklerini sınırlandırır. Daha fazla bilgi için arka planda yürütme sınırlarını ve arka planda konum sınırlarını ele alan kılavuzları inceleyin.

özellikleri:
android:description
Hizmeti açıklayan, kullanıcıların okuyabileceği bir dize. Açıklama, kullanıcı arayüzündeki diğer dizelerde olduğu gibi yerelleştirilebilmesi için bir dize kaynağına referans olarak ayarlanır.
android:directBootAware

Hizmetin doğrudan önyükleme bilincine sahip olup olmadığı, yani kullanıcı cihazın kilidini açmadan önce çalışıp çalışamayacağı.

Not: Doğrudan Açılış sırasında uygulamanızdaki bir hizmet yalnızca cihaz korumalı depolama alanında depolanan verilere erişebilir.

Varsayılan değer: "false".

android:enabled
Hizmetin sistem tarafından oluşturulup oluşturulamayacağını belirtir. Mümkünse "true", değilse "false" değerini alır. Varsayılan değer "true"'tür.

<application> öğesinin, hizmetler dahil tüm uygulama bileşenleri için geçerli olan kendi enabled özelliği vardır. Hizmetin etkinleştirilebilmesi için <application> ve <service> özelliklerinin ikisi de "true" olmalıdır (varsayılan olarak ikisi de "true" değerine sahiptir). Bu iki değerden biri "false" ise hizmet devre dışıdır ve örneklenemez.

android:exported
Diğer uygulamaların bileşenlerinin hizmeti çağırıp çağıramayacağı veya hizmetle etkileşimde bulunup bulunamayacağı. Mümkünse "true", mümkün değilse "false" değerini girin. Değer "false" olduğunda yalnızca aynı uygulamanın veya aynı kullanıcı kimliğine sahip uygulamaların bileşenleri hizmeti başlatabilir ya da hizmete bağlanabilir.

Varsayılan değer, hizmetin intent filtreleri içerip içermediğine bağlıdır. Filtre olmaması, yalnızca tam sınıf adı belirtilerek çağrılabileceği anlamına gelir. Diğer kullanıcılar sınıf adını bilmediği için bu, hizmetin yalnızca uygulama içinde kullanılmasını amaçladığını gösterir. Bu durumda varsayılan değer "false" olur. Öte yandan, en az bir filtrenin bulunması hizmetin harici kullanıma yönelik olduğunu ima eder. Bu nedenle varsayılan değer "true" olur.

Bir hizmetin diğer uygulamalara maruz kalmasını sınırlamanın tek yolu bu özellik değildir. Ayrıca, hizmetle etkileşime geçebilecek harici varlıkları sınırlamak için izin de kullanabilirsiniz. permission özelliğine bakın.

android:foregroundServiceType

Hizmetin belirli bir kullanım alanını karşılayan bir ön plan hizmeti olduğunu belirtir. Örneğin, "location" ön plan hizmet türü, bir uygulamanın genellikle cihaz konumuyla ilgili kullanıcı tarafından başlatılan bir işleme devam etmek için cihazın mevcut konumunu aldığını gösterir.

Belirli bir hizmete birden fazla ön plan hizmet türü atayabilirsiniz.

android:icon
Hizmeti temsil eden bir simge. Bu özellik, resim tanımını içeren bir çizilebilir kaynağa referans olarak ayarlanır. Bu ayar belirtilmezse bunun yerine uygulamanın tamamı için belirtilen simge kullanılır. <application> öğesinin icon özelliğine bakın.

Burada veya <application> öğesi tarafından ayarlanan hizmetin simgesi, hizmetin tüm intent filtreleri için varsayılan simgedir. <intent-filter> öğesinin icon özelliğine bakın.

android:isolatedProcess
"true" olarak ayarlanırsa bu hizmet, sistemin geri kalanından izole edilmiş ve kendi izni olmayan özel bir işlem altında çalışır. Bu hizmetle tek iletişim, bağlama ve başlatma işlemleri için Service API üzerinden yapılır.
android:label
Hizmetin kullanıcı tarafından okunabilen adı. Bu özellik ayarlanmazsa bunun yerine uygulamanın tamamı için ayarlanan etiket kullanılır. <application> öğesinin label özelliğine bakın.

Burada veya <application> öğesi tarafından ayarlanan hizmetin etiketi, hizmetin tüm intent filtreleri için varsayılan etikettir. <intent-filter> öğesinin label özelliğine bakın.

Etiket, kullanıcı arayüzündeki diğer dizelerle aynı şekilde yerelleştirilebilmesi için bir dize kaynağına referans olarak ayarlanır. Ancak uygulamayı geliştirirken kolaylık sağlamak için ham dize olarak da ayarlanabilir.

android:name
Hizmeti uygulayan Service alt sınıfının adı. Bu, "com.example.project.RoomService" gibi tam nitelikli bir sınıf adıdır. Ancak kısaltma olarak, adın ilk karakteri noktaysa (ör. ".RoomService") <manifest> öğesinde belirtilen paket adına eklenir.

Uygulamanızı yayınladıktan sonra android:exported="false" ayarını yapmadığınız sürece bu adı değiştirmeyin.

Varsayılan ayar yoktur. Ad belirtilmelidir.

android:permission
Bir tüzel kişinin hizmeti başlatmak veya hizmete bağlamak için ihtiyaç duyduğu iznin adı. startService(), bindService() veya stopService() kimlikli bir arayanın bu izni yoksa yöntem çalışmaz ve Intent nesnesi hizmete teslim edilmez.

Bu özellik ayarlanmazsa hizmet için <application> öğesinin permission özelliği tarafından ayarlanan izin geçerli olur. İki özellik de ayarlanmamışsa hizmet bir izinle korunmaz.

İzinler hakkında daha fazla bilgi için uygulama manifest'ine genel bakış bölümündeki İzinler bölümünü ve Güvenlik yönergeleri'ni inceleyin.

android:process
Hizmetin çalıştığı işlemin adı. Normalde bir uygulamanın tüm bileşenleri, uygulama için oluşturulan varsayılan süreçte çalışır. Uygulama paketiyle aynı ada sahiptir. <application> öğesinin process özelliği, tüm bileşenler için farklı bir varsayılan ayar belirleyebilir. Ancak bir bileşen, kendi process özelliğiyle varsayılan değeri geçersiz kılabilir. Bu sayede uygulamanızı birden fazla sürece dağıtabilirsiniz.

Bu özelliğe atanan ad iki nokta işaretiyle (:) başlıyorsa gerektiğinde uygulamaya özel yeni bir işlem oluşturulur ve hizmet bu işlemde çalışır.

İşlem adı küçük harfle başlıyorsa hizmet, izin verildiği takdirde bu ada sahip genel bir işlemde çalışır. Bu, farklı uygulamalardaki bileşenlerin bir işlemi paylaşmasına olanak tanıyarak kaynak kullanımını azaltır.

android:stopWithTask
"true" olarak ayarlanırsa sistem, kullanıcı uygulamanın sahibi olduğu bir etkinlikte köklenen bir görevi kaldırdığında hizmeti otomatik olarak durdurur. Varsayılan değer: "false".
Ayrıca:
<application>
<activity>
kullanıma sunulduğu sürüm:
API düzeyi 1