学习contentProvider的时候,测试被访问应用出现的问题。
异常信息:java.lang.SecurityException: Permission Denial: opening provider com.jiacw.d17databasetest.DataBaseProvider from ProcessRecord{41e7f168 26888:com.jiacw.d19providertest/u0a562} (pid=26888, uid=10562) that is not exported from uid 10561
异常定位:
int deleteRow = getContentResolver().delete(uri, null, null);
错误原因:信息上写的很清楚了,提供器未对外开放,开始还以为什么权限没加。。。
<provider
android:name="com.jiacw.d17databasetest.DataBaseProvider"
android:authorities="com.jiacw.d17databasetest.provider"/>
解决办法:在provider标签内添上:android:exported="true"