错误产生原因:android 中,寻找资源文件,首先会寻找本机语言下的资源文件。例如,如果手机是中文版,则会优先选择res下面values有中文资源的进行匹配,这也是导致我的app_name被module下的中文app_name替换的原因。
解决办法:
方案一:创建一个中文版的value的配置文件,并复制粘贴相同的内容。
方案二:将每一个module下的app_name属性的名称全部删除,则系统不会找错。存在问题就是如果语言比较多,需要删除的比较大,这里可以优先删除中文,试试看可不可以,如果app_name被中文覆盖的话。
我的解决方案为方案一。
方案三:如果直接修改主模块的app_name ,会产生Manifest merger failed 的错误。
解决方法:在主模块中application中添加 tools:replace=“android:label” 并且在< manifest>/< manifest>中添加< manifest xmlns:tools=“http://schemas.android.com/tools” >即可进行修改
建议可以采用方案三。
转自 https://blog.csdn.net/weixin_37716758/article/details/88653534
网友评论