Java.lang.ClassNotFoundException: Didn’t find class “com.xx.R$string” on path 或 java.lang.NoClassDefFoundError: Failed resolution of: Lcom/xx/R$string
遇到R文件资源找不到的问题,首先看接入方式是jar包方式还是aar。一般来说是jar包接入的问题,因为jar包不包含R文件,所以SDK中如果用R.xx.yy的方式加载在Unity打包后会找不到映射关系,解决方法如下:
- 更改SDK中的加载方式,将R.xx.yy改为
getResources().getIdentifier("yy", "xx", getPackageName());
这种解决方案是要SDK方修改代码,只为了兼容Unity的一种打包方式来改代码不太现实。
- 因此接入方也可选择aar方式接入,因为aar中包含R文件