2011-09-15 47 views
0

我正在編寫測試編譯和混淆的應用程序。目前訪問View 我用編號形式/res/values/public.xml如何檢索由proguard編譯和混淆的應用程序的視圖ID?

View myView = solo.getView(0x7f0b0030); 
solo.clickOnView(((LinearLayout) (myView)).getChildAt(3)); 

這種方法只適用util的應用程序沒有重新編譯。

有沒有什麼辦法可以通過Id來查看沒有R文件的查看?

回答

3

您可以使用Resources類按名稱訪問資源的ID。

例如:

getResources().getIdentifier("my_image", "drawable", "com.my_package"); 

相同的技巧應佈局正常工作。

+0

它的工作,但我使用完全限定的名稱:'getIdentifier(「my_package:id/my_layout」,null,null)' – pixel

0

AFAIK沒有方法可以在沒有R文件的情況下訪問Id。

如果您來了解解決方案,請分享您的發現,以便其他人也能受益。