在一個應用程序中添加了多個antivity後,在manifest.xml文件中會除了主Activity外,其它的Activity屬性中都會有個警告:
Exported activity does not require permissionandroid
這是由於在Activity中添加了intent-filter屬性,這個屬性的添加意味着該Activity已經暴露給了不一樣進程的應用,也就是 說其它的應用程序不須要任何權限就能夠自由的實例化該Activity。顯然,若是不是有特殊需求,沒人會但願本身寫得應用程序會有這麼個隱患。ui
解決方法:
在Activity中添加:
android:exported="false"。spa
還有一種解決方法是定義Activity的權限。code
先在<manifest>標籤下加入orm
<permission android:protectionLevel="normal" android:name="oem.permission.SENDMAIL"></permission>server
而後在<service>標籤下xml
android:permission="oem.permission.SENDMAIL"blog
<service android:permission = "oem.permission.SENDMAIL" android:name = ".AIDLService" > <intent-filter> <action android:name = "com.example.server.AIDLService" /> <category android:name = "android.intent.category.DEFAULT" /> </intent-filter> </service>