您的位置:首页 > 大数据 > 人工智能

Installation error: INSTALL_FAILED_CONFLICTING_PROVIDER 解决方案

2016-12-28 09:38 393 查看
现在使用Android Studio的开发人员越来越多,自然避免不了debug版本和release版本都需要安装在同一个手机上的场景。

但是,有时候安装了debug版本后再安装release版本,会遇到这样的问题,Installation error: INSTALL_FAILED_CONFLICTING_PROVIDER,这个问题的字面意思就是provider冲突了。



一般是在AndroidManifest.xml中定义的Provider,比如说下面的,

<provider
android:name="com.igexin.download.DownloadProvider"
android:authorities="${gettuiAuthorities}"
android:process=":pushservice"/>


在同一个手机中,不能有两个authorities一样的provider。所以解决这个问题,就只要把冲突的authorities改掉即可。

为了避免这种问题再次发生,我们一般:

release版本是以 前缀+包名 来定义authorities,

debug版本是以 前缀+包名+”.debug”来定义authorities。

前缀是用来区分哪个provider的,因为有时候会定义多个provider。像我上面那个截图中,就可以根据tray__authority找出是哪个provider出错。

解决完这个问题,就可以完美地在同一个手机上同时安装debug和release两个版本了(不过前提当然是两个版本的包名不一样的)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息