3

我知道你一定在AndroidManifest.xml中文件聲明所有的活動服務,以使他們的系統(如官方文檔說的)訪問,但如果我有一個服務或一個活動,我想只能通過另一個活動開始在我的應用程序中,我是否需要在清單中聲明它?也就是說,我總是從我的應用程序的主要活動中啓動次要活動,直接指向次要活動的類(no 意圖過濾器分辨率),仍然需要在清單中聲明次要活動?如果我不希望我的應用以外的任何人能夠啓動我的次要活動?如果這是一個愚蠢的問題,我很抱歉,我只想了解,如果希望在清單文件中忽略活動和服務是一種很好的做法(如果可能的話),只需將它們各自的類指向相同的應用。總是在AndroidManifest文件中聲明活動和服務?

回答

6

您必須在AndroidManifest.xml文件中聲明您的所有活動和服務(以及其他一切類似BroadcastReceivers)。 否則您將無法使用它們。


編輯:按照CommonsWare評論,添加機器人:出口=「假」的活動將阻止啓動您的應用程序之外,您的輔助活動的AndroidManifest.xml中的聲明。

+2

除了您自己的應用程序,如果沒有''或者android:exported =「false」'',沒有人可以啓動「輔助活動」。 – CommonsWare

+0

謝謝,馬克。很高興知道android:exported =「false」會完成這項工作。我會用你的評論來編輯我的答案 – IncrediApp

相關問題