Android 编译应用程序时,R8程序类型中已存在错误
我正试图编译颤振的APK,但我在r8中遇到了一个错误。我已经在Flutter中使用了其他应用程序,但是我从来没有遇到过编译和测试的问题。我意识到问题在于WebView库,因为当我从pubspec中删除它时,应用程序会编译。但我现在不能放弃使用WebView,它对应用程序很重要。奇怪的是,我可以在设备上调试应用程序 我尝试了以下几种解决方案:Android 编译应用程序时,R8程序类型中已存在错误,android,flutter,webview,android-r8,Android,Flutter,Webview,Android R8,我正试图编译颤振的APK,但我在r8中遇到了一个错误。我已经在Flutter中使用了其他应用程序,但是我从来没有遇到过编译和测试的问题。我意识到问题在于WebView库,因为当我从pubspec中删除它时,应用程序会编译。但我现在不能放弃使用WebView,它对应用程序很重要。奇怪的是,我可以在设备上调试应用程序 我尝试了以下几种解决方案: gradlew clean in project-flutter / android flutter clean 以及以下步骤: 更新至发布规范中web
gradlew clean in project-flutter / android
flutter clean
以及以下步骤:
- 更新至发布规范中webview依赖项的最新版本
- 我已经切换到颤振主频道
- 还执行了颤振升级,但没有解决问题
参考r8:因为消息表明类
io.flatter.plugins.webviewflatter.BuildConfig
在输入中出现两次。您将需要跟踪具有该类的两个依赖项
你可以用
./gradlew app:dependencies
及
获取有关所有依赖项的信息。然后,您需要找出如何避免这些依赖项之一。为我工作
我用webview\u media 0.1.1+3替换了pubspec.yaml中的webview\u flatter 0.3.19+9
这对我真的很有帮助[找到答案后,您可以从pubspec.yaml中删除
webview\u flatter
,因此您只需在pubspec.yaml上使用youtube\u player\u flatter
。您仍然可以在dart上使用带有webview\u flatter
的所有功能的webview使用webview创建的文件。我遇到这个问题是因为youtube\u player\u flatter和flatter\u html使用相同的依赖项flatter\u webview
我用这个,工作得很有魅力
- 颤振html:^1.0.0
- webview_颤振:^0.3.19+5
- youtube_player_flatter:6.0.3+2
- 从pubspec.yaml文件中删除webview_颤振包
- 使用import“package:webview\u media/webview\u flatter.dart”作为您的网络视图。; 这个很好用
- 为我工作。
只需更新youtube\u player\u flatter和webview\u flatter的软件包。之后,使用flatter clean和flatter packages get命令解决此问题。我使用webview\u flatter和youtube\u player\u flatter时遇到了相同的问题。我使用了@srinivasanrsp的解决方案在Github上,它很有效 问题是: youtube\u player\u Flatter使用webview播放来自youtube的视频。因此,您(不知不觉地)尝试导入并使用相同的软件包 解决方案:
./gradlew app:androidDependencies