Android 如何从proguard编译和混淆的应用程序中检索视图id?

Android 如何从proguard编译和混淆的应用程序中检索视图id?,android,resources,proguard,robotium,android-view,Android,Resources,Proguard,Robotium,Android View,我正在为编译和混淆的应用程序编写测试。当前要访问视图 我使用Id表单/res/values/public.xml View myView = solo.getView(0x7f0b0030); solo.clickOnView(((LinearLayout) (myView)).getChildAt(3)); 此方法仅在未重新编译util应用程序时有效 有没有办法在没有R文件的情况下通过Id访问视图?AFAIK没有R文件就无法访问Id 如果您了解解决方案,请分享您的发现,以便其他人也能从中受益

我正在为编译和混淆的应用程序编写测试。当前要访问
视图
我使用Id表单
/res/values/public.xml

View myView = solo.getView(0x7f0b0030);
solo.clickOnView(((LinearLayout) (myView)).getChildAt(3));
此方法仅在未重新编译util应用程序时有效


有没有办法在没有
R
文件的情况下通过
Id
访问视图?

AFAIK没有R文件就无法访问Id


如果您了解解决方案,请分享您的发现,以便其他人也能从中受益

AFAIK没有R文件就无法访问Id


如果您了解解决方案,请分享您的发现,以便其他人也能从中受益

您可以使用类按名称访问资源的ID

例如:

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

同样的技巧也适用于布局。

您可以使用类按名称访问资源的ID

例如:

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

同样的技巧也适用于布局。

它有效,但我使用了完全限定名:
getIdentifier(“my\u package:id/my\u layout”,null,null)
它有效,但我使用了完全限定名:
getIdentifier(“my\u package:id/my\u layout”,null,null)