Codenameone 代码名为1的ios中的反射不起作用

Codenameone 代码名为1的ios中的反射不起作用,codenameone,Codenameone,我正在我的应用程序中使用下面的代码,它在android中运行良好,甚至在iphone模拟器上也可以,但在真正的iphone设备上不工作。如果有人能帮助我,我将不胜感激 Class clazz = Class.forName("com.logic.form.ClassName"); Screen screen = (Screen) clazz.newInstance(); screen.show(parameter); 你不应该那样做。虽然它“可能”工作,但它可能会有严重的问题,例如在Andro

我正在我的应用程序中使用下面的代码,它在android中运行良好,甚至在iphone模拟器上也可以,但在真正的iphone设备上不工作。如果有人能帮助我,我将不胜感激

Class clazz = Class.forName("com.logic.form.ClassName");
Screen screen = (Screen) clazz.newInstance();
screen.show(parameter);

你不应该那样做。虽然它“可能”工作,但它可能会有严重的问题,例如在Android上,我们会混淆类名,在iOS上,如果一个类未使用,它将被剥离

在Codename One中使用
Class.forName()
没有正当理由,因为移动设备不允许动态类下载或类路径魔法。。您可以使用类文字来获取动态代码,这些文字将适用于所有操作系统,例如:

Class clazz = com.logic.form.ClassName.class;

Cn1不支持正确的反射。但是Class.forName()和Class.newInstance()仍然可以工作。如果您可以访问设备日志(例如,通过USB将其连接到mac),它将显示堆栈跟踪,告诉您问题是否存在。