android R檔案命名衝突問題
當專案中引用了其他的library時,有一定概率會出現空指標異常,查詢後發現都是findViewById 返回的View 為空,但是進一步排查後發現id是存在的,那麼問題就出現在R檔案的id對映問題上。
舉個栗子,如果主模組裡有個layout叫做man.xml,引用的library裡也有個layout叫做man.xml,這時候程式碼並不會報錯,但是當生成APK後,R檔案會把主模組的man.xml覆蓋掉library的,這樣會導致當你程式碼中以為引用的是library的man.xml,實際上引用的是主模組的,所以會導致findViewById返回空。
這種情況就算你引用library的全限定名的R檔案也沒用,一旦library和主模組的id重名,就會被主模組的覆蓋,因此解決方案只能是改掉一方的名字,避免衝突。
如果大家有更好的方案,可以提出。
相關推薦
android R檔案命名衝突問題
當專案中引用了其他的library時,有一定概率會出現空指標異常,查詢後發現都是findViewById 返回的View 為空,但是進一步排查後發現id是存在的,那麼問題就出現在R檔案的id對映問題上。
Android R檔案丟失或R cannot be resolved to a variable
寫Android遇到了R cannot be resolved to a variable的問題,檢視gen目錄,沒看到R檔案,以前沒遇到過,一時間解決不了問題,還好網上有博主寫了一個解決方法剛好就是
Android實戰之R檔案
開始遇到R檔案缺失,在網上社群查閱了資料,大概有三種方法: clean project,然後rebuild 選擇專案properties,點選Android,選擇相應版本,點選ok 修改res檔案下的錯誤 我遇到的問題是匯入包版本錯誤,選擇了正確的版本,就生
Android Studio更新導致Program type already present:的問題以及如下描述。R檔案丟失問題 Error:Execution failed for task ':app:processDebugManifest'
All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 27.1.1,
Android找不到R檔案的原因
歸根究底還是你程式碼有地方出錯了,我的原因是我沒有import入正確的包下的R 為什麼沒能引入R。因為我沒能生成R 因為在我自定義控制元件之後,自動生成的sample .xml檔案中的xlmns:app中我沒有改成res-auto 之後再在出錯的地方就可以引入正確的R了
android工程不自動更新R檔案的問題解決
今天兩次遇到R檔案不更新,進而消失的問題。上一篇博文中說更換了workspace就解決了。但是晚上有碰到了,又去網上找(因為不想再換工作空間了)。於是找到了一篇有用的。跟大家分享一下: &nb
關於Eclipse開發Android無法生成R檔案的解決
最近正在學習安卓。一開始很順利。但是今天遇到了一個問題:就是在新建佈局檔案之後,Eclipse無法將新的佈局ID寫入R檔案。後來發現新建的專案居然無法生存R檔案了。在網上看了很多的解決辦法。但都沒有成功。其中著重試驗了重新安裝ADT,但是不奏效。偶爾瞟到一個帖子或者是文章:說更換一下WorkSpac
Android Studio 找不到R檔案解決方法
新建專案之後顯示R檔案找不到 解決方法: 最簡單的辦法就是電腦聯網之後開啟Android Studio -->Build-->Clean Project 本人就是這樣解決的,剛開始沒聯網的時候新建專案之後顯示R檔案沒有找到,後來電腦聯網之後再新建專案什麼問題
android 混淆後,反射R檔案內部類報錯
專案中由於用到了下面方法來 反射R檔案獲取layout的佈局id。但是混淆後,發現報錯 android.content.res.Resources$NotFoundException: Resource ID #0x0 經過網上查詢都是在 proguard-r
android裡面R檔案突然找不到,或者報錯情況分析
這些天在做一個Android專案,就匯入來看,也算是積累了一些些經驗, 這裡主要分享一些我的專案找不到R檔案的問題。 首先,R檔案,即R.java,一般我們在佈局中用到的,此R檔案會儲存在gen下面的
關於android R.layout 中找不到已存在的佈局檔案問題的解決
今天下午遇到一個很蛋疼的問題,打R.layout.,居然不會提示已經寫好的佈局檔案,自己把xml檔名打下去後,居然提示錯誤. 開始以為是R檔案中沒有自動生成關於佈局檔案對應的整型,看了R檔案,其實是有生成的,找了很久都不知道什麼原因. 後來發現原來是在複製的時候把andro
Android 匯入圖片後導致R檔案解析不了。報錯app:mergeDebugResources'. > Error: java.util.concurrent.ExecutionException:
Android studio嚴格審查png圖片,png沒有達到Androidstudio的要求就會導致報錯 最簡單的解決方案為在build.gradle中新增兩行程式碼 android { … aaptOptions.cruncherEnabled = false aaptOp
Android Studio R檔案爆紅但是專案可以執行
這種原因是你的R檔案太大了(超過了Android Studio的上限25.6M了) 解決辦法如下: Help -> Edit Custom Properties -> create custom properties?(yes) ->新增
Android Studio開發 -- BUILD FAILED -- R檔案丟失 解決方案
Android Studio開發 -- BUILD FAILED -- R檔案丟失 解決方案 原來直接複製進來的圖片格式是jpg ,需要轉成 png ,後重新編譯就可以了 R檔案丟失!!!我最開心的就是遇見這個了,因為我寫過關於R檔案丟失問題解決方案彙總,怎麼也難不住我吧,
Android開發之檔案命名規範
以前自己學習Android做專案的時候都是自己一個人在單搞,所以對命名這一塊沒有形成什麼良好的習慣,只要自己能懂就可以了。但是現在進公司實習才知道這樣完全不行的,公司的專案基本都是團隊合作,所以你要能看懂別人的程式碼,也要讓別人能看懂你的程式碼。當我開啟那些資源表的時候完
Android資源佈局檔案命名規範
資源佈局檔案(XML檔案(layout佈局檔案)): 全部小寫,採用下劃線命名法 1).contentview命名, Activity預設佈局,以去掉字尾的Activity類進行命名。不加字尾: 功能模組.xml 例如:main
關於新建android專案,MainActivity裡面的onCreate()方法、R檔案報錯的解決方法
做為一位剛剛上手Android開發的小白來說,要適應一門開發語言和一款開發工具十分費勁。本人也在摸索的路上走了很多的彎路,也有了一點點的經驗和問題的解決方案,和大家分享一下。 這是關於第一次用Android studio新建工程所遇到的問題,新建工程中MainActivit
Android Studio更新導致Program type already present:的問題以及如下描述。R檔案丟失問題
All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versi
android r cannot be resolved to a variable 錯誤以及 所有的檔案沒有報錯但是專案報錯
1. 檢查Android 的SDK是否丟失需要重新下載,檢查build path 2.確保class沒有import Android.R; 3,錯誤class引用的layout的xml檔案沒有錯誤 4.檢查AndroidManifest.xml檔案,裡邊的package,lay
Android Studio專案打包AAR,以及專案中嵌入AAR檔案,過程中出現R檔案報錯的坑
這幾天接到新需求,將ec專案嵌入到公司as總專案中,第一次搞,弄了好久,才搞定,入正題. 首先將ec專案匯入as中,解決各種報錯,比如png圖片,.9圖,以及各種不規範的log,吐死之類的,不細說,這個不難. 將專案遷移到AS中,成功執行,OK,開始打包AAR,打包AAR不