一、问题描述
首先我不是用的模拟器,而是用的手机调试的。将ProviderTest下载到手机端后点击按钮会自动退出程序。
二、解决问题
1.首先排除打错字,注意我们的工程一般会默认加了个用户名,所以凡是写路径的代码都别忘了加个用户名。比如:
//DataBaseTest工程中
public static final String AUTHORITY = "com.example.asus.databasetest.provider";
//ProviderTest工程中
Uri uri = Uri.parse("content://com.example.asus.databasetest.provider/book");
然后就是版本的问题,书中用的
compile 'com.android.support:appcompat-v7:24.2.1'
我用的是
compile 'com.android.support:appcompat-v7:26.0.0-alpha1'
网上有的说是版本的问题,那就先按照版本的问题解决。
2.如果不是打错字的问题,也不是版本的问题,那就是下面我解决的办法。
首先你得运行着DataBaseTest工程,然后再运行ProviderTest工程。也就是如下图所示:
这样在手机端操作ADD TO BOOK就没有啥问题。
点击添加和查询后的Lgcat输出为(把Database中所有的按钮逻辑都注释掉):
更新的数据:
别问我为啥,我也刚学三个星期。反正就是在运行第一个后运行第二个才没有问题。如果有知道的可以在评论区留言哈哈。
顺便说一句,非要说为啥的话,可能是这样(品品这段话,反正我是品不出来哈哈)