我在Android庫項目中遇到資源問題。庫項目包含已經編譯爲JAR中的.class文件和res
文件夾中的資源的源代碼。這些類是用--non-constant-id
AAPT選項編譯的。Android庫項目返回的資源不正確
在我的圖書館項目中,我有:
res/drawable/image1.png
res/drawable/image3.png
在項目依賴於庫項目,我有:
res/drawable/image2.png
Eclipse中爲每個項目創建一個R.txt和R.java。所以總共有兩個R.txt和兩個R.java。
在庫項目的R.java,資源ID是這樣:
image1=0x7f02007c;
image3=0x7f02007d;
庫項目意味着這個R.java文件將與相關項目的R.java產生一個最終的R合併的.java看起來像:
image1=0x7f02007c;
image2=0x7f02007d;
image3=0x7f02007e;
正如預期的那樣,中image2
列入最終R.java移動存儲位置下降了1。
問題:當我從我的庫項目的JAR引用資源(如R.drawable.image3
)時,它將解析爲未合併R.java中的ID。例如:R.drawable.image3 = 0x7f02007d
。但0x7f02007d
實際上指向image2
,因此返回了錯誤的資源。我認爲我做錯了什麼。有沒有人有任何想法可能是什麼?
您是否嘗試刪除生成的代碼以允許其重新生成? – ChiefTwoPencils
@BobbyDigital是的,我已經清理了這兩個項目,並確認'R.txt'和'R.java'文件實際上已被刪除。 – shanet