AndroidStudio导出 .jar文件,在Unity里使用

开发环境:as2.3.2.0,u3d5.6.0

as部分:

1.新建工程时的最低版本跟u3d中相同

2.Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes 下,复制 classes.jar 文件到Android项目的libs目录下

3.build.gradle

更改为

apply plugin: 'com.android.library'

android {

compileSdkVersion 25

buildToolsVersion "25.0.3"

defaultConfig {

//applicationId "com.test.an525"

minSdkVersion 24

targetSdkVersion 25

versionCode 1

versionName "1.0"

testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

}

}

}

dependencies {

compile fileTree(dir: 'libs', include: ['*.jar'])

androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {

exclude group: 'com.android.support', module: 'support-annotations'

})

compile files('libs/classes.jar')

}

主要是以下内容的更改

4.AndroidManifest.xml

修改为

package="com.test.an525">

android:label="@string/app_name"

android:supportsRtl="true"

>

intent-filter>

activity>

application>

manifest>

5.MainActivity.java 修改为

package com.test.an525;

import android.os.Bundle;

import android.widget.Toast;

import com.unity3d.player.UnityPlayerActivity;

public class MainActivity extends UnityPlayerActivity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

}

public void ShowToast(final String msg){

// 需要在UI线程下执行

runOnUiThread(new Runnable() {

@Override

public void run() {

Toast.makeText(getApplicationContext(),msg,Toast.LENGTH_LONG).show();

}

});

}

}

6.删除activity_main.xml

7.删除androidTest和Test

8.Build apk完以后,找到\app\build\outputs\aarapp-debug.aar 文件,用压缩包打开取出根路径下的.jar文件并且和\app\src\main\AndroidManifest.xml文件一起放到u3d的 Assets\Plugins\Android\ 目录下

u3d部分:

1.c#脚本,随便用什么触发

public void BtnShwMessage()

{

//AndroidJavaClass:通过指定类名可以构造出一个类

AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");

// UnityPlayer这个类可以获取当前的Activity

// currentActivity字符串对应源码中UnityPlayer类下 的 Activity 变量名。

AndroidJavaObject jo = jc.GetStatic("currentActivity");

// 在对象上调用一个Java方法

jo.Call("ShowToast", "Unity 调用了这个方法");

}

2.包名和最小sdk号设置

3.运行结果

参考:

1.http://539go.com/index.php/archives/201611/294.html

2.http://blog.csdn.net/u012322710/article/details/52790506

3.http://blog.csdn.net/yang8456211/article/details/51331358

u3d android,u3d与安卓交互(Android studio)相关推荐

  1. 提供给大家一些Android好资料---安卓巴士Android开发神贴整理

    安卓巴士Android开发神贴整理 http://www.apkbus.com/android-19658-1-1.html 分享45个android实例源码,很好很强大.收藏吧 http://www ...

  2. linux和安卓交互,Android中webview和js之间的交互及注意事项

    1.Android中利用webview调用网页上的js代码. Android 中可以通过webview来实现和js的交互,在程序中调用js代码,只需要将webview控件的支持js的属性设置为true ...

  3. 安卓Android与H5双向交互MathJax展示数学公式(源码+解析)

    安卓Android与H5双向交互MathJax展示数学公式(源码+解析) 博主就今天周五又做了个需求(安卓Android与H5交互),原来上线的功能是服务器配置过来的学习报告(一个H5页面)并提供原始 ...

  4. 安卓工作室 android studio 的 汉化 美化 定制 Android studio's Chinesization beautification customization

    安卓工作室 android studio 的 汉化 美化 定制 Android studio's Chinesization beautification customization 作者:韩梦飞沙 ...

  5. Win10安卓模拟器Visual Studio Emulator for Android使用简介(转)

    Visual Studio Emulator for Android是微软官方发布的独立版本的安卓模拟器,这款软件可以让安卓应用开发者更加轻松的用Visual Studio编写Android应用,据说 ...

  6. 安卓(Android studio)编写一个计算器,可以连续加减乘除,可加小数点,不包含括号以及加减乘除优先算法。

    安卓(Android studio)编写一个计算器,可以累加,可加小数点,不包含括号以及加减乘除优先算法. 首先需要在res目录下的layout文件下创建一个xml文件进行界面的布局设计,接着在Jav ...

  7. java 安卓调试,Android Studio(二十一):调试你的应用

    Android Studio包含了一个调试器,允许你调试运行在Android虚拟机或连接的Android设备的应用.通过Android Studio的调试器,你可以: 1. 选择你调试设备的app 2 ...

  8. 【Unity3D】Android 打包 ④ ( Android 工程打包 | Unity 中导出安卓工程 | Android Studio 打开 Unity 导出的 Android 工程 )

    文章目录 一. Android 工程打包 二. Android Studio 打开 Unity 导出的 Android 工程 一. Android 工程打包 Android 工程打包 就是将 Unit ...

  9. 【安卓】Android Studio的模板总结【一】BasicActivity

    目录: 1.Activity_Main: 2.Fragment_First: 3.Fragment_Second: 4.导航Fragment: 结束! 1.Activity_Main: MainAct ...

  10. 从零打造Android课程表(安卓开发初体验)

    前言: 使用Android Studio开发,SQLite数据库,dialog对话框,Intent组件交互,java动态生成组件等技术.(博客最下方有所有代码.若不想复制粘贴,可下载源码) 先展示效果 ...

最新文章

  1. ubuntu 修改environment导致无法启动
  2. k8s edit命令使用示例
  3. Java连接Redis及操作(一)
  4. 计算机操作系统原理精品课程,计算机操作系统原理.ppt
  5. 大数据驱动5G网络与服务优化
  6. 在silverlight中,创建webservice的client报错
  7. 对于怎么理解js中Event Loop,你可以看这篇文章
  8. 联想a500手机驱动_一块砖也敢刷:联想手机A368T刷了三次才重新进入系统
  9. 微博视频下载去水印 视频消重
  10. 关于打印室计算机购置的申请书,物资采购申请书格式范文
  11. 百度、火星(高德)、84坐标系相互转换
  12. 软件评测师--第17小时 功能测试
  13. Springboot入门到精通(超详细文档)
  14. STM32单片机开发板 定制
  15. 阿里云Anolis OS 8.4
  16. 音视频系列:Webrtc音视频通话
  17. java左手画圆右手画方_左手画圆右手画方可以同时进行吗?
  18. mysql写了代码如何看表_mysql之单表查询__我自己敲的代码
  19. POJ - 3713 (Transferring Sylla)
  20. 成功解决:免费使用Pycharm专业版

热门文章

  1. linux下使用binfmt_misc设定不同二进制的打开程序
  2. 在Linux上取得Windows上的文件
  3. linux查找最近访问的文件,教您在Linux系统中查找最近修改的文件/文件夹
  4. 如何放出Linux内核中的链表大招
  5. 北航计算机考博C语言真题_北京航空航天大学计算机考研:严厉的老父亲,教会你本事,本科非211以上就不要去了...
  6. php trace 图形,php 方便水印和缩略图的图形类
  7. 计算机原理指令系统测试卷,计算机组成原理(下)第7章 指令系统测试
  8. 在蓄电池管理系统中计算机应用,汽车电器与电子技术.docx
  9. 递归c语言字符串最小编辑距离,算法设计与分析-编辑距离问题
  10. 二叉树的层序遍历_NC15 求二叉树的层序遍历