• (转)Unity3d Android SDK 接入方法详解


    缺少SDK接入经验,可能都不知道要如何在android中调用Unity里的方法,这篇文章就给大家分享下接入Android SDK的方法,和怎么去做一个方便Unity接入的SDK。
     
    一、首先要掌握一些Unity的基础知识
    Plugins:插件目录,编译项目时优先编译
    Android:存放安卓需要的文件等
    bin:存放自己编写的Jar包
    libs:存放第三方编译的包
     
    二、Eclipse中需要执行的步骤:
     
    1. 用eclipse创建安卓工程:
     
    (1) 点击File->New->Android Application Project
     
    Minimum Required SDK:最小的SDK版本
     
    需要特别注意的是,Package Name:com.wwp.mydemo,需要跟Unity中 Bundle Identifier的名称保持一致。
     
    (2) 分析一下安卓工程的目录
     
    • src:写自定义的方法,与unity直接交互的地方
    • libs:存放第三方Jar包,即Unity Libs文件夹下的Jar
    • 资源目录,一般需要全部copy到Unity Android目录下
    • AndroidManifest.xml
     
    2. 导入Unity中的Jar包,实现Unity脚本和Eclipse脚本的相互
     
    将classes.jar 拖到Eclipse中的libs文件夹下
     
    3. 打开src->com.wwp.mydemo->MainActivity.java文件开始修改
     
    把不需要的方法先注释掉了,红框中是修改的部分,因为之前有把Unity中的classes.jar包导进来,所以这里用到UnityPlayerActivity。
     
    4. 用Eclipse导出Jar包(放到Unity项目中)
     
    file->Export
     
     
    5. 将Eclipse里的res文件夹和AndroidManifest.xml文件放进unity Assets->Plugins->Android文件夹中
     
    Canvas上挂一个Test脚本,添加一个button按钮
    using UnityEngine;
    using System.Collections;
    using UnityEngine.UI;
    public class test : MonoBehaviour {
        AndroidJavaClass jc;
        AndroidJavaObject jo;
        public Text name;
        void Start()
        {
            jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
            jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
        }
        public void OnBtnClick()
        {
            jo.Call("UnityUseEclipse");
        }
        public void andToU3dCallback(string str)
        {
            name.text = str;
        }
    }
    下面解释一下unity的代码 Call: Unity调用Android的方法,参数就是方法名。
    android 调用Unity的方法? UnityPlayer.UnitySendMessage("Canvas", "andToU3dCallback", "exit");
    第一个参数是unityobj的名字,第二个参数是挂在obj上的脚本里的方法名,第三个是方法参数。
     
    6. AndroidManifest.xml有必要了解一下,这个文件是Android应用的入口文件
     
    7. 最后用unity打出APK包,放手机上就可以测试了,编辑器状态下,Plugin里是不会被启用的,所以要放在手机上测试。
     
    需要注意的3点:
    • 包名要一致 
    • 安卓里的资源要放在 Assets->Plugins->Android文件夹中 
    • Eclipse导出Jar包时不需要把libs文件夹下的classes.jar包和android-support-v4.jar包一起导出,因为unity里已经有这些jar包了,当然如果你非要打进来,再放到unity plugins文件夹下,也没关系,因为最终打出的apk包只会包含一份的。
    来自:https://blog.csdn.net/huaixiaoniu/article/details/79225320

    原文链接

    著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

  • 相关阅读:
    Windows Phone 7(WP7)开发 自订磁贴(深度链接)
    Windows Phone 7(WP7)开发 在ViewModel中使用NavigationService
    Windows Phone 7(WP7)开发 显示长文本(高度大于2000px)
    类属性生成器(小程序)
    Windows Phone 7(WP7)开发 ListBox的分页加载
    Windows Phone 7(WP7)开发工具 查看独立存储空间中数据库内容
    Windows Phone 7(WP7)开发 获取网络状态
    发布一个XNA写的小雷电源码
    用python来个百度关键词刷排名脚本
    win7下 VirtualBox虚拟机开机后台自启动
  • 原文地址:https://www.cnblogs.com/wodehao0808/p/15655417.html
Copyright © 2020-2023  润新知