- 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:intentMatchingFlags=["none" | "enforceIntentFilter" | "allowNullAction"] android:isolatedProcess=["true" | "false"] android:label="string resource" android:name="string" android:permission="string" android:process="string" android:stopWithTask=["true" | "false"]> ... </service>
- içinde bulunan:
<application>- Şunları içerebilir:
<intent-filter><meta-data><property>- description:
- Bir hizmeti,
Servicealt sınıfını uygulamanın bileşenlerinden biri olarak beyan eder. Etkinliklerin aksine hizmetlerde görsel kullanıcı arayüzü yoktur. Uzun süren arka plan işlemlerini veya diğer uygulamalar tarafından çağrılabilen zengin iletişim API'sini uygulamak için kullanılırlar.Tüm hizmetler, manifest dosyasında
<service>öğeleriyle temsil edilmelidir. Burada beyan edilmeyenler 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ırlar. Daha fazla bilgi için Arka planda yürütme sınırları ve Arka planda konum sınırları ile ilgili kılavuzlara bakın.
- özellikleri:
android:description- Hizmeti açıklayan, kullanıcı tarafından okunabilir bir dize. Açıklama, kullanıcı arayüzündeki diğer dizeler gibi yerelleştirilebilmesi için dize kaynağına referans olarak ayarlanır.
android:directBootAwareHizmetin doğrudan başlatma uyumlu olup olmadığı, yani kullanıcının cihazın kilidini açmasından önce çalışıp çalışamayacağı.
Not: Doğrudan başlatma sırasında uygulamanızdaki bir hizmet yalnızca cihaz korumalı depolama alanında saklanan verilere erişebilir.
Varsayılan değer
"false"'dır.android:enabled- Hizmetin sistem tarafından oluşturulup oluşturulamayacağı. Mümkünse
"true", değilse"false"değerini girin. Varsayılan değer"true"'dır.<application>öğesinin, hizmetler de dahil olmak üzere tüm uygulama bileşenleri için geçerli olan kendienabledözelliği vardır. Hizmetin etkinleştirilmesi için<application>ve<service>özelliklerinin her ikisi de"true"olmalıdır. Bu özellikler varsayılan olarak"true"'dir. İkisinden biri"false"ise hizmet devre dışı bırakılır ve başlatılamaz. android:exported- Diğer uygulamaların bileşenlerinin hizmeti çağırıp çağıramayacağı veya hizmetle etkileşimde bulunup bulunamayacağı. Bu, kullanıcının yapıp yapamayacağına bağlı olarak
"true"veya"false"olur. Değer"false"olduğunda yalnızca aynı uygulamanın bileşenleri veya aynı kullanıcı kimliğine sahip uygulamalar hizmeti başlatabilir ya da hizmete bağlanabilir.Varsayılan değer, hizmetin amaç filtreleri içerip içermediğine bağlıdır. Filtrelerin olmaması, yalnızca tam sınıf adı belirtilerek çağrılabileceği anlamına gelir. Bu, hizmetin yalnızca uygulama içinde kullanıma yönelik olduğunu gösterir. Çünkü diğerleri sınıf adını bilmez. Bu durumda varsayılan değer
"false"olur. Diğer yandan, en az bir filtrenin bulunması hizmetin harici kullanım için tasarlandığını gösterir. Bu nedenle varsayılan değer"true"olur.Bu özellik, bir hizmetin diğer uygulamalara maruz kalmasını sınırlamanın tek yolu değildir. Hizmetle etkileşime girebilecek harici öğeleri sınırlamak için de izin kullanabilirsiniz.
permissionözelliğini inceleyin. android:foregroundServiceTypeHizmetin belirli bir kullanım alanını karşılayan bir ön plan hizmeti olduğunu belirtir. Örneğin, bir ön plan hizmet türü, uygulamanın cihazın mevcut konumunu aldığını gösterir. Bu genellikle cihaz konumuyla ilgili kullanıcı tarafından başlatılan bir işlemi devam ettirmek için yapılır.
"location"Belirli bir hizmete birden fazla ön plan hizmeti türü atayabilirsiniz.
android:iconHizmeti temsil eden bir simge. Bu özellik, resim tanımını içeren drawable kaynağa referans olarak ayarlanır. Ayarlanmamışsa bunun yerine uygulamanın tamamı için belirtilen simge kullanılır.
<application>öğesininiconözelliğine bakın.Burada veya
<application>öğesiyle ayarlanan hizmet simgesi, hizmetin tüm amaç filtreleri için de varsayılan simgedir.<intent-filter>öğesininiconözelliğine bakın.android:intentMatchingFlags-
Sistemin gelen amaçları uygulama bileşenleriyle nasıl eşleştirdiğine ince ayar yapmak için bu özelliği kullanın. Varsayılan olarak özel eşleşme kuralları uygulanmaz.
<service>etiketinde ayarlanan değer,<application>etiketinde ayarlanan değeri geçersiz kılar.Değer, "
|" ile ayrılmış aşağıdaki işaretlerden biri veya daha fazlası olmalıdır:İşaret Açıklama noneGelen amaçlar için tüm özel eşleşme kurallarını devre dışı bırakır. Birden fazla işaret belirtirken çakışan değerler, noneişaretine öncelik verilerek çözülür.enforceIntentFilterGelen intent'ler için daha katı eşleşme uygular:
- Açık amaçlar, hedef bileşenin amaç filtresiyle eşleşmelidir.
- İşlemi olmayan amaçlar, herhangi bir amaç filtresiyle eşleşmez.
allowNullActionEşleşme kurallarını gevşeterek işlem içermeyen niyetlerin eşleşmesine izin verir. Bu işaret, aşağıdaki davranışı elde etmek için
enforceIntentFilterile birlikte kullanılır:- Açık amaçlar, hedef bileşenin amaç filtresiyle eşleşmelidir.
- İşlem içermeyen amaçların herhangi bir amaç filtresiyle eşleşmesine izin verilir.
Daha fazla bilgi için Android 16'daki (API düzeyi 36) davranış değişiklikleri bölümündeki Daha Güvenli Amaçlar'a göz atın.
android:isolatedProcess"true"olarak ayarlanırsa bu hizmet, sistemin geri kalanından izole edilmiş ve kendi izinleri olmayan özel bir işlem altında çalışır. Bu hizmetle yalnızca Service API üzerinden iletişim kurulur. Bağlama ve başlatma işlemleri bu API üzerinden yapılır.android:label- Hizmetin kullanıcı tarafından okunabilir adı.
Bu özellik ayarlanmazsa bunun yerine uygulamanın tamamı için ayarlanan etiket kullanılır.
<application>öğesininlabelözelliğine bakın.Hizmetin etiketi (burada veya
<application>öğesiyle ayarlanmış olsun) aynı zamanda hizmetin tüm amaç filtrelerinin varsayılan etiketidir.<intent-filter>öğesininlabelözelliğine bakın.Etiket, kullanıcı arayüzündeki diğer dizeler gibi yerelleştirilebilmesi için dize kaynağına referans olarak ayarlanır. Ancak uygulamayı geliştirirken kolaylık sağlaması için ham dize olarak da ayarlanabilir.
android:name- Hizmeti uygulayan
Servicealt sınıfının adı. Bu,"com.example.project.RoomService"gibi tam nitelikli bir sınıf adıdır. Ancak kısa bir yol olarak, adın ilk karakteri nokta ise (ö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 değer yoktur. Ad belirtilmelidir.
android:permission- Bir öğenin hizmeti başlatmak veya hizmete bağlanmak için ihtiyaç duyduğu iznin adı.
startService(),bindService()veyastopService()numaralı bir arayana bu izin verilmezse yöntem çalışmaz veIntentnesnesi hizmete teslim edilmez.Bu özellik ayarlanmazsa hizmet için
<application>öğesininpermissionözelliği tarafından belirlenen izin geçerli olur. İki özellik de ayarlanmamışsa hizmet, izinle korunmaz.İzinler hakkında daha fazla bilgi için uygulama manifestine genel bakış ve güvenlik yönergeleri bölümündeki İzinler'e bakın.
android:process- Hizmetin çalıştığı sürecin 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>öğesininprocessözelliği, tüm bileşenler için farklı bir varsayılan değer ayarlayabilir. Ancak bir bileşen, varsayılanı kendiprocessözelliğiyle geçersiz kılabilir. Bu sayede uygulamanızı birden fazla işleme yayabilirsiniz.Bu özelliğe atanan ad iki nokta üst üste işaretiyle (
:) başlıyorsa gerektiğinde uygulama için özel olan yeni bir işlem oluşturulur ve hizmet bu işlemde çalışır.İşlem adı küçük harfle başlıyorsa hizmet, bu ada sahip genel bir işlemde çalışır (bunu yapma izni varsa). 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 kullanıcı, uygulamanın sahibi olduğu bir etkinliğe dayalı bir görevi kaldırdığında sistem hizmeti otomatik olarak durdurur. Varsayılan değer"false"'dır.
- Ayrıca:
<application><activity>- Tanıtıldığı oyun:
- API düzeyi 1
<hizmet>
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2026-07-03 UTC.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2026-07-03 UTC."],[],[]]