Bildirimde birkaç farklı etkinlik tanımladığım bir Android uygulamasına sahibim. Bu aktivitelerden bazılarının kullandıkları amaç filtreleri (ACTION_PICK gibi) var. Bu etkinlikler, amaç filtreleri nedeniyle, diğer uygulamalar bir ACTION_PICK işlemek için bir etkinlik istediğinde ortaya çıkar. Bunu engellemenin bir yolu var mı, bu yüzden faaliyetlerim diğer uygulamalara açık değil mi? Zaten çalışmamda android: exported = "false" ayarlamayı denedim, ancak bu hiçbir şey yapmadı.Diğer android uygulamaların etkinliklerime erişmesini nasıl engellerim
cevap
Sen gerekir:
*
(imzanızı sahip uygulamalar için geçerlidir) izni tanımlamak * Başvurunuz
* Eğer korumalı istediğiniz faaliyetler için bu izni gerektiren tanımlı izni kullandığı tanımlar. (Ana lansman faaliyetiniz için buna gerek duymamaya dikkat edin).
<!-- define a permission -->
<permission
android:protectionLevel="signature"
android:name="com.mypackage.MYPERMISSION"/>
<uses-permission android:name="com.mypackage.MYPERMISSION" />
<!-- define an activity which can only be started through internal code -->
<activity android:name="..."
android:permission="com.mypackage.MYPERMISSION" >
...
</activity>
Tamlık için, izin ve kullanım izni etiketleri manifest etiketine girer, ancak uygulama etiketinin dışına çıkar ve etkinlik etiketi etiketleri uygulama etiketinin içine girer. Bu doğru mu? – Dominic
@Dominic - evet, tezahürüm böyle görünüyor. Belki başka pozisyonlar da işe yarayabilir ama ben onları denemedim. – mah
Bu doğru cevap olarak kabul edilmelidir. – cgogolin
- 1. iOS'ta Önbelleği Temizle: Diğer Uygulamaların Uygulama Verilerini Silme
- 2. Bir uygulama penceresindeki diğer uygulamaların canlı ekranlarını göster
- 3. Python OpenCV açık pencereleri diğer uygulamaların üstünde aç
- 4. Android 5.0: son uygulamaların başlık rengini nasıl değiştirebilirim?
- 5. Çalışan uygulamaların adları nasıl alınır?
- 6. Android: Diğer uygulamalar ile paylaşılabilir kaynak paylaşın
- 7. Bazı işlevlerin sıyrılmasını nasıl engellerim?
- 8. Diğer Android Geliştirici Araçları
- 9. iPhone ve Ipad - bir kodu nasıl engellerim?
- 10. Uygulamam ön planda olduğunda diğer uygulamaların NFC etiketlerini okuması nasıl engellenir?
- 11. Kullanıcının alt klasörlere ve dosyalara erişmesini nasıl reddedebilirsiniz? Yerel makinede
- 12. Rayları uygulamaların alt modülleriyle nasıl dağıtabilirsiniz?
- 13. Farklı Paket Tanımlayıcılarıyla uygulamaların otomatikleştirilmesi
- 14. IntelliJ'nin kaynakları kaynak derleyicinin çıktı dizinine kopyalamasını nasıl engellerim?
- 15. support.v7.widget.toolbar sitesindeki uygulamaların başlığını gizle
- 16. Android'de kulaklıktaki düğmeye basmayı nasıl engellerim?
- 17. Birisinin .htaccess dosyamı okumasını nasıl engellerim?
- 18. Linux'ta bir USB aygıtından iletileri nasıl engellerim?
- 19. jQuery olaylarının ana öğelere taşınmasını nasıl engellerim?
- 20. Google reCAPTCHA'nın uyarı göstermesini nasıl engellerim?
- 21. Swift'de bir segue'in nasıl olmasını engellerim?
- 22. Mobil ziyaretçilerin ziyaret etmesini nasıl engellerim?
- 23. nasıl beslemeleri biçimlendirme Firefox/IE engellerim?
- 24. System.Messaging.MessageQueue ürünümün dizelerimi XML'de sarmamasını nasıl engellerim?
- 25. Windows uygulamalarının odağı çalmasını nasıl engellerim
- 26. IIS7'nin çerezlerimi düşürmesini nasıl engellerim?
- 27. Yazıcımın dosyanın üzerine yazmasını nasıl engellerim?
- 28. Tüm uygulamaların veri kullanımını programlı olarak nasıl gösteririm?
- 29. AVCaptureSession öğesine ses girişi ekleme ve diğer uygulamaların arka planda müzik çalmalarına izin verme
- 30. Javac'ı üçüncü parti kavanozlarımızın manifestlerinden Class-Path'e erişmesini engelleyebilir miyim?
ayy, sadece burada cevap buldu: http://stackoverflow.com/questions/1571615/preventing-apps-from-invoking-my-activity/1571632#1571632 silmek için herhangi bir yolu var mı bu soru? – Dominic
Sorunuzu, yanıt olarak gösterdiğinize ait bir kopya olarak kapatmak için oy verdim. Ancak kapatmak için 3 oy daha alacak. – Squonk
Aslında, yayınlanan mesajın cevabı çok daha kısa, belki de bunu açık tutmalıyız. – Dominic