현재 content provider를 공부하고 있는데요.


서로다른 어플간의 DB를 공유하는 프로그램을 짜고 있는데.....


두개의 파일에 대해서 permission을 아래와 같이 주었습니다. 


==========================================================================

Mycontent 어플의  AndroidManifest.xml파일은


<manifest xmlns:android="http://schemas.android.com/apk/res/android"

    package="com.example.test"

    android:versionCode="1"

    android:versionName="1.0" >


    <uses-sdk

        android:minSdkVersion="8"

        android:targetSdkVersion="15" />


    <uses-permission android:name="com.example.mycontentprovider.permission.read"/>

    <uses-permission android:name="com.example.mycontentprovider.permission.write"/>

    

    <application

        android:icon="@drawable/ic_launcher"

        android:label="@string/app_name"

        android:theme="@style/AppTheme" >

        <activity

            android:name="com.example.test.MyContent"

            android:label="@string/title_activity_main" >

            <intent-filter>

                <action android:name="android.intent.action.MAIN" />


                <category android:name="android.intent.category.LAUNCHER" />

            </intent-filter>

        </activity>

    </application>


</manifest>

==========================================================================================


===========================================================================================

MycontentProvider 어플의 AndroidManifest.xml파일은 

 

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

    package="com.example.mycontentprovider"

    android:versionCode="1"

    android:versionName="1.0" >


    <uses-sdk

        android:minSdkVersion="8"

        android:targetSdkVersion="15" />


    <permission android:name="com.example.mycontentprovider.permission.read"/>

    <permission android:name="com.example.mycontentprovider.permisson.write"/>

    

    <application

        android:icon="@drawable/ic_launcher"

        android:label="@string/app_name"

        android:theme="@style/AppTheme">

        <provider

            android:name=".MyContentProvider"

            android:authorities="com.example.mycontentprovider"

            android:readPermission="com.example.mycontentprovider.permission.read"

            android:writePermission="com.example.mycontentprovider.permisson.write">

        </provider>

    </application>


</manifest>

============================================================================================


프로그램을 실행하면 

아래와 같은 에러가 발생됩니다.



01-04 12:11:43.908: E/DatabaseUtils(12432): Writing exception to parcel

01-04 12:11:43.908: E/DatabaseUtils(12432): java.lang.SecurityException: Permission Denial: writing com.example.mycontentprovider.MyContentProvider uri content://com.example.mycontentprovider/firends from pid=12518, uid=10087 requires com.example.mycontentprovider.permisson.write

01-04 12:11:43.908: E/DatabaseUtils(12432): at android.content.ContentProvider$Transport.enforceWritePermission(ContentProvider.java:349)

01-04 12:11:43.908: E/DatabaseUtils(12432): at android.content.ContentProvider$Transport.update(ContentProvider.java:218)

01-04 12:11:43.908: E/DatabaseUtils(12432): at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:207)

01-04 12:11:43.908: E/DatabaseUtils(12432): at android.os.Binder.execTransact(Binder.java:338)

01-04 12:11:43.908: E/DatabaseUtils(12432): at dalvik.system.NativeStart.run(Native Method)




에러 내용을 보아서는 write permission이 필요하다는데 이미 
<uses-permission android:name="com.example.mycontentprovider.permission.write"/>
를 선언했는데도 발생이 됩니다.

고수님들의 조언 부탁드리겠습니다.
오후내내 삽질 중입니다