2

我一直在尝试使用“UnityPlayer.UnitySendMessage("Cube", "Test","HELLO") 通过我的 Android 应用程序与我的 Unity C# 脚本进行通信 - 其中“Cube”是我的 Unity 对象,“Test”是它正在使用的 C# 脚本中存在的方法和“HELLO”是我要传递的消息字符串。

此行放在我的 onClick 函数中,如下所示:

      ImageButton right_button = (ImageButton) findViewById(R.id.right_arrow);
      right_button.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            UnityPlayer.UnitySendMessage("Cube", "Test","HELLO");
       }
      });

但是,当我运行我的 android 应用程序时,只要单击此按钮,就会出现此错误:

    09-11 14:22:37.526: E/AndroidRuntime(1330): java.lang.NoClassDefFoundError:         com.unity3d.player.UnityPlayer

我的构建路径中也包含了 classes.jar。还有什么我错过的吗?

提前致谢!

4

2 回答 2

0

检查 class.jar 文件是否在项目的构建路径中。如果是,请检查它是否被选中(已标记复选框)。

提示:如果您收到 ClassDefNotFound 运行时错误(或类似错误),您可能需要执行以下额外步骤:

转到 Project > Properties > Java Build Path -> Order and Export 选项卡并检查(勾选)classes.jar、Android xy 和 Android Dependencies 项;然后应用并重建probject。

于 2013-10-16T12:54:32.157 回答
0

Happened to me the other time too. I clean, re-link and rebuild my eclipse project. Re-Export my jar file to unity and also restart Unity. Build again and the error is gone.

于 2014-01-17T07:52:56.730 回答