Android服务可以有多个权限吗?

时间:2010-08-13 04:34:28

标签: java android permissions manifest

我有一个服务,它既下载文件又保存它,似乎我只能指定一个权限。

<service android:enabled="true"
            android:name=".DownloadService" android:permission="android.permission.INTERNET">            
</service>

<service android:enabled="true"
            android:name=".DownloadService" android:permission="android.permission.WRITE_EXTERNAL_STORAGE">            
</service>

我需要两个。

1 个答案:

答案 0 :(得分:21)

Android Service可以拥有多项权限,但权限是在应用程序级别授予的,而不是Service级别。

您的问题是,您正试图在Service文件的错误位置向AndroidManifest.xml授予权限。

android:permission attribute of a Service指定实体使用服务必须具有的权限,而不是Service授予的权限。

AndroidManifest.xml的最高级别grant permissions to all components your application

<manifest 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.yourdomain.yourapp" >

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

</manifest>