版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、从 Unity 到 Eclipse我们还可以将 Unity 工程导出为 eclipse 工程,然后再导入到 eclipse 中,听起来有些麻烦,但对于有些 Android 接口,不得不这么做,由于有些时候使用在Unity 中导入.jar 的方法无法使其正常工作。在下面的例如中,我们仍将在Unity 中显示一个 Android 对话框,但这次是将Unity 工程导入到 eclipse 中。eclipse 与 Unity 工程之间的通信我们将使用Unity 的 UnitySendMessage 函数完成,这个做法与在IOS 平台是一样的。导出eclipse 工程1翻开光盘名目chapter10_A
2、ndroid_Plugin_Start内的 Unity 工程。2翻开角本AndroidAPP.cs,添加代码如下:/ Android 的Activityprivate AndroidJavaObject activity;/ Use this for initialization void Start / 当前玩耍体的名字 = “AndroidManager“;/ 获得Android ActivityAndroidJavaClass jc = new AndroidJavaClass(“com.unity3d.player.UnityPlayer“); activity =
3、jc.GetStatic(“currentActivity“);void OnGUIGUI.skin=m_skin;if (GUI.Button(m_showAndroidDialog, “显示 android 对话框“)string args=new string2; args0=“Hello“;args1=“World“; activity.Call(“HelloWorld“, args);Unity 手机网页玩耍开发第 10 章Android 玩耍/ 转变摄像机背景颜色为红色,将在 eclipse 中使用SendMessage 执行void AndroidCallBackCamera.m
4、ain.backgroundColor = new Color(1.0f, 0, 0);这里的代码与前一节例如中的代码相像,增加了一个AndroidCallBack 函数,它的作用是转变摄像机背景的颜色,我们将在eclipse 中使用SendMessage 执行这个函数。在 Start 函数中,我们将当前玩耍体的名字改为AndroidManager,在 eclipse 工程中,我们将查找这个名字传送消息。将当前工程的Bundle Identifier 设为 ject.helloworld,稍后在 eclipse 工程中设置的Package Name肯定要与它一样。在Unity 菜
5、单栏选择【File】【Build Settings】,确定当前工程已转为Android 平台, 选中 Create Eclipse project,然后选择 Export 将当前工程导出为 eclipse 工程,如图 10-30 所示。图 10-30 导出为eclipse 工程设置导出的eclipse 工程下面的工作将在 eclipse 中完成,实际上,从 Unity 中导出的 eclipse 工程并不能直接使用,我们需要将其设为库,然后在另一个建的eclipse 工程中引用这个库。在 eclipse 的菜单栏选择【File】【Import】,然后选择 Existing Android Cod
6、e Into Workspace导入上一节从Unity 中导出的eclipse 工程,如图10-31 所示。图 10-31 导入Android 工程在 eclipse 的菜单栏选择【Project】【Properties】,选中 Is Library,将当前工程设为库,如图 10-32 所示。图 10-32 设置为库创立用于公布的eclipse 工程下面,我们将创立一个的eclipse 工程,引用Unity 导出的eclipse 工程。1创立一个的 eclipse 工程,留意 Package Name 肯定要与 Unity 工程中的 BundleIdentifier 全都。在创立工程的过程中不
7、要选中Create Activity,我们将手工创立Activity。2选择建的工程,在菜单栏选择【 Project】【Properties】,然后选择 Add,选择Unity 导出的eclipse 工程,将其引用到当前工程,如图10-33 所示。图 10-33 引用另一个工程确定选择建工程,在菜单栏选择【 File】【 New】【 Class】创立一个名为MainActivity的类,Package 名字与当前工程的Package Name全都,如图10-34 所示。图 10-34 创立Activity在 eclipse 的菜单栏选择【Project】【Properties】,然后选择 Ja
8、va Build Path,选择Add External JARs,扫瞄 Unity 安装名目 EditorDataPlaybackEnginesandroidplayerbin,选择 classes.jar,将其添加到当前的eclipse 工程中。选择从 Unity 导出的 eclipse 工程,将 assets 中的文件拖拽到建的Helloworld 工程的assets 名目内,如图10-35 所示,左边是从Unity 导出的工程,右边是创立的工程名目。图 10-35 工程名目翻开MainActivity.java,添加代码如下:package ject.helloworld
9、;import android.os.Bundle;import android.app.AlertDialog;import android.content.DialogInterface;import com.unity3d.player.UnityPlayer;import com.unity3d.player.UnityPlayerActivity;public class MainActivity extends UnityPlayerActivity Overrideprotected void onCreate(Bundle savedInstanceState) super.o
10、nCreate(savedInstanceState);/ 在Unity 中调用的函数protected void HelloWorld(final String title, final String content)runOnUiThread(new Runnable public void run MakeDialog(title, content);Unity手机网页玩耍开发第 10 章Android 玩耍);/ 显示对话框public void MakeDialog(String title, String content)AlertDialog.Builder builder =n
11、ew AlertDialog.Builder(MainActivityt.his);builder.setTitle(title).setMessage(content).setCancelable(false).setPositiveButton(“OK“,new DialogInterface.OnClickListenerpublic void onClick(DialogInterface dialog,int which) UnityPlayer.UnitySendMessage(“AndroidManager“, “AndroidCallBack“, “););builder.sh
12、ow;这里的代码与前一个Hello World 例如中的代码类似,不同的地方是,在按对话框OK 按钮后,使用 UnitySendMessage 向 Unity 的玩耍体 AndroidManager 发送了一个消息,执行AndroidCallBack函数,使摄像机背景变为红色。翻开工程的AndroidManifest.xml,在 Application 标签中添加 Activity 设置,如下所示:在菜单栏选择【Run】【Run】,选择 Android Application,在 Android 设备上测试程序。图 10-36 测试Android 程序在 Android 设备上运行程序,效果与之前的例如类似,但在按OK 按钮后,摄像机背景会变为红色。公布程序将 Unity 工程导入到eclipse 后,只能在eclipse 中公布程序,实际上在这里设置比在Unity中要简洁一些,步骤如下: 选择要公布的工程, 右键选择【Android Tools】 【Export Signed Application Package】,在导出窗口,选择 Create new keystore,输入密码将 keystore 文件保存到指定位置,如图 10-37 所示。图 10-37 创立keystore在这里填写keystore 信息,留意Validity(years)通常设为 50 年以上,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 常见的股权转让协议样本
- 标准供货合同格式指南
- 2024年度资产处置债务协议书
- 工程地质勘察合同样本
- 标准二手房合同范本
- 房产项目转让协议范本
- 包含子女抚养条款的离婚协议书
- 食品报废处理合作协议书
- 油漆代理销售合同
- 2024年离婚协议书范本参考
- 二年级数学上册教案 4、除法的初步认识 苏教版
- 国风漫画人物课程设计
- 2024至2030年中国硬质合金行业现状调查及前景策略分析报告
- 人教版(2024)八年级上册物理第2章《声现象》单元测试卷(含答案解析)
- 2024国家应对气候变化战略研究和国际合作中心招聘历年高频考题难、易错点模拟试题(共500题)附带答案详解
- 2023-2024学年北京市朝阳区陈经纶中学分校八年级(上)期中数学试卷【含解析】
- 2024年高中物理 第二章 第2节 匀变速直线运动的速度与时间的关系教案 新人教版必修1
- 2023智能财税赛项-赛题样题(高职组)
- 中学历史探究教学调查问卷及分析报告
- 电阻的实验报告
- 【课件】Unit+1++Reading+and+Thinking课件人教版选择性必修第二册
评论
0/150
提交评论