- söz dizimi:
<receiver android:directBootAware=["true" | "false"] android:enabled=["true" | "false"] android:exported=["true" | "false"] android:icon="drawable resource" android:label="string resource" android:name="string" android:permission="string" android:process="string" > ... </receiver>
- şunları içerir:
<application>
- aşağıdakileri içerebilir:
<intent-filter>
<meta-data>
- description:
- Yayın alıcıyı (
BroadcastReceiver
alt sınıfı) uygulamanın bileşenlerinden biri olarak tanımlar. Yayın alıcıları, uygulamaların diğer bileşenleri çalışmıyor olsa bile sistem veya diğer uygulamalar tarafından yayınlanan amaçları almasına olanak sağlar.Yayın alıcısını sisteme tanıtmanın iki yolu vardır. Bunlardan biri, bu öğenin manifest dosyasında bu öğeyle tanımlanmasıdır. Diğeri ise alıcıyı kod içinde dinamik olarak oluşturmak ve
Context.registerReceiver()
yöntemiyle veya aşırı yüklenmiş sürümlerinden biriyle kaydetmektir.Dinamik olarak alıcı oluşturma hakkında daha fazla bilgi için
BroadcastReceiver
sınıf açıklamasına bakın.Bu alıcı, sistem dışı yayınları işliyorsa
android:exported
için bir değer belirtin. Alıcınızın diğer uygulamalardan gelen yayınları alabilmesini istiyorsanız bu değeri"true"
veya yalnızca kendi uygulamanızdan yayın alabilmesini istiyorsanız"false"
olarak ayarlayın.android:permission
özelliğini zaten bildirdiyseniz kaldırmanız gerekmez.Uyarı: Uygulamanızda ayarladığınız yayın alıcısı sayısını sınırlayın. Çok fazla yayın alıcısı olması uygulamanızın performansını ve kullanıcı cihazlarının pil ömrünü etkileyebilir. Arka plan çalışmasını planlamak için
BroadcastReceiver
sınıfı yerine kullanabileceğiniz API'ler hakkında daha fazla bilgi edinmek için Arka plan optimizasyonu bölümüne bakın. - özellikler:
android:directBootAware
Yayın alıcısının Doğrudan Önyüklemeyi duyarlı olup olmadığı, diğer bir deyişle kullanıcı cihazın kilidini açmadan önce çalışıp çalışamayacağı.
Not: Doğrudan Başlatma sırasında, uygulamanızdaki bir yayın alıcısı yalnızca cihazla korunan depolama alanında depolanan verilere erişebilir.
Varsayılan değer
"false"
olarak ayarlanmıştır.android:enabled
- Yayın alıcısının sistem tarafından somutlaştırılıp başlatılamayacağı. Mümkünse
"true"
, değilse"false"
olur. Varsayılan değer"true"
şeklindedir.<application>
öğesinin, yayın alıcıları dahil tüm uygulama bileşenleri için geçerli olan kendienabled
özelliği vardır. Yayın alıcısının etkinleştirilebilmesi için<application>
ve<receiver>
özelliklerinin her ikisi de"true"
olmalıdır. İkisinden biri"false"
ise devre dışıdır ve örnek oluşturulamaz. android:exported
- Yayını alıcının, uygulaması dışındaki sistem dışı kaynaklardan mesaj alıp alamayacağı. İzin veriliyorsa
"true"
, değilse"false"
."false"
ise yayın alıcısının aldığı mesajlar yalnızca sistem, aynı uygulamanın bileşenleri veya aynı kullanıcı kimliğine sahip uygulamalar tarafından gönderilen mesajlardır.Belirtilmemesi durumunda varsayılan değer, yayın alıcısının intent filtreleri içerip içermediğine bağlıdır. Alıcı en az bir intent filtresi içeriyorsa varsayılan değer
"true"
olur. Aksi takdirde, varsayılan değer"false"
olur.Bu özellik, yayın alıcısının harici karşılaşmasını sınırlamanın tek yolu değildir. Bir izni, bu izne mesaj gönderebilecek harici varlıkları sınırlamak için de kullanabilirsiniz.
permission
özelliğine bakın. android:icon
- Yayın alıcısını temsil eden bir simge. Bu özellik, resim tanımını içeren çekilebilir bir kaynağa referans olarak ayarlanır.
Ayarlanmazsa, bunun yerine uygulamanın tamamı için belirtilen simge kullanılır.
<application>
öğesininicon
özelliğine bakın.Yayın alıcısının simgesi, ister burada ister
<application>
öğesi tarafından ayarlanmış olsun, aynı zamanda alıcının tüm intent filtreleri için de varsayılan simgedir.<intent-filter>
öğesininicon
özelliğine bakın. android:label
- Yayın alıcı için kullanıcı tarafından okunabilir bir etiket. Bu özellik ayarlanmazsa bunun yerine uygulamanın tamamı için ayarlanan etiket kullanılır.
<application>
öğesininlabel
özelliğine bakın.Yayın alıcısının etiketi, burada veya
<application>
öğesi tarafından ayarlanmış olabilir ve aynı zamanda alıcının tüm intent filtreleri için de varsayılan etikettir.<intent-filter>
öğesininlabel
özelliğine bakın.Bu etiket, bir dize kaynağına referans olarak ayarlanır. Böylece, kullanıcı arayüzündeki diğer dizeler gibi yerelleştirilebilir. Ancak uygulamayı geliştirirken kolaylık sağlaması açısından ham dize olarak da ayarlanabilir.
android:name
- Yayın alıcısını uygulayan sınıfın adı (
BroadcastReceiver
alt sınıfı). Bu,"com.example.project.ReportReceiver"
gibi tam nitelikli bir sınıf adıdır. Bununla birlikte, kısaltma olarak adın ilk karakteri noktaysa (ör.".ReportReceiver"
)<manifest>
öğesinde belirtilen paket adına eklenir.Uygulamanızı yayınladıktan sonra,
android:exported="false"
özelliğini ayarlamadığınız sürece bu adı değiştirmeyin.Varsayılan değer yoktur. Ad belirtilmelidir.
android:permission
- Yayıncıların, yayın alıcısına mesaj göndermek için ihtiyaç duydukları iznin adı.
Bu özellik ayarlanmazsa
<application>
öğesininpermission
özelliği tarafından ayarlanan izin yayın alıcısına uygulanır. Hiçbir özellik ayarlanmazsa alıcı bir izinle korunmaz.İzinler hakkında daha fazla bilgi edinmek için uygulama manifesti genel bakışındaki İzinler bölümüne ve Güvenlik ipuçları bölümüne bakın.
android:process
- Yayın alıcısının çalıştığı sürecin adı.
Normalde bir uygulamanın tüm bileşenleri, uygulama için oluşturulan varsayılan işlemde çalışır. Uygulama paketiyle aynı ada sahiptir.
<application>
öğesininprocess
özelliği, tüm bileşenler için farklı bir varsayılan ayarlayabilir. Ancak her bileşen, varsayılan değeri kendiprocess
özelliğiyle geçersiz kılarak uygulamanızı birden fazla işleme yayabilmenizi sağlar.Bu özelliğe atanan ad, iki nokta üst üste karakteri (
:
) ile başlıyorsa ihtiyaç duyulduğunda uygulamaya özel yeni bir süreç oluşturulur ve yayın alıcısı bu süreçte çalışır.İşlem adı küçük harfle başlıyorsa alıcı, izni olması koşuluyla bu ada sahip global bir işlemde çalışır. Bu, farklı uygulamalardaki bileşenlerin aynı işlemi paylaşmasına olanak tanıyarak kaynak kullanımını azaltır.
- kullanıma sunulduğu tarih:
- API düzeyi 1
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: 2023-10-18 UTC.
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"İhtiyacım olan bilgiler yok"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Çok karmaşık / çok fazla adım var"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Güncel değil"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"Çeviri sorunu"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Örnek veya kod sorunu"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Diğer"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Anlaması kolay"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Sorunumu çözdü"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Diğer"
}]
{
"last_modified": "Son güncelleme tarihi: 2023-10-18 UTC.",
"state": ""
}