根据android资料解释,如题所示的警告:Exported activity does not require permission意味着:在一个应用程序中添加了多个antivity后,是因为在Activity中添加了intent-filter属性。
上述这个属性的添加意味着,该Activity已经暴露给了不同进程的应用。也就是说,其它的应用程序不需要任何权限就可以自由的实例化该Activity。显然,如果不是有特殊需求,没人会希望自己写得应用程序会有这么个隐患。
解决方法之一是在Activity中添加:android:exported="false"。
还有一种解决方法是定义Activity的权限。先在<manifest>标签下加入<permission android:protectionLevel="normal" android:name="oem.permission.SENDMAIL"></permission>然后在<service>标签下android:permission="oem.permission.SENDMAIL" <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>
在我目前测试的拇指接龙游戏中在测试接入ShareSDK时即出现上述警告,在请教了ShareSDK服务人员后,说是不影响集成,只好先放过去上述警告了。