Unity与Android Studio集成构建时libpenguin.so缺失及AR黑屏问题求助
问题解决指南:Unity-Android Studio集成中libpenguin.so缺失及AR黑屏问题
一、Mac迁Windows后libpenguin.so丢失的原因
- Unity跨平台构建时,Native插件(.so文件)的架构适配逻辑不同:Mac环境下构建可能仅生成适配本地或特定Android架构的文件,迁移到Windows后,未重新编译生成对应架构的so文件。
- Git忽略规则遗漏:若通过Git迁移项目,
.gitignore可能屏蔽了.so文件或Library/目录,导致依赖文件未同步到Windows环境。 - Unity缓存路径差异:不同系统的Unity Package Cache路径独立,迁移项目时未同步AR相关依赖的Native库文件。
二、修复libpenguin.so缺失的步骤
重新生成Unity Native插件
- 打开Windows环境下的Unity项目,重新导入AR Core、AR Foundation及XR相关包。
- 进入
Build Settings->Player Settings->Android->Other Settings,确认勾选目标设备的CPU架构(如ARM64、ARMv7)。 - 选择
Export Project重新构建Unity项目,生成适配Android Studio的输出包,Unity会自动重新编译生成对应架构的libpenguin.so。
检查Git同步规则
- 打开项目根目录的
.gitignore文件,移除对.so文件或Assets/Plugins/Android/libs/目录的屏蔽规则。 - 重新拉取或提交相关文件,确保so文件同步到Windows环境。
- 打开项目根目录的
手动放置so文件到正确路径
- 将
libpenguin.so放入Unity项目的Assets/Plugins/Android/libs/[对应架构]目录(如arm64-v8a/、armeabi-v7a/)。 - 在Unity中选中该文件,在Inspector面板设置
Platform为Android,勾选对应CPU架构,再重新构建项目。
- 将
清理Unity缓存
- 删除项目根目录下的
Library/、Temp/文件夹,重启Unity让其重新导入所有资源和依赖,自动生成必要的so文件。
- 删除项目根目录下的
三、AR黑屏与libpenguin.so缺失的关联
libpenguin.so是AR模块的核心Native库,负责AR画面的底层渲染、传感器数据处理等逻辑。缺失该文件会导致AR模块初始化失败,无法渲染AR画面,仅保留UI显示,因此修复so文件缺失大概率能解决黑屏问题。
若修复后仍黑屏,需额外排查:
- 设备是否安装并启用AR Core服务;
- Unity中
AR Session、AR Session Origin组件配置是否正确(如AR Camera关联正常、AR Session已启用); - Android权限是否配置完整(Unity Player Settings中勾选相机权限,AndroidManifest包含
<uses-permission android:name="android.permission.CAMERA"/>); - 设备是否为AR Core认证机型,系统版本是否符合要求。
四、额外排查建议
- 查看Logcat完整日志,确认是否存在AR Core初始化失败、相机权限被拒等其他错误;
- 直接在Unity中构建APK并安装测试,排除Android Studio集成时的Gradle配置问题;
- 检查Android Studio中Unity导出项目的
build.gradle,确认sourceSets.main.jniLibs.srcDirs已正确指向Unity生成的so文件目录。
内容的提问来源于stack exchange,提问作者안아줘요
相关产品推荐
相关产品推荐

