今天遇到一個問題,有用戶反饋從華為應用市場下載一個新應用時,提示安裝失敗。
打開提示信息,查看失敗詳情。看到具體的失敗信息是Conflicting Provider,Error Code:-13。另外系統還提示了和產生沖突的應用名稱以及推薦的解決方法。
一般提示Provider沖突時,很大可能是ContentProvider相同導致的。ContentProvider是Android的四大組件之一,但是平時用得比較少。ContentProvider一般用於跨進程通信,進行進程間的數據交互和共享。這個特性決定了ContentProvider只能全局唯一,一旦有應用先在手機上注冊了同名的Provider后,后面安裝的應用就不能再使用相同的名字,安裝時就會出錯。
檢查這兩個沖突的APK,果然在AndroidManifest.xml文件里看到相同的Provider設置:
和開發者商量之后,修改了其中一個應用的ContentProvider的信息,增加了本應用的包名信息,再安裝就成功了,問題解決。
原文鏈接:https://developer.huawei.com/...
原作者:Mayism