Android API 27模拟器Facebook Audience Network 5.9.0报错咨询
关于Facebook Audience Network 5.9.0在API27环境下的错误及真实设备表现
先拆解你遇到的错误核心:NoClassDefFoundError: Failed resolution of: Landroid/webkit/TracingController; —— 这个android.webkit.TracingController类是Android 9.0(API级别28)才正式加入系统API的,在Android 8.1(API27)及更低版本的系统里完全不存在这个类。
针对你的问题,真实设备上的表现分两种情况:
- 运行Android 8.1(API27)及以下版本的真实设备:和你的模拟器情况完全一致,系统本身没有这个类,直接使用Facebook Audience Network 5.9.0的话,同样会触发这个
NoClassDefFoundError错误。 - 运行Android 9.0(API28)及更高版本的真实设备:系统自带
TracingController类,不会出现这个错误。
额外建议
Facebook Audience Network 5.9.0这个版本显然没做好API27及以下的兼容处理,直接引用了高版本API才有的类。如果要解决这个问题,你可以试试:
- 升级Facebook Audience Network到更高版本(后续版本大概率修复了这个向下兼容问题);
- 针对API27及以下版本做条件判断,避免在低版本设备上触发相关代码路径;
- 用反射的方式调用相关功能,避免编译期直接依赖
TracingController类。
内容的提问来源于stack exchange,提问作者activity
相关产品推荐
相关产品推荐

