如何在build.gradle中添加Sceneform依赖?解决重复类问题及依赖选择
问题解决与说明
核心结论
是的,你只需要保留com.google.ar.sceneform:core:1.17.1和AR Core的依赖,就能正常使用SceneForm的核心功能。
重复类冲突原因
你遇到的重复类问题,本质是AndroidX与旧Android Support库的冲突:sceneform-ux:1.17.1依赖的是旧版本的Support库(com.android.support:support-compat:27.1.0),而你的项目已经在使用AndroidX(androidx.core:core:1.9.0),这两套库包含大量重复的类,编译时就会抛出冲突错误。
关于ArFragment的废弃
官方确实已经废弃了ArFragment,它属于sceneform-ux模块中的旧组件。现在推荐直接基于ArSceneView实现自定义的UI逻辑——这样不仅能避开依赖冲突,还能更灵活地适配你的应用需求,比如自定义手势交互、加载状态提示等。
最终推荐的依赖配置
只保留以下两个依赖即可:
implementation 'com.google.ar:core:1.36.0' implementation 'com.google.ar.sceneform:core:1.17.1'
如果需要类似sceneform-ux的UX功能,可以基于core层自行实现,比如添加模型拖拽、缩放手势,这些功能都可以通过SceneForm的核心API完成,无需依赖废弃的ux模块。
内容的提问来源于stack exchange,提问作者alexmat1513
相关产品推荐
相关产品推荐

