Andriod Unity 调用android函数
//首先这是一个前沿
//我看了多的资料,还看了近半个小时的 android activity 的讲解
终于打出了apk
//接下来开始
//一步一步的跟着我走
1.创建一个android项目或者一个modudle 其项目类型为android library !android library ! android library !
2.包名可以是你的unity包名,也可以不是,反正放到unity需要查看那个 .xml 你的package
3.把 C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes 中的class.jar
复制到你的android项目中的libs文件中
4.鼠标点击libs里的那个包并右键 -> Add as library //作用是添加此包的依赖
5.由于module类型为android library 所以没有主类文件和activity这个东东 所以没有主类文件和activity这个东东 所以没有主类文件和activity这个东东
重要的我说三遍
6.接下来创建一个主类,你可以自定义类名字,但最好跟着哥哥走
MainActivity.java
package com.aprivate.lib;
import android.app.Service;
import android.os.Bundle;
import android.os.Vibrator;
import com.unity3d.player.UnityPlayerActivity; public class MainActivity extends UnityPlayerActivity
{ @Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// setContentView(R.layout.activity_main);
} public void OnAndroidVibrate(String str)
{
Vibrator m_vibrator = (Vibrator) getApplication().getSystemService(Service.VIBRATOR_SERVICE);
m_vibrator.vibrate(10000);
} }
7.不要问为什么,这个功能是点击按钮手机震动
8.m_vibrator.vibrate(10000); 是要手机震动权限的 所以
// 再AndroidManifest.XML 中加入 <uses-permission android:name="android.permission.VIBRATE" />
// 不知道加再哪里的眼睛看过来
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.aprivate.lib" > <uses-permission android:name="android.permission.VIBRATE" />
<application
android:allowBackup = "true"
android:label = "lib">
<activity android:name=".MainActivity" android:label="lib">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
9.接下来搞得差不多了 请注意上面这个xml ,是有
<activity android:name=".MainActivity" android:label="lib">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
10.因为unity调用android时两个Activity 不要问为什么,i not no;
11.然后点击android studio 菜单栏中的 build -> make modudle '????'
12.unity 要有这个路径 Assets\Plugins\Android 没有的create
13.将build/outputs/arr/中的arr(用解压工具)中的libs 和 res 和 androidManifest.xml 和 classes.jar 复制到 unity Assets\Plugins\Android 路径下
14.将外面大概2.0k 的 classes.jar 替换 libs中的.jar
15.至此 工程完成
16.写调用android中的函数
AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
if (jo != null)
{
m_text.text = "jo 不为null"; jo.Call("OnAndroidVibrate", ""); }
else
{
m_text.text = "jo 为null";
}
17. 我的测试成功 而且xml中的package 中的包和我unity中的包时不对应的
18.我的android library 的api等级要小于我的unity中的api等级
unity中的为 4.1 level 16
android中的则为 4.0
19 android 中的SDK 和 untiy 用的SDK时同一个
20. 如有不懂或者出错的 请评论
Andriod Unity 调用android函数的更多相关文章
- unity 调用android函数
unity 调用android函数 分类: unity2013-12-19 17:54 475人阅读 评论(0) 收藏 举报 unityandroidjar 我们知道,安卓project都有一个And ...
- unity调用Android的jar包
简介 有一些手机功能,Unity没有提供相应的接口,例如震动,例如不锁屏,例如GPS,例如... 有太多的特殊功能Unity都没有提供接口,这时候,我们就需要通过使用Android原生的ADT编辑器去 ...
- Unity调用Android相册
最近有一个项目有这个需求,让用户上传自己的交易凭证的截图,之前因为对调Android原生的东西不太熟悉,就先放了一边 因为项目已经上线,只不过是该功能未开放而已,那么现在为什么要写这篇博客呢,是因为. ...
- Unity调用Android类方法
Unity调用Android类方法 1. 添加Unity的classes.jar文件 创建一个Android工程AndroidUnityDemo. 由于Unity的版本不同,直接在Unity安装包文 ...
- Unity调用Android
1.Unity调用Android 根据unity用户手册,unity可以采用native code(c/c++),但是也提供了C#调用方法,本文对此进行简单讲解. 2.Unity获取android类 ...
- Unity 调用android插件
1. Unity的Bundle Identifier必须和你的android报名一致 Activity和View的区别: Activity应该是一个展示页面,View是页面上一些按钮视图等等. 如何调 ...
- Unity调用Android的两个方式:其一、调用jar包
unity在Android端开发的时候,免不了要调用Java:Unity可以通过两种方式来调用Android:一是调用jar.二是调用aar. 这篇文章主要讲解怎么从无到有的生成一个jar包,然后un ...
- unity调用Android百度地图
由于个人是Android小白,在这个配置上面被折磨了很久,因此写下这篇文章 工具:eclipse + unity5.6.1 首先去百度地图开发者平台下载你需要的资源,我只需要显示地图和定位,这个时候你 ...
- unity调用Android的两种方式:其二,调用aar包
上一篇我们讲了unity如何调用jar包 http://www.cnblogs.com/Jason-c/p/6743224.html, 现在我们介绍一下怎么生成aar包和unity怎么调用aar 一. ...
随机推荐
- shell 编程四剑客简介 find sed grep awk(微信公众号摘抄)
一,Shell编程四剑客之Find 通过如上基础语法的学习,读者对Shell编程有了更近一步的理解,Shell编程不再是简单命令的堆积,而是演变成了各种特殊的语句.各种语法.编程工具.各种命令的集合. ...
- JavaScript常用技巧之字符串操作
1.首字母大写 str.replace(/\b\w+/g, function (word) { return word.substring(0, 1).toLowerCase() + word.sub ...
- HTTP/2的优先级
前言 记得HTTP/3即将标准化了.今日早读文章由@smallbonelu翻译授权分享. @smallbonelu,一枚爱好跑步的前端工程师 正文从这开始-- 以正确的顺序请求页面资源对于快速的用户体 ...
- Async Clipboard AP
转自奇舞周刊,个人学习记录,侵权删 编者按:本文作者李松峰,资深技术图书译者,翻译出版过40余部技术及交互设计专著,现任360奇舞团高级前端开发工程师,360前端技术委员会委员.W3C AC代表 如果 ...
- nodejs进阶:密码加盐:随机盐值
demo var crypto = require('crypto'); function getRandomSalt(){ return Math.random().toString().slice ...
- 57. Collections(list的工具类)、Arrays(数组的工具类)
List集合的工具类(Collections): 注意:Collection是单列集合的根接口 Collections是操作集合对象的工具类 1.对list集合排序: sort(List) 根据自然 ...
- 基于Docker构建Jenkins CI平台
1.部署gitlab 1.1 部署gitlab docker run -d \ --name gitlab \ -p 8443:443 \ -p 9999:80 \ -p 9998:22 \ -v $ ...
- spring boot 与微服务之间的关系
Spring Boot 和微服务没关系, Java 微服务治理框架普遍用的是 Spring Cloud. Spring Boot 产生的背景,是开发人员对 Spring 框架越来越复杂的配置吐槽越来越 ...
- 泛型(Java 5 开始)
前言 Java 5 开始之前,从集合读取的数据都必须进行类型转换,如果插入错误的数据就会报错. 有了泛型,编译器会自动为你的插入进行转换,并在插入时告知是否插入了类型错误的对象. 将类型由原来的具体的 ...
- PHP ftp_mkdir() 函数
定义和用法 ftp_mkdir() 函数在 FTP 服务器上创建一个新目录. 如果成功,该函数返回新目录的名称和路径.如果失败,则返回 FALSE. 语法 ftp_mkdir(ftp_connecti ...