Unity调用android平台java代码

最近因为公司需要开始研究Unity平台的sdk接入。首先从调用最简单的java代码开始。

1.首先建立android lib项目。

package unityPlugin;

import com.unity3d.player.UnityPlayer;

import android.widget.Toast;

public class UnityPluginTest {
	public static void show(){
		UnityPlayer.currentActivity.runOnUiThread(new Runnable(){
			@Override
			public void run() {
				Toast.makeText(UnityPlayer.currentActivity, "调用成功", Toast.LENGTH_LONG).show();
			}

		});
	}
}

2. 包含有插件.class文件的.jar包。当然也可以采用构建项目,然后取bin目录下生成的jar包,试过这种方式也是可行的。

3.将jar包放入到unity项目Assets->Plugins->Android文件夹

4.编写调用java方法的代码

using UnityEngine;
using System.Collections;

public class Test : MonoBehaviour {

	// Use this for initialization
	void Start () {

	}

	// Update is called once per frame
	void Update () {

	}
	public void PrintTest(){
		var jo = new AndroidJavaObject ("unityPlugin.UnityPluginTest");
		jo.CallStatic("show");
	}
}

 

参考文章:http://game.ceeger.com/Manual/Plugins.html

     http://wenku.baidu.com/link?url=sDPRg0Fyqf-uadzbAPK4RhT_QwhHS_OyE-xebWr1NQ6_n5nV37fxnbWcwa27xxw7mwMaFstnSCzydc3SY7xfXiw5P48oYX7PgQSzYkUvOj3

   http://www.xuanyusong.com/archives/667/

时间: 2024-10-11 11:20:53

Unity调用android平台java代码的相关文章

针对Android平台我们需要学习如何在Unity中调用Android的JAVA代码。

Unity for Android 比较特殊,Unity for IOS 打包是将XCODE工程直接交给开发者,开发者可以在工程的基础上继续添加新的视图,最后由开发者自行打包生成IPA包,发布程序.而Unity for Android打包直接生成APK包,等于说源代码开发者是看不到的,但是Unity的自身确实有些局限,针对Android平台我们需要学习如何在Unity中调用Android的JAVA代码.本章我们的目标是使用Unity的脚本打开Activity.首先我们创建一个普通的Android

Android平台Java代码的条件编译问题

在代码的开发过程中,不管是C/C++也好,Java也罢,都要面对在平台移植的问题, 所以不可避免的要考虑条件编译的问题. 在C/C++代码的开发中,条件编译的实现很容易实现,可以分成二种:一种是在单个代码文件中通过 #ifdef ... #endif 或者 #if ... #endif 的方式选择性编译文件中的代码,另一种是在Makefile中通过宏判断来选择性编译某个文件.在Java代码的开发中,实现条件编译则没有直接对应的方法,但是仍然可以采用变通的方法来实现条件编译. 对于单个文件内的的代

Unity调用Android配置方法

方法一:发布eclipse android工程(如图勾选),如同IOS发布xcode一样,在eclipse中编写调用 方法二: 操作过程配置要点: 1.新建Android工程,注意包路径比如我的是com.zx,其他步骤直接下一步完成 2.勾选Mark this project as a library 3.新建Android工程编写相关接口方法后,复制bin文件(只需要zx.jar).res资源包.AndroidMainfest.xml配置文件 4.复制到Unity工程中Plugins/Andr

unity调用Android功能

Unity需要调用Android的功能主要涉及两种方式,一种是使用Android的插件,另一种是导出为GoogleAndroid 工程,进行处理.用途是使用第三方的插件 或者 接入渠道的SDK. 1:使用Android的插件处理. 具体过程,搜索引擎有很多结果,不再赘述. 主要要注意: 导出的jar的时候直接使用Eclipse中的export选项,选择src中的所有以及gen中的R.java即可.另外unity-classes.jar不需要再次包含. 当需要同时使用多个插件的时候: Androi

再谈Unity调用Android的Activity

这段时间在研究Unity4.3开发环境下,如何调用由Android SDK4.4.2写的Activity.参考了很多网上的博客,百度出了几十篇大部分都是转载雨松MOMO的,这里必须向雨松MOMO表示敬意!但雨松MOMO写的博客太旧了,不少内容已经过时,我严格按他说的步骤进行,还是出了问题,所以本博客就是告诉大家在Unity4.3+Android SDK4.4.2环境,起动Activity的细节. 我这篇博客不会从零讲起,所以首先给出两个重要的链接,大家应该看一下: 第一个是雨松MOMO的  ht

jsp页面:js方法里嵌套java代码(是操作数据库的),如果这个js 方法没被调用,当jsp页面被解析的时候,不管这个js方法有没有被调用这段java代码都会被执行?

jsp页面:js方法里嵌套java代码(是操作数据库的),如果这个js 方法没被调用,当jsp页面被解析的时候,不管这个js方法有没有被调用这段java代码都会被执行? 因为在解析时最新解析的就是JAVA代码,不管写哪里,都会最新被解析

JniHelper调用java静态和非静态方法总结(即cocos2dx中调用android平台下显示第三方广告)

调用非静态方法首先就是调用的静态方法得到要调用的java的类对象然后通过调用minfo.env->CallVoidMethod(activityObj, minfo.methodID);方法把对象和要调用的方法以及参数(如果有 )传递个java类对象中的非静态方法: java类: // c++中調用的方法public static Object rtnActivity() {System.out.println("----------rtnActivity");return ma

Unity调用Android的Activity

之前http://shuxiayeshou.blog.51cto.com/4452347/1932216 写了关于Unity与Android结合所遇到的问题及解决方法 总结一下,Unity做一个简单的场景,AndroidStudio建一个简单的项目,其中MainActivity是要继承自 UnityPlayerActivity的,这样Unity程序可以调用Android端MainActivity的方法了 那如果Android项目中还有一个NewActivity,我们要通过Unity把他打开咋办呢

Unity调用Android类方法

1.  添加Unity的classes.jar文件 创建一个Android工程AndroidUnityDemo. 由于Unity的版本不同,直接在Unity安装包文件夹里面搜索classes.jar文件,如果有多个classes.jar文件,一般选择的是mono/Release文件夹下的classes.jar文件. 将classes.jar文件放在app文件下的libs文件夹下. 然后,更新一下. 2.  编写Android类 打开MainActivity.java类,让MainActivity