PlayN Tripleplay不适用于Android Nexus 7

PlayN Tripleplay不适用于Android Nexus 7,android,playn,Android,Playn,我已经使用PlayN的Tripleplay框架定义了游戏的主菜单。不幸的是,我无法让它显示在我的Nexus7上 这真的很奇怪——如果我运行Java版本,一切都正常——但是每当我运行Android版本时,什么都不显示——日志表明整个UI都是构建的 有人在Android上使用Tripleplay框架时遇到过问题吗?Java运行良好 代码如下: public class MainMenuStateImpl extends AbstractState implements MenuState {

我已经使用PlayN的Tripleplay框架定义了游戏的主菜单。不幸的是,我无法让它显示在我的Nexus7上

这真的很奇怪——如果我运行Java版本,一切都正常——但是每当我运行Android版本时,什么都不显示——日志表明整个UI都是构建的

有人在Android上使用Tripleplay框架时遇到过问题吗?Java运行良好

代码如下:

public class MainMenuStateImpl extends AbstractState implements MenuState {

  private Interface ui;
  private GroupLayer groupLayer;

  @Inject
  public MainMenuStateImpl(StateManager stateManager) {
    super(stateManager);
  }

  @Override
  public void initialize() {
    PlayN.log().debug("initializing main menu");
    groupLayer = graphics().createGroupLayer();
    graphics().rootLayer().add(groupLayer);
    ui = new Interface();

    final Root root = ui.createRoot(AxisLayout.vertical().gap(15), SimpleStyles.newSheet());
    PlayN.log().debug("setting root to size " + graphics().width() + ", " + graphics().height());
    root.setSize(graphics().width(), graphics().height());
    stateManager.getImageCache().cache("img/menu_background.png", new Callback.Default<Image>() {

      @Override
      public void onSuccess(Image image) {
        // groupLayer.add(graphics().createImageLayer(image));
        root.addStyles(Style.BACKGROUND.is(Background.image(image)));
        groupLayer.add(root.layer);
        // graphics().rootLayer().add(root.layer);

        final Group buttons = new Group(AxisLayout.vertical().offStretch());
        root.add(new Label("RunRun:"), buttons);

        PlayN.log().debug("adding level groups to menu");
        final LevelGroupMetadataCache cache = (LevelGroupMetadataCache) stateManager.getContext()
        .get(ContextKeys.LEVEL_GROUP_METADATA_CACHE);
        for (final LevelGroupMetadata levelGroup : cache) {
          final Button button = new Button(levelGroup.getName());
          buttons.add(button);
          button.clicked().connect(new UnitSlot() {

            @Override
            public void onEmit() {
              stateManager.getContext().set(ContextKeys.LEVEL_GROUP,
              cache.get(levelGroup.getName()));
              stateManager.goTo(stateManager.getLevelGroupMenuState());
            }
          });
        }
        PlayN.log().debug("finished creating ui for main menu");
        PlayN.log().debug("ui = " + ui);
      }
    });
  }

  @Override
  public void destroy() {
    groupLayer.destroy();
  }

  @Override
  public void update(float delta) {
    ui.update(delta);
  }

  @Override
  public void paint(float alpha) {
    ui.paint(alpha);
  }
}
公共类MainMenuStateImpl扩展AbstractState实现MenuState{
专用接口用户界面;
私有分组层分组层;
@注入
public main自定义实现(StateManager StateManager){
超级(州经理);
}
@凌驾
公共无效初始化(){
PlayN.log().debug(“初始化主菜单”);
groupLayer=graphics().createGroupLayer();
graphics().rootLayer().add(groupLayer);
ui=新接口();
final Root=ui.createRoot(AxisLayout.vertical().gap(15),SimpleStyles.newSheet());
PlayN.log().debug(“将根设置为大小”+graphics().width()+,“+graphics().height());
root.setSize(graphics().width(),graphics().height());
stateManager.getImageCache().cache(“img/menu_background.png”,new Callback.Default()){
@凌驾
成功时的公共无效(图像){
//添加(graphics().createImageLayer(image));
addStyles(Style.BACKGROUND.is(BACKGROUND.image(image));
groupLayer.add(root.layer);
//graphics().rootLayer().add(root.layer);
最终组按钮=新组(AxisLayout.vertical().offStretch());
添加(新标签(“run:”),按钮);
PlayN.log().debug(“将级别组添加到菜单”);
最终LevelGroupMetadataCache缓存=(LevelGroupMetadataCache)stateManager.getContext()
.get(ContextKeys.LEVEL\u GROUP\u METADATA\u CACHE);
用于(最终级别组元数据级别组:缓存){
最终按钮按钮=新按钮(levelGroup.getName());
按钮。添加(按钮);
button.clicked().connect(新建UnitSlot()){
@凌驾
public void onEmit(){
stateManager.getContext().set(ContextKeys.LEVEL_组,
cache.get(levelGroup.getName());
stateManager.goTo(stateManager.getLevelGroupMenuState());
}
});
}
PlayN.log().debug(“主菜单的ui创建完成”);
PlayN.log().debug(“ui=“+ui”);
}
});
}
@凌驾
公共空间销毁(){
groupLayer.destroy();
}
@凌驾
公共无效更新(浮动增量){
更新(增量);
}
@凌驾
公共空隙涂料(浮动alpha){
ui.油漆(α);
}
}
所有日志语句都出现在我的logcat中,但没有呈现任何内容-仅在Android中-当我运行java版本时,一切正常

我完全不知道如何解决这个问题或怎么做


任何帮助都将不胜感激

事实证明,在java版本(使用guice 3.0)中,没有任何库在工作-我硬编码了我的方式,通过菜单到级别(使用box2d)-一切都在那里-我没有发现任何类或抛出异常-看起来库中没有任何东西在工作一切正常-android部署除了roboguice注入一切之外,没有任何第三方LIB可以工作。另外,showcase可以很好地部署到我的设备以及所有的tripleplay和box2d工作中,我不知道这里有什么问题。你试过模拟器吗?哪种第三方LIB?你自己为android构建LIB了吗?我无法尝试模拟器-无法在模拟器中使用lwjgl,因为我的计算机不支持它-第三方LIB是javax.inject、tripleplay 1.5和jbox2d 1.5.1,用于核心项目,java项目中的guice 3.0(工作正常),在android项目中,带有guice 3.0的roboguice 2没有aop。android版本的构建和部署,没有得到任何未找到类定义的错误-但它就像库从来没有做过任何事情-。。。这其实很奇怪