把Android项目作为一个library打包成aar,然后把aar放到Unity中运行的时候会抛出一个warning,刚开始没注意,后来越来越多,引发的原因是下面这行代码
UnityPlayer.UnitySendMessage("GameManager","currentOrientationToUnity",json.toString());
这行代码本身并没有错误,而是因为在Application的子类中写了启动定位和方向传感器的代码,传感器会随着Application子类初始化而执行UnitySendMessage,Application是一个App最先初始化的一个类,它会比Activity先启动,也就是说,当UnitySendMessage开始向Unity传消息的时候,并没有去任何方法去接收它,Activity也都没有创建,Unity呈现所有的视图都是FrameLayout的子类,也是放在Activity中的,也遵循这一原理。
总结:UnitySendMessage()方法必须在Android的四大组件中,而不应该写在Applicatiion中,如果写在Application中则会出现warning了。Unity编译出来的也是一个apk,跑在Android平台上,所以它还是遵循着Android的一些原理的。
Android打包aar到Unity产生的warning
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
- Unity Android Plugin开发指南原创 2016-07-05 haodongyuan QQ音乐技术团...
- 成都青城山 晴转阴 老公的好兄弟交女朋友了,大家组织一起去青城山玩。 生娃一年多了,第一次跟老公出去玩,感觉都有点...
- 今天,乐享苏州的老师们带领走进绩溪上庄古村,是亲近大自然的一天。 跟随大巴车走进乡村,山路十八弯,一路上两旁的风景...