Unity3D的android项目启动报错:your hardware does not support this application

来源:互联网 发布:网络回拨电话安全吗 编辑:程序博客网 时间:2024/05/22 10:45

最近碰到个问题,unity导出的源工程,不接入第三方sdk的时候,游戏在各个平台的手机上面都可以正常运行。

但是只要在接入第三方的sdk后游戏就会在部分平台上面运行正常,部分上面报错:your hardware does not support this application。

下面以腾讯的ysdk做为示例(此处只是做为用例,并无其他意思,不要妄加猜测): 博主无脑接入了腾讯ysdk提供的aar文件,游戏部分机型上面弹出如题所示的错误问题。

具体截图如下:


遇到此类问题,必然是jni的so文件引起的错误。所以解决方案也是针对so文件,具体方案如下:

1、排查unity导出的工程里面含有的so支持的是那些平台比如是下面两个;

x86

armeabi_v7a


2.排查接入的ysdk的aar文件里面包括的平台so,发现如下:

x86

x86_64

armeabi_v7a

armeabi

mips


我们明确的发现这里面比unity导出的平台支持so多出了好几项,需要做的是直接删除aar压缩包中多出的那几个文件夹

如上文中自己的工程中包含的是x86和armeabi_v7a那么需要删除第三方中的下面几个:

x86_64

armeabi

mips

3、检查工程的grandle文件,确定是否引入了unity的so文件和ysdk的so文件,具体如下:

sourceSets {        main {            jniLibs.srcDirs = ['src/XXXX/libs']    //其中src/XXXX/libs 是导出的so文件路径        }    }//*/

repositories{    flatDir{        dirs 'src'    }}dependencies {    //ysdk build jars    ysdkCompile(name:'ysdk/aar/YSDK_Android_1.3.1_670',ext:'aar')}


排查完上面的三条之后,再次编译调试工程,发现在所有平台上面都已正常运行。

注意:如果做完上面三步之后依然有问题,请在下面留言,或者直接qq我,本博客只适合AS的用户Eclipse用户请另找博客,谢谢

4 0
原创粉丝点击