我想在我的AR应用程序中使用unity android插件。该应用程序有一个AR相机,一个图像目标和一个3d对象。
ON ECLIPSE:
我在eclipse上创建了一个默认的android应用程序。我自动点击构建并检查project name -> proeprties -> isLibrary
。我在eclipse项目上创建了一个名为 Bridge 的类。
Bridge.java
package com.tutorial.pluginforunity;
public class Bridge {
public static int ReturnInt() {
return 5;
}
}
ON UNITY:
我创建了一个BridgeForUnity.cs
文件。它的一部分:
using UnityEngine;
using System.Collections;
using System;
using System.Runtime.InteropServices;
public class BridgeForAndroid : MonoBehaviour {
#if UNITY_ANDROID
//&& !UNITY_EDITOR
public static int ReturnInt () {
AndroidJavaClass ajc = new AndroidJavaClass("com.tutorial.pluginforunity.Bridge");
return ajc.CallStatic<int>("ReturnInt") ;
}
#endif
void Start () {
}
void Update () {
}
}
我修改附加到图像目标的DefaultTrackableEventHandler.cs
。
private void Update() {
#if UNITY_ANDROID
GUI.Label(new Rect(10, 10, 100, 20), "Return = " + BridgeForAndroid.ReturnInt());
#endif
if (Input.GetKeyDown(KeyCode.Escape)) { Application.Quit(); }
}
我在eclipse项目中的bin文件夹下复制jar文件。我将它粘贴在Assets / Plugins / Android下。当我运行这个应用程序时,我只看到黑屏。
答案 0 :(得分:0)
要查看插件的返回值,请将代码从OnGUI
移至Update
。