QCAR 基于vuforia做扩展 Unity - Android Plugins
2014-07-23 15:32
267 查看
如何为unity写android插件,集成到基于vuforia。
接下来,我们按步骤操作:
1、创建一个unity项目,为便于参考我们称它为“VuforiaUnity”。
2、为unity导入Vuforia的实例包。
3、在Eclipse中创建一个新的Android项目,为便于参考编写AndroidPlugin,设MainActivity为“MyPluginActivity”。
4、在Eclipse中右键单击项目,去Properties > Java Build Path > Libraries,并添加以下两个库的外部jar(位于Assets/Plugins/Android/下的unity项目):Vuforia.jar和QCARUnityPlayer.jar
5、打开MyPluginActivity.java,修改成一下代码
6、右键单击项目,去Properties -> Android,勾选“IsLibrary”复选框将Android项目变成一个Library,这应该使Eclipse生成一个.jar文件,并将其存储在你的Eclipse项目的/bin文件夹中。
7、打开/ bin文件夹并将JAR库的文件夹复制到unity项目的“Assets/Plugins/Android/'”文件夹里。
8、打开并编辑AndroidManifest。xml文件位于相同的“Assets/Plugins/ Android /”目录。
9、mainactivity的名称替换为完全限定的活动名称,例如:“com.my.org.MyPluginActivity”。
10、创建一个c#脚本,称之为MyPluginCaller例如,并附在你的每一个场景中ImageTargets上(如。 Chips, Stones, Tarmac)。
11、复制下面的代码到您的脚本,脚本调用showMessage()方法时MyPluginActivity类目标检测:
ok 现在你的项目应该可以构建并运行在你的Android设备。
参考资料 https://developer.vuforia.com/resources/dev-guide/unity-android-plugins
接下来,我们按步骤操作:
1、创建一个unity项目,为便于参考我们称它为“VuforiaUnity”。
2、为unity导入Vuforia的实例包。
3、在Eclipse中创建一个新的Android项目,为便于参考编写AndroidPlugin,设MainActivity为“MyPluginActivity”。
4、在Eclipse中右键单击项目,去Properties > Java Build Path > Libraries,并添加以下两个库的外部jar(位于Assets/Plugins/Android/下的unity项目):Vuforia.jar和QCARUnityPlayer.jar
5、打开MyPluginActivity.java,修改成一下代码
package com.qualcomm.plugins; import android.os.Bundle; import android.widget.Toast; import com.qualcomm.QCARUnityPlayer.QCARPlayerNativeActivity; public class MyPluginActivity extends QCARPlayerNativeActivity { private Handler mUIHandler = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mUIHandler = new Handler(); } public void showMessage(final String message) { mUIHandler.post( new Runnable() { public void run() { Toast.makeText(MyPluginActivity.this, message, Toast.LENGTH_SHORT).show(); } } ); } }
6、右键单击项目,去Properties -> Android,勾选“IsLibrary”复选框将Android项目变成一个Library,这应该使Eclipse生成一个.jar文件,并将其存储在你的Eclipse项目的/bin文件夹中。
7、打开/ bin文件夹并将JAR库的文件夹复制到unity项目的“Assets/Plugins/Android/'”文件夹里。
8、打开并编辑AndroidManifest。xml文件位于相同的“Assets/Plugins/ Android /”目录。
9、mainactivity的名称替换为完全限定的活动名称,例如:“com.my.org.MyPluginActivity”。
10、创建一个c#脚本,称之为MyPluginCaller例如,并附在你的每一个场景中ImageTargets上(如。 Chips, Stones, Tarmac)。
11、复制下面的代码到您的脚本,脚本调用showMessage()方法时MyPluginActivity类目标检测:
public class MyPluginCaller : MonoBehaviour, ITrackableEventHandler { private TrackableBehaviour mTrackableBehaviour; void Start() { mTrackableBehaviour = GetComponent<TrackableBehaviour>(); if (mTrackableBehaviour) { mTrackableBehaviour.RegisterTrackableEventHandler(this); } OnTrackingLost(); } public void OnTrackableStateChanged( TrackableBehaviour.Status previousStatus, TrackableBehaviour.Status newStatus) { if (newStatus == TrackableBehaviour.Status.DETECTED || newStatus == TrackableBehaviour.Status.TRACKED || newStatus == TrackableBehaviour.Status.EXTENDED_TRACKED) { OnTrackingFound(); } else { OnTrackingLost(); } } private void OnTrackingFound() { AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity"); //Invoke the "showMessage" method in our Android Plugin Activity string message = "Detected trackable: " + mTrackableBehaviour.TrackableName; jo.Call("showMessage", message); } private void OnTrackingLost() { } }
ok 现在你的项目应该可以构建并运行在你的Android设备。
参考资料 https://developer.vuforia.com/resources/dev-guide/unity-android-plugins
相关文章推荐
- 基于 vuforia + unity + android studio 的AR开发(1)
- 基于 vuforia + unity + android studio 的AR开发中遇到的问题
- 基于 vuforia + unity + android studio 的AR开发(2)
- Vuforia How To Use Android Plugins in Unity Apps
- Android蓝牙聊天程序的扩展开发(基于Google Sample,类QQ设计)
- Unity开发基于Android平台的脑波游戏教程
- Netroid:强大、快速、易用、可扩展基于Volley实现的Android Http库
- 基于AndroidAnnotation扩展的一个异步调用框架
- 2.关于Unity -Vuforia -Android 开发 ,平台的搭建(极品菜鸟完整版) 续
- 解决Unity5+Vuforia+Network本地联机发布到Android上白屏的问题
- 初试Android基于Vuforia开发AR
- UnityEditor扩展 - Vuforia license like文本输入框
- 基于rtsp的手机视频点播实现和研究(扩展支持android, ios平台)
- (Android版)AR 现实增强 高通 Vuforia QCAR SDK环境搭建
- Android Plugins For Unity:Android Studio
- Easy Code Scanner + Vuforia + unity5.3.4f1 + android + ios
- 1.关于Unity -Vuforia -Android 开发 ,平台的搭建(极品菜鸟完整版)
- 基于android-uitableview扩展-uilistview项目
- android 4.0.1 webkit 基于JSC的JS 扩展
- 关于Unity -Vuforia -Android 开发 ,平台的搭建 (续)