У меня есть сервис, который обе загрузки файл и сохраняет его, и кажется, что я могу только указать одно разрешение.
<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>
Мне нужны оба.
Служба Android
может иметь несколько разрешений, но разрешения предоставляются на уровне приложения, а не на уровне службы
.
Ваша проблема в том, что вы пытаетесь предоставить разрешение своей службе
не в том месте файла AndroidManifest.xml
.
Атрибут android: permission
службы
указывает разрешение, которое объект должен иметь для использования службы, а не разрешение, предоставленное службе
.
Вы предоставляете разрешения всем компонентам вашего приложения на верхнем уровне вашего AndroidManifest.xml
:
<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>