国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android NoSuchFieldError解決辦法

2019-10-22 18:25:45
字體:
來源:轉載
供稿:網友

Android NoSuchFieldError解決辦法

前幾天在開發的時候,把一個library搬到了一個新的工程中,然后在主應用模塊中調用library的Activity,發現出現了NoSuchFieldError:

Android,NoSuchFieldError,NoSuchFieldError出現問題解決方法

然而,查看代碼明明是沒有問題的,layout文件存在且id正確,R文件也正常。后來在StackOverFlow上找到了答案,原因是主應用模塊和library里面的layout文件重名了,把其中一個名字改了就正常運行。后來寫了個小demo重現了錯誤并分析了一下打包的apk:

主模塊和library模塊里新建相同名字的layout文件,但兩者不同,如圖所示

主模塊的文件
Android,NoSuchFieldError,NoSuchFieldError出現問題解決方法

library的文件
Android,NoSuchFieldError,NoSuchFieldError出現問題解決方法

最后在打包生成的apk文件中,這個名字的layout文件只有一個,并且是主模塊的layout文件:

Android,NoSuchFieldError,NoSuchFieldError出現問題解決方法

另外,apk文件中的resources.arsc文件中的id確實沒有library中定義的id

結論

Android的打包機制決定了不能有同名的layout文件,故只能避免模塊之間文件的重名

如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 道孚县| 桐庐县| 沂源县| 湛江市| 姚安县| 衡水市| 凤冈县| 绍兴县| 双城市| 密云县| 宁陕县| 闽侯县| 沾化县| 林甸县| 濮阳市| 松桃| 荆门市| 沁水县| 石嘴山市| 林芝县| 毕节市| 连平县| 土默特右旗| 龙口市| 开阳县| 台中县| 惠来县| 邛崃市| 漳平市| 济阳县| 拉萨市| 合作市| 资阳市| 罗甸县| 洪泽县| 龙里县| 介休市| 丽水市| 郁南县| 荆州市| 汝城县|