原地址:http://bbs.18183.com/thread-149758-1-1.html

本文内容为创建UNITY3D接入91SDK的DEMO的具体操作过程。本人水平有限,UNITY3D与Android如何交互的技术请大家参看雨松的博客。

我的开发环境: MAC系统, ECLIPSE, UNITY4.0

开发过程:

1.准备要UNITY为交互Android自备的CLASS.JAR文件。
   我的操作过程是:应用程序->UNTITY文件夹->UNITY->右键:显示包内容->CONTENTS文件夹->PLAYBACKENGINES文件夹->AndroidPlayer文件夹->BIN文件夹->CLASS.JAR【目录:/Applications/Unity/Unity.app/Contents/PlaybackEngines/AndroidPlayer/bin】复制出来备用。

2.新建Android项目,把CLASS.JAR复制到项目libs文件夹中,将91SDK的NdComPlatform.jar也复制到libs文件夹中,将 MainActivity extends UnityPlayerActivity ,将需要调用的安卓SDK方法写好。AndroidManifest.xml根据91SDK的要求进行配置。Android项目中不需要引入91SDK的RES文件。为修复Android4.0+系统转屏崩溃问题,在AndroidManifest.xml中所有的configChanges内增加"|screenSize"。
如:<activity Android:name="com.nd.commplatform.activity.SNSLoginActivity"

Android:configChanges="orientation|keyboardHidden|navigation|screenSize"
                        Android:theme="@Android:style/Theme.NoTitleBar.Fullscreen"
                        Android:windowSoftInputMode="adjustPan"
                        Android:windowBackground="@null"
                        Android:launchMode="singleTask"/>
<ignore_js_op>

<ignore_js_op>

 
3.然后,在项目上右键RUN AS->Android APPLICATION。进入项目目录->bin文件夹->classes文件夹->复制里面所有的文件粘贴到一个找好的目录中,如JARU3D这个文件夹中。
4打开终端,进入UARU3D这个文件夹,输入:jar -cvf myclass.jar *  回车,JARU3D文件夹中将多出:myclass.jar, 该文件做备用。
<ignore_js_op>

5.打开UNITY3D4.0,创建新UNITY项目后,在ASSETS文件夹下新建文件夹Plugins,在Plugins文件夹中新建Android文件夹,在Android文件夹中新建bin文件夹和libs文件夹,将myclass.jar复制到bin文件夹中,将91SDK的NdComPlatform.jar复制到libs文件夹中,将91SDK的res文件夹全部复制到Android文件夹中,将Android项目的AndroidManifest.xml复制到ANDORID文件夹下,把Android项目中的资源按照对应的文件夹复制到UNITY项目RES文件夹的对应文件夹内。
在ASSETS文件夹中创建UNITY调用Android的文件,将该文件拖动到MAIN CAMERA放开鼠标进行绑定。

<ignore_js_op>

6.UNITY打包为APK安装包进行DEMO效果测试。注意PLAYERSETTINGS配置中BUNDLE IDENTIFIER要和Android项目的package相同。

<ignore_js_op>

<ignore_js_op>

7.大功告成,参看胜利成果。
<ignore_js_op>

<ignore_js_op>

##李工文中提及文件-----老版本
Android项目: <ignore_js_op> u3dandroid.zip (3.77 MB, 下载次数: 1979) 
UNITY3D4.0项目: <ignore_js_op> u3dprj.zip (2.92 MB, 下载次数: 1692) 
UNTIYDEMO-APK包: <ignore_js_op> u3ddemo.apk.zip (9.68 MB, 下载次数: 4131) 
##SDK开发新做DEMO-----较新版本,非最新
SDK3.2.6新DEMO: <ignore_js_op> Unity3d_91SDK_Demo.zip (17.63 MB, 下载次数: 15824)

2013-8-2 18:04 上传

点击文件名下载附件

 

注意:manifest.xml里面的SNSControlCenterActivity和SNSLoginActivity的属性应为Android:configChanges="orientation|keyboardHidden|navigation|screenSize",
否则可能造成转屏崩溃,具体原因查询GOOGLE ADNROID官方网站。摘抄原文:
Note: If your application targets API level 13 or higher (as declared by the minSdkVersion and targetSdkVersion attributes), then you should also declare the "screenSize"    configuration, because it also changes when a device switches between portrait and landscape orientations.
"screenSize"     
The current available screen size has changed. This represents a change in the currently available size, relative to the current aspect ratio, so will change
when the user switches between landscape and portrait. However, if your application targets API level 12 or lower, then your activity always handles this
configuration change itself (this configuration change does not restart your activity, even when running on an Android 3.2 or higher device).Added in API level 13.

实操UNITY3D接入91SDK安卓版的更多相关文章

  1. MyBatis实操进阶版(一)

    MyBatis实操进阶版(一) 目前而言,持久层框架中,在业务实现灵活性上,无可出MyBatis之右者.具体原因,后续将逐步展开 ResultMap元素的设置 配置文件中,ResultMap元素的作用 ...

  2. QVM 实操记 - 18.12.28

    视频回放地址:https://i.iamlj.com/mp4/QVM-IMC-12.27-1080P.mp4 目录 目录 常规开发部署流程 准备工作 开发准备 网站部署 操作步骤 重装系统 LANP环 ...

  3. UNTIY3D接入91SDK的办法

    原地址: http://bbs.18183.com/thread-111324-1-1.html UNITY3D接入Android-SDK 方法一:把UNITY3D游戏打成安卓项目文件,修改安卓项目文 ...

  4. 《5天学会卡西欧fx-5800p之实操视频教程(初级)》目录和我的工作室现场曝光

    很多人给我讲,想让我录制一份卡西欧fx-5800p的视频教程,我也一直在准备,准备了半年,录制视频真的不是件容易的事,条件有限,而且工作也很忙,中途还会有想放弃的念头,真的是花费了我很多的心血,但不管 ...

  5. Appium常用Api实操

    本文是基于python语言在android上实操的,仅记录(忽略排版~~~) 会不时更新的: from appium import webdriver from selenium.webdriver. ...

  6. Docker安装MySql完整教程、实操

    docker:官网 docker:镜像官网:        镜像官网可以所有应用,选择安装环境:会给出安装命令,例如:docker pull redis 默认拉取最新的版本(指定版本:docker p ...

  7. mPaaS 小程序架构解析 | 实操演示小程序如何实现多端开发

    对于 mPaaS 小程序开发框架,想必读者们并不陌生.它源自于支付宝小程序框架,继承了易开发性.跨平台性及 Native 性能,不仅帮助开发者实现面向自有 App 投放小程序,还可快速构建打包,覆盖支 ...

  8. 从零实操基于WSL2 Docker部署Asp.Net Core项目

    前言 平日在公司里都是基于阿里Teambition中的飞流进行Docker部署Api项目或服务,已经习惯了那一套成熟的操作流程,开发和部署确实快捷方便,但是还没在自己的电脑上进行操作过,特别是Wind ...

  9. Iptables 实操

    目录 Iptables之实操 简介 名称概念: 四表中常用的表 Nat表 Filter表 iptables表和链的工作流程图 iptables过滤图 Iptables安装 Iptables 命令说明 ...

随机推荐

  1. java编程思想-java集合总结-基本概念

    1.java 容器类类库的用途是"保存对象",并将其划分为两个不同的概念: 1)Collection.一个独立元素的序列,这些元素都服从一条或多条规则.List 必须按照插入的顺序 ...

  2. jquery 获取 json文件内容后,将其内容显示到 下拉列表框中,再将下拉列表中的内容,显示到文本框中

    <script type="text/javascript"> $(function(){ $("#huoqv").click(function() ...

  3. JS字符串转换成json对象。。。。

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. mysql中文坑爹的东西

    1.首先pb需要utf8格式,所以由ansi转换成utf8格式才能传输 2.在接收端,需要将utf8转换成ansi才能用 3.在插入数据库之前需要将sql从ansi转换成utf8格式 4.数据库设置字 ...

  5. windows 修改hosts 脚本

    @echo off echo "请注意你的杀毒软件提示,一定要允许" echo. & pause @del C:\Windows\System32\drivers\etc\ ...

  6. 结合Hadoop,简单理解SSH

    在启动dfs和yarn时,需要多次输入密码,不但启动本机进程还有辅服务器启动那些节点也需要相应密码,主与辅服务器之间是通过SSH连接的,并发送操作指令 一.ssh密码远程登录 1.使用ssh连接另一台 ...

  7. Java可变参数传递中可以接收多个对象

  8. MacPorts安装32位动态库

    http://superuser.com/questions/63198/install-32-bits-ports-on-snow-leopard

  9. _SYS_LIB="-lm -lnsl -ldl"

    -lm  是指连接libm.so     意思是连接数学库, -lnsl  如果涉及RPC编程,必然需要libnsl.so,因此必须在编译选项里加入 -lnsl.      gcc 编译选项 -L是要 ...

  10. vim中添加molokai.vim 配色安装

    无意中发现知乎中讨论的话题: 你认为最好看的 Vim 配色方案(color scheme)是哪款? 网友回答 排在第一位的是:molokai 啊,最经典的配色 既然molokai这么经典,当然要用了. ...