原地址:http://blog.csdn.net/u012085988/article/details/17436191

1、unity调android函数

  1. AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
  2. AndroidJavaObject activity = jc.GetStatic<AndroidJavaObject>("currentActivity");
  3. activity.Call("func")

activity为当前Activity,call函数原型call<re-type>(fName, args)。尖括号内为返回值,第一个参数是函数名,第二个是参数

注意:参数个数问题

1、个数相同,且 大于 1 个。 可执行

2、unity带入参数少于Android定义参数个数。错误:NoSuchMethodError

3、unity带入参数多于Android定义参数个数。错误:NoSuchMethodError

注意:Android端有重载函数时

根据参数表,找到相应的函数

注意:jni根据类似于(Ljava/lang/String;Ljava/lang/String;I)V这种格式来匹配函数。所以参数个数,参数类型必须一一对应

2、android回调unity函数

  1. UnityPlayer.UnitySendMessage("AndroidManager", "AndroidCallBackUnlockGame", "");

第一个参数是gameObject,第二个参数是函数名,第三个是参数(字符串)

注意:名字区分大小写。并且参数类型,参数个数都要一一对应。

注意:第三个参数不能为null,若要传递一个空字符串,可以写"",但不能写null。否则会崩溃!

3、android中UI处理

  1. runOnUiThread(new Runnable(){
  2. public void run(){
  3. Text(msg);
  4. }
  5. });

unity 与 android 协调工作 注意事项的更多相关文章

  1. Unity - 接入Android SDK

    在网络上,关于Unity与Android如何进行交互,雨松MOMO大神已经有两篇文章简单介绍了如何操作(1)Unity3D研究院之打开Activity与调用JAVA代码传递参数(2)Unity3D研究 ...

  2. Unity开发Android应用程序:调用安卓应用程序功能

    开发环境: Eclipse3.4 + adt12 + jdk6 + AndroidSDK2.2 Unity3.4 + windows7 测试设备: HTC Desire HD 本文要涉及到的几个重点问 ...

  3. Unity开发Android应用优化指南(下)

    http://forum.china.unity3d.com/thread-27044-1-1.html 在Unity开发Android应用优化指南(上)一文中,从游戏性能,脚本等方面进行了分析和总结 ...

  4. Unity开发Android应用优化指南(上)

    http://forum.china.unity3d.com/thread-27037-1-2.html 如今越来越多的开发者使用Unity开发Android及iOS项目,开发过程中难免会遇到一些性能 ...

  5. 【Unity与Android】01-Unity与Android交互通信的简易实现

    前言 使用Unity也有不短的时间了,安卓包也打过不少,但是对Unity与Android的交互却知之甚少. 因工作需求,需要在Android平台接一些sdk(扩展功能).我就借此机会就了解了下Unit ...

  6. Unity与Android之间的交互之AndroidManifest

    https://blog.csdn.net/qq_15003505/article/details/70231975 AndroidManifest,中文名一般称之为清单文件.它描述了应用程序的组件的 ...

  7. Unity调用Android类方法

    Unity调用Android类方法 1.  添加Unity的classes.jar文件 创建一个Android工程AndroidUnityDemo. 由于Unity的版本不同,直接在Unity安装包文 ...

  8. Unity在Android和iOS中如何调用Native API

    本文主要是对unity中如何在Android和iOS中调用Native API进行介绍. 首先unity支持在C#中调用C++ dll,这样可以在Android和iOS中提供C++接口在unity中调 ...

  9. Unity响应Android的返回键,退出当前Activity

    一:使用 Application.Quit() public void Update() { if(Input.GetKeyDown(KeyCode.Escape)) Application.Quit ...

随机推荐

  1. Html5 audio stop

    //html5 stop audio play function stopPlay(el){ el.pause(); el.currentTime = 0; } 使用: var el = docume ...

  2. Android之调试打印

  3. 理解Java的引用对象

    SoftReferenceWeakReference 的特性基本一致, 最大的区别在于 SoftReference会尽可能长的保留引用,不会在GC时就回收对象,而是直到JVM 内存不足时才会被回收(虚 ...

  4. spring3.2.0与mybatis3.2.7整合出错--Failed to read candidate component class--nested exception is java.lang.IllegalArgumentException

    错误信息如下: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate com ...

  5. ###STL学习--适配器

    点击查看Evernote原文. #@author: gr #@date: 2014-08-24 #@email: forgerui@gmail.com STL中的适配器. ###stl学习 |--迭代 ...

  6. nginx install in centos

    1.在nginx下载rpm包,如nginx-release-centos-6-0.el6.ngx.noarch.rpm ,并安装(可用yum直接安装): 注:rpm包只是提供一个nginx源. 2.使 ...

  7. 关于atoi的实现

    一.关于atoi atol的实现 __BEGIN_NAMESPACE_STD __extern_inline double __NTH (atof (__const char *__nptr)) { ...

  8. wait(...) notify() notifyAll()

    简介 wait.notify.notifyAll是Java中3个与线程有关的方法,它们都是Object类中的方法. 其中,wait方法有3个重载形式: 1.wait() 2.wait(long tim ...

  9. 第28条:利用有限制通配符来提升API的灵活性

    参数化类型是不可变的.对两个不同类型T1和T2而言,List<T1>与List<T2>没有父子类型关系. 考虑: public class Stack<E> { p ...

  10. 在JQuery和Js中,如何让ajax执行完后再继续往下执行 async

    async (默认: true) 默认设置下,所有请求均为异步请求.如果需要发送同步请求,请将此选项设置为 false.注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行. var t ...