//首先这是一个前沿

//我看了多的资料,还看了近半个小时的 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函数的更多相关文章

  1. unity 调用android函数

    unity 调用android函数 分类: unity2013-12-19 17:54 475人阅读 评论(0) 收藏 举报 unityandroidjar 我们知道,安卓project都有一个And ...

  2. unity调用Android的jar包

    简介 有一些手机功能,Unity没有提供相应的接口,例如震动,例如不锁屏,例如GPS,例如... 有太多的特殊功能Unity都没有提供接口,这时候,我们就需要通过使用Android原生的ADT编辑器去 ...

  3. Unity调用Android相册

    最近有一个项目有这个需求,让用户上传自己的交易凭证的截图,之前因为对调Android原生的东西不太熟悉,就先放了一边 因为项目已经上线,只不过是该功能未开放而已,那么现在为什么要写这篇博客呢,是因为. ...

  4. Unity调用Android类方法

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

  5. Unity调用Android

    1.Unity调用Android 根据unity用户手册,unity可以采用native code(c/c++),但是也提供了C#调用方法,本文对此进行简单讲解. 2.Unity获取android类 ...

  6. Unity 调用android插件

    1. Unity的Bundle Identifier必须和你的android报名一致 Activity和View的区别: Activity应该是一个展示页面,View是页面上一些按钮视图等等. 如何调 ...

  7. Unity调用Android的两个方式:其一、调用jar包

    unity在Android端开发的时候,免不了要调用Java:Unity可以通过两种方式来调用Android:一是调用jar.二是调用aar. 这篇文章主要讲解怎么从无到有的生成一个jar包,然后un ...

  8. unity调用Android百度地图

    由于个人是Android小白,在这个配置上面被折磨了很久,因此写下这篇文章 工具:eclipse + unity5.6.1 首先去百度地图开发者平台下载你需要的资源,我只需要显示地图和定位,这个时候你 ...

  9. unity调用Android的两种方式:其二,调用aar包

    上一篇我们讲了unity如何调用jar包 http://www.cnblogs.com/Jason-c/p/6743224.html, 现在我们介绍一下怎么生成aar包和unity怎么调用aar 一. ...

随机推荐

  1. mysql5.7 基于gtid的主从复制

    基本环境 版本 5.7.14 主库ip:192.168.1.100 port:3306 从库ip:102.168.1.101 port:3306 搭建注意事项 主库配置 gtid-mode=on en ...

  2. dubbo-源码阅读之Filter实现原理

    最近完成一个需求,使用阿里Arms需要在log里面加上traceId,但是发现dubbo异常 被ExceptionFilter捕获 并打印  打印不出traceI,然后百度搜索如何重写Filter 参 ...

  3. 笔记64 Spring Boot快速入门(四)

    SpringBoot中错误处理.端口设置和上下文路径以及配置切换 一.错误处理 假设在访问首页的时候会出现一些错误,然后将这些错误当作异常抛出,反馈给用户. 1.修改IndexController.j ...

  4. 【Muduo库】【base】基本类

    一.Timestamp类  1.类图如下: 2.  知识点 (1)     这个类继承了 muduo::copyable, 以及 boost::less_than_comparable. (2)    ...

  5. 1、cmd中检测远程的ip和端口是否处于监听状态

    一.使用 ping 命令测试远程的ip是否可连通 cmd  (右键 管理员角色) ---  ping   IP 二.使用 telnet 测试远程某一个ip的端口是否开放 1.为了安全起见,window ...

  6. Go基础之基本数据类型

    Go基础之基本数据类型 基本数据类型 整形 int8.int16.int32.int64 无符号整形:uint8.uint16.uint32.uint64 uint8就是我们熟知的byte型 类型 描 ...

  7. java统计一个子串在指定字符串中出现的次数

    今天查着用了用String类里的几个方法,分享下代码 题目要求:统计一个子串在指定字符串中出现的次数( 提示java字串出现了6次) public class SearchSameString { p ...

  8. 关于axios中post请求提交后变成get的问题

    这个问题归结于自己的不细心,如下图. 头疼了好久,才发现是自己多写了一个s,在此记录一下.

  9. python操作pymysql

    #_author:来童星#date:2019/12/19import pymysql#1.打开数据库连接db=pymysql.connect('localhost','root','root','te ...

  10. C存储类

    C 存储类 存储类定义 C 程序中变量/函数的范围(可见性)和生命周期.这些说明符放置在它们所修饰的类型之前.下面列出 C 程序中可用的存储类: auto register static extern ...