【问题标题】:Android Unity pluginAndroid Unity 插件
【发布时间】:2015-07-23 05:37:23
【问题描述】:

我想在我的 AR 应用程序中使用 unity android 插件。该应用程序有一个 AR 相机、一个图像目标和一个 3d 对象。

在 ECLIPSE 上:

我在 Eclipse 上创建了一个默认的 android 应用程序。我点击自动构建并检查project name -> proeprties -> isLibrary。我在 Eclipse 项目上创建了一个名为 Bridge 的类。

Bridge.java

package com.tutorial.pluginforunity;
public class Bridge {

    public static int ReturnInt() {
        return 5;
    }
}

团结一致: 我创建了一个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 下。运行此应用程序时,我只看到黑屏。

【问题讨论】:

  • 您是否尝试过将此代码从Update 移动到OnGUI
  • 我通过切换行运行此应用程序推荐此行GUI.Label(new Rect(10, 10, 100, 20), "Return = " + BridgeForAndroid.ReturnInt());。运行时我看到黑屏。
  • 是的,你已经在问题中说过了。不过,您是否尝试过将此代码移至 OnGUI 方法?
  • 对不起 :) 我试过了,我看到了Return = 5。插件成功运行。我看不到实时摄像头视图。
  • 是的,因为您发布的代码中没有任何内容表明您应该看到实时摄像机视图。

标签: java android eclipse plugins unity3d


【解决方案1】:

要查看插件的返回值,请将代码从 Update 移动到 OnGUI

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-02
    • 1970-01-01
    相关资源
    最近更新 更多