unity Android 交互的常见问题总结
1、unity2017版本,采用aar打包:出现A library uses the same package as this project:的错误
原因:aar里面的AndroidManifest.xml文件的package 和 外部的AndroidManifest.xml文件同名,
或者也可以说是和unity设置的package同名(unity打包Android知道,AndroidManifest的包名和Unity设置的必须要一致)
解决方案:外部的AndroidManifest文件的包名修改和aar里面的包名不一样即可
2、unity2017打包报错:缺失显示mips64el-linux-android-strip''
原因:是因为你sdk里面有安装ndk,但是ndk里面 Sdk\ndk-bundle\toolchains目录下,缺了mips64el-linux-android的相关文件,
解决方案:1、如果你是Android studio下载的sdk里面包含的NDK都是缺少的,需要自己去官方下载,把缺失的文件copy进去
2、卸掉sdk的ndk
拓展:ndk下载地址:https://dl.google.com/android/repository/android-ndk-r17-windows-x86_64.zip
https://dl.google.com/android/repository/android-ndk-r17-windows-x86.zip
3、Android 调用unity
A、UnityPlayer.UnitySendMessage("ac","AndroidCallBack","jason is so handsome"); 第一个参数是场景的对象,如:Canvas, 第二个参数是:unity里面定义的方法,第三个参数是传递的参数
B、unity采用AndroidJavaProxy这个借口,说白了点,就是接口的映射,https://www.jianshu.com/p/ceaac83808f2,接口的base("Java借口完整的路径")的路径要对,实现的方法要一样