关于Unity3D工程与android工程的转换与合并,请参考我的另外一篇博客,如果你对Unity3D工程加入到android工程的过程不熟悉,也请先看完下面这篇博客:

下面,我们来说说本博客的终端,Unity3D调用android的方法:

1.首先,在网络上大家可以看到很多把android project打包,然后以插件的方式,放入Unity3D工程中来调用的方式,这种方式,我不做评论,但是很麻烦,所以我也没有进行尝试,大家有兴趣可以到网络上搜索一下看看。

2.如果讲Unity3D的project导出为android project然后进行再次开发的过程中,需要Unity3D调用android的方法,这个时候,再使用1中的方法,显然是不合适的。

那么我们要怎么样来做呢?分为下面几部分:

1.在初始化UnityPlayer的Activity中添加方法,如下:

/**

* 测试Unity调用Android的方法

*/

public void testMethod(String param){

System.out.println("参数为:"+param);

}

对于提供的方法,不可以进行UI操作,因为Unity3D对于android的UI线程来说,只是个子线程,如果要进行UI操作,可以使用Handler发消息。

2.在Unity工程中,利用c#文件来书写,Unity调用的代码:

public static void ActivateShareImage(string content)

{

if (Application.platform == RuntimePlatform.IPhonePlayer)

{

_PressButton3(content);

}

else if (Application.platform == RuntimePlatform.Android)

{

UISystem.Console("test method!");

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

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

jo.Call("testMethod", "unity");

}

else

{

}

}3,如果你已经有android项目了,那么就把新修改的Unity3D的项目导出为android project的,把新导出的project中的assets的文件夹,替换掉之前老的project中的,这样做的目的是更换Unity的改动,如果改动了其他的东西,也是这样更换的,但是如果你的assets文件夹下还有其他资源,请保留。

如果,你没有android项目,那么就把Unity3D的项目导出为android的project项目使用。

4.对于AndroidJavaClass这个类,以及它提供的方法,大家可以参考下面的网站:

这样,就可以完成调用了,根本就不需要使用插件。关于android向Unity3D发送消息,日后会发博客叙述。

unity无法调用android,Unity3D调用android方法(非插件方式)相关推荐

  1. android 引用非 android 工程,Unity3D调用android方法(非插件方式)

    关于Unity3D工程与android工程的转换与合并,请参考我的另外一篇博客,如果你对Unity3D工程加入到android工程的过程不熟悉,也请先看完下面这篇博客: android与Unity3D ...

  2. Unity3D调用android方法(非插件方式)

    关于Unity3Dproject与androidproject的转换与合并,请參考我的另外一篇博客.假设你对Unity3Dproject增加到androidproject的过程不熟悉.也请先看完以下这 ...

  3. 【Unity3D】Android Studio 工程中使用 Java 代码调用 Unity 的 C# 脚本 ( Java 中调用 UnityPlayer#UnitySendMessage 方法 )

    文章目录 一. Java 调用 C# 依赖库准备 1.依赖库位置 2.unityLibrary 依赖库位置 二. Java 调用 C# 的 UnityPlayer#UnitySendMessage 方 ...

  4. unity3d调用android方法,Unity3D 调用Android原生方法2

    原创文章如需转载请注明:转载自 脱莫柔Unity3D学习之旅Unity3D引擎技术交流QQ群:[119706192]本文链接地址:Unity3D 调用Android原生方法2 记一次Unity通过An ...

  5. unity调用 Android 分享图片文字 方法 不需要第三方sdk 兼容android7.0+

    直接说方法把,在Android Studio中 新建一个工程,新建时选择Add No Activity,包名跟unity中设置的一样比如这里用 come.demo.share 在res目录下新建个文件 ...

  6. Unity3D调用Android提供的接口

    需求:Android提供相关的接口,android只提供接口,没有相关的界面,android接口打包以jar包的形式供Unity3D调用 1.编写相关的android接口 在studio中新建工程,并 ...

  7. android 虚方法,尝试在空对象引用上调用虚方法’android.view.View android.view.View.getRootView()’...

    我收到这个错误, "Attempt to invoke virtual method 'android.view.View android.view.View.getRootView()' ...

  8. android利用反射调用截屏api,Android利用反射机制调用截屏方法和获取屏幕宽高的方法...

    想要在应用中进行截屏,可以直接调用 View 的 getDrawingCache 方法,但是这个方法截图的话是没有状态栏的,想要整屏截图就要自己来实现了. 还有一个方法可以调用系统隐藏的 screen ...

  9. Android和IOS 调用 支付宝和微信 支付方法

    Android和IOS 调用 支付宝和微信 支付方法 转载于:https://www.cnblogs.com/huangzineng/p/7235705.html

最新文章

  1. 阿里云异构计算产品家族亮相 覆盖全场景AI和高性能计算需求
  2. java.lang.NoClassDefFoundError:如何解决–第1部分
  3. MAC配置JCO,与找不到sapjco3异常
  4. SpringBoot2.x整合quartz定时任务 快速入门
  5. java i/o 流详解_java I/O流详解
  6. html中注释有几种_历史尝试:小白HTML学习笔记(2)
  7. 人的烦恼大部分来自于没钱
  8. 重金悬赏丨2019 华为 IoT 开发者大赛喊你加入“群聊”,倾听科技的“声音”!...
  9. UnityShader14:透明效果实现(上)
  10. 从0开始构建自己的前端知识体系-JS-事件-键盘事件总结
  11. uniapp 根据经纬度逆转地理地质
  12. python缩进格式错误修改_Python,意外的缩进错误解析,Pythonunexpectedindent,解决,方法...
  13. 台安变频器n2按键说明_台安n2系列变频器说明书
  14. 关于42步进电机驱动——基于STM32 HAL库实现
  15. POJ 2774 Long Long Message
  16. linux 报错:http://people.centos.org/tru/devtools-2/7/x86_64/RPMS/repodata/repomd.xml: [Errno 14]
  17. 什么样的人适合学习嵌入式开发
  18. 山东电销机器人_山东自主研发电销机器人意向客户微信端推送 欢迎来电「南京和付信息科技供应」...
  19. scratch编写游戏:火柴人避开防守投篮
  20. 循环语句(while)

热门文章

  1. Netty百万级推送服务设计要点!
  2. Maven镜像 阿里云mirror如何使用
  3. windows文件读取 xxe_XXE漏洞学习
  4. 中国液态金属量子计算机,央视曝光中国液态金属成果全球领先,可能成为未来飞碟动力源...
  5. 运动耳机有线的好还是无线的好、最佳运动耳机推荐清单
  6. Erlang 基础操作 练习题
  7. 2016苹果WWDC大会说了啥?
  8. axios delete传递参数方式
  9. markdown表格快捷键
  10. jQuery 移除元素的事件