在Android应用程序中使用Java反射功能

在Android应用程序中使用Java反射功能,android,Android,嘿,有没有人有开发带有Java反射功能的Android应用程序的经验 我遇到了一个特殊的问题,正在寻求帮助 我的活动包中有一个活动和一个公共类, 假设它们是com.mypkg.MyActivity和com.mypkg.MyClass MyActivity中的我的代码: Class clazz = MyClass.class; Constructor[] constructors1 = clazz.getDeclaredConstructors(); Class cls = java.lang.O

嘿,有没有人有开发带有Java反射功能的Android应用程序的经验

我遇到了一个特殊的问题,正在寻求帮助

我的活动包中有一个活动和一个公共类, 假设它们是com.mypkg.MyActivity和com.mypkg.MyClass MyActivity中的我的代码:

Class clazz = MyClass.class;
Constructor[] constructors1 = clazz.getDeclaredConstructors();
Class cls = java.lang.Object.class;
Constructor[] constructors2 = cls.getDeclaredConstructors();
...
好的,现在我的问题是: 代码在模拟器上运行良好, 在实际设备上,可以正确检索那些预构建类的构造函数,如java.lang.Object或android.widget.FrameLayout,但MyClass的构造函数始终为空(即constructors1.length始终为零)


我很困惑,有什么帮助吗?

这可能是您尝试过的,但是您确定您的类(MyClass)在AndroidManifest.xml中声明正确吗?也许您的模拟器比实际设备更为宽松

这可能是您尝试过的,但是您确定您的类(MyClass)在AndroidManifest.xml中声明正确吗?也许您的模拟器比实际设备更为宽松

如果你通过class.forName(“你的类名”)引用你的类有什么区别?谢谢你的回复,我也尝试了class.forName,它运行的结果与MyClass.class相同。如果你通过class.forName(“你的类名”)引用你的类有什么区别吗?谢谢你的回复,我也尝试了class.forName,它运行的结果与MyClass.class相同。