Разрешения на чтение и запись для Android ContentProvider

разрешения, похоже, не имеют никакого значения ...

В манифесте у меня только один ( permission.INTERNET ), и у меня есть два элемента :

<permission android:name="myapp.permission.READ"
    android:permissionGroup="myapp.permission-group.MYAPP_DATA"
    android:label="@string/perm_read"
    android:description="@string/perm_read_summary"
    android:protectionLevel="signature" />

<permission android:name="myapp.permission.WRITE"
    android:permissionGroup="myapp.permission-group.MYAPP_DATA"
    android:label="@string/perm_write"
    android:description="@string/perm_write_summary"
    android:protectionLevel="signature" />

И еще есть провайдер:

    <provider
        android:name=".data.DataProvider"
        android:multiprocess="true"
        android:authorities="myapp.data.DataProvider"
        android:readPermission="myapp.permission.READ"
        android:writePermission="myapp.permission.WRITE" />

Сейчас у меня нормальный доступ к ContentProvider , и он отлично работает.

  1. Почему он работает, если я не применял ? Разве это не нужно также в приложении, где находится провайдер объявлен?

  2. Добавление с моими собственными разрешениями не имеет значения. Разрешения даже не указаны в информации о приложении. Почему?

ps: да, я читал здесь вопросы по SO и в группах Google (те, на которые отвечает Hackborn). Я следил (как видите) за тем, что описано везде, но все же ... Можно сказать, что это работает, но суть в том, что я хочу видеть, когда это не так.

7
задан davidcesarino 20 August 2011 в 21:18
поделиться