u3d android,u3d与安卓交互(Android studio)
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)相关推荐
- 提供给大家一些Android好资料---安卓巴士Android开发神贴整理
安卓巴士Android开发神贴整理 http://www.apkbus.com/android-19658-1-1.html 分享45个android实例源码,很好很强大.收藏吧 http://www ...
- linux和安卓交互,Android中webview和js之间的交互及注意事项
1.Android中利用webview调用网页上的js代码. Android 中可以通过webview来实现和js的交互,在程序中调用js代码,只需要将webview控件的支持js的属性设置为true ...
- 安卓Android与H5双向交互MathJax展示数学公式(源码+解析)
安卓Android与H5双向交互MathJax展示数学公式(源码+解析) 博主就今天周五又做了个需求(安卓Android与H5交互),原来上线的功能是服务器配置过来的学习报告(一个H5页面)并提供原始 ...
- 安卓工作室 android studio 的 汉化 美化 定制 Android studio's Chinesization beautification customization
安卓工作室 android studio 的 汉化 美化 定制 Android studio's Chinesization beautification customization 作者:韩梦飞沙 ...
- Win10安卓模拟器Visual Studio Emulator for Android使用简介(转)
Visual Studio Emulator for Android是微软官方发布的独立版本的安卓模拟器,这款软件可以让安卓应用开发者更加轻松的用Visual Studio编写Android应用,据说 ...
- 安卓(Android studio)编写一个计算器,可以连续加减乘除,可加小数点,不包含括号以及加减乘除优先算法。
安卓(Android studio)编写一个计算器,可以累加,可加小数点,不包含括号以及加减乘除优先算法. 首先需要在res目录下的layout文件下创建一个xml文件进行界面的布局设计,接着在Jav ...
- java 安卓调试,Android Studio(二十一):调试你的应用
Android Studio包含了一个调试器,允许你调试运行在Android虚拟机或连接的Android设备的应用.通过Android Studio的调试器,你可以: 1. 选择你调试设备的app 2 ...
- 【Unity3D】Android 打包 ④ ( Android 工程打包 | Unity 中导出安卓工程 | Android Studio 打开 Unity 导出的 Android 工程 )
文章目录 一. Android 工程打包 二. Android Studio 打开 Unity 导出的 Android 工程 一. Android 工程打包 Android 工程打包 就是将 Unit ...
- 【安卓】Android Studio的模板总结【一】BasicActivity
目录: 1.Activity_Main: 2.Fragment_First: 3.Fragment_Second: 4.导航Fragment: 结束! 1.Activity_Main: MainAct ...
- 从零打造Android课程表(安卓开发初体验)
前言: 使用Android Studio开发,SQLite数据库,dialog对话框,Intent组件交互,java动态生成组件等技术.(博客最下方有所有代码.若不想复制粘贴,可下载源码) 先展示效果 ...
最新文章
- ubuntu 修改environment导致无法启动
- k8s edit命令使用示例
- Java连接Redis及操作(一)
- 计算机操作系统原理精品课程,计算机操作系统原理.ppt
- 大数据驱动5G网络与服务优化
- 在silverlight中,创建webservice的client报错
- 对于怎么理解js中Event Loop,你可以看这篇文章
- 联想a500手机驱动_一块砖也敢刷:联想手机A368T刷了三次才重新进入系统
- 微博视频下载去水印 视频消重
- 关于打印室计算机购置的申请书,物资采购申请书格式范文
- 百度、火星(高德)、84坐标系相互转换
- 软件评测师--第17小时 功能测试
- Springboot入门到精通(超详细文档)
- STM32单片机开发板 定制
- 阿里云Anolis OS 8.4
- 音视频系列:Webrtc音视频通话
- java左手画圆右手画方_左手画圆右手画方可以同时进行吗?
- mysql写了代码如何看表_mysql之单表查询__我自己敲的代码
- POJ - 3713 (Transferring Sylla)
- 成功解决:免费使用Pycharm专业版
热门文章
- linux下使用binfmt_misc设定不同二进制的打开程序
- 在Linux上取得Windows上的文件
- linux查找最近访问的文件,教您在Linux系统中查找最近修改的文件/文件夹
- 如何放出Linux内核中的链表大招
- 北航计算机考博C语言真题_北京航空航天大学计算机考研:严厉的老父亲,教会你本事,本科非211以上就不要去了...
- php trace 图形,php 方便水印和缩略图的图形类
- 计算机原理指令系统测试卷,计算机组成原理(下)第7章 指令系统测试
- 在蓄电池管理系统中计算机应用,汽车电器与电子技术.docx
- 递归c语言字符串最小编辑距离,算法设计与分析-编辑距离问题
- 二叉树的层序遍历_NC15 求二叉树的层序遍历