Android Exported service does not require permission警告

    今天写一个Service时,在manifest文件的<service>标签发现了这个警告 

<service  
     
    android:name="SendService">  
    <intent-filter>  
        <action android:name="com.oem.OEMSendService.SENDMAIL" />  
    </intent-filter>  
      
</service> 



    查了下api,终于发现一些端倪

    原因:这是一个可以被外部访问的service,需要使用权限来限制外部访问

    解决方法:

    1.给<service>标签添加属性

android:exported="false"

    这种方法是限制外部访问,自然不需要权限了

    2.声明权限

    先在<manifest>标签下加入

<permission android:protectionLevel="normal" android:name="oem.permission.SENDMAIL"></permission>

    然后给<service>标签添加属性

android:permission="oem.permission.SENDMAIL"

原文地址:点击打开链接

你可能感兴趣的:(android,错误处理,技巧搜集)