Unity2019.4.4与AndroidStudio3.5.2交互

以Android原生震动为例 ---> 

Unity 与Android 交互需要两个文件 :

1、classer.jar

2、UnityPlayerActivity.java

二、打开AndroidStudio开始创建工程

1、

2、

3、引入jar包 以及 java文件

4.UnityPlayerActivity.java里引入两个包

import com.unity3d.player.IUnityPlayerLifecycleEvents;
import com.unity3d.player.UnityPlayer;

如果无法引入,说明jar包没有导入完成,即上上图的add to Library

5、在MainActivity.java内书写震动代码 

6、配置AndroidManifest.xml 文件

7、gradle配置

8、build出aar

9、解压

 

10、导入Unity

11、写个Button来触发调用

12、C# 代码 

13、打包设置

14、打包测试运行结果(弹窗震动均成功)

15、关于另外两种打包方式,如果不加混淆,会导致找不到方法的错误,如下:

AndroidPlayer(ADB@127.0.0.1:34999) AndroidJavaException: java.lang.NoSuchMethodError: no non-static method with name='CallShake' signature='([JI)V' in class Ljava.lang.Object;
java.lang.NoSuchMethodError: no non-static method with name='CallShake' signature='([JI)V' in class Ljava.lang.Object;

16、加混淆打包

文件内容:           -keep class com.unity.unitycallandroid.**{*;}

防止这个jar包被混淆

 

2020 /12/17 更新

最近发现了个比较好的方式,可以不用更改Unity里面AndroidManifest 里面的包名,直接添加需要的权限就行了。

其他方面处理起来和上面方法一样。注意:因为过去好久了 ,我改了android包名 com.unity.vibrate。

推荐使用这种方式:(过多的jar包处理起来方便)

代码截图如下

Unity调用

AndroidMainfest 如下:

 

  • 7
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值