用于颤振的 Google 字体包无法在发布模式下加载字体

Posted

技术标签:

【中文标题】用于颤振的 Google 字体包无法在发布模式下加载字体【英文标题】:Google Fonts package for flutter fails to load font in release mode 【发布时间】:2021-01-02 07:26:10 【问题描述】:

我在 Flutter 应用程序中使用了 Google 字体包 https://pub.dev/packages/google_fonts

应用程序在调试模式下运行良好,字体加载没有任何问题。

但是,当我在发布模式下构建和运行应用程序时,字体无法加载。大多数情况下,应用程序会崩溃,有时会加载默认的 Roboto 字体。

GitHub 上存在一些问题,但其中任何一个都不能解决我的问题。 我尝试清理构建文件夹,重新检查pubspec.yaml 文件,检查google_fonts 包版本,验证互联网连接,甚至重新创建项目。但没有解决问题。

版本:

google_fonts: ^1.1.0

我在使用flutter run --release 命令运行应用程序时收到此错误日志 这是我得到的错误:

I/flutter (17872): Error: google_fonts was unable to load font Montserrat-SemiBold because the following exception occured:
I/flutter (17872): Exception: Failed to load font with url: https://fonts.gstatic.com/s/a/5f82f6e55db43e905c6ab9d04395566b243c41798d6a53545ffbd10ed6c424c4.ttf
I/flutter (17872): Error: google_fonts was unable to load font Montserrat-Medium because the following exception occured:
I/flutter (17872): Exception: Failed to load font with url: https://fonts.gstatic.com/s/a/cec0f6e0bfbfaa352eb189f0eb220916dd278b02aaf824be87055ba5cc38d58b.ttf
I/flutter (17872): Error: google_fonts was unable to load font Montserrat-Regular because the following exception occured:
I/flutter (17872): Exception: Failed to load font with url: https://fonts.gstatic.com/s/a/470e93c06a9fffa6851375f54047917a9d774ed6027d9f044cd1bc8d4cd5630b.ttf

【问题讨论】:

您的设备连接到互联网了吗?此外,卸载您正在使用的应用程序并运行flutter clean 可能会对您有所帮助。 这两样我都做了,但是还是不行。 在主目录下的android Manifest文件中添加Internet权限解决了发布模式的问题。 【参考方案1】:

这个错误可能有很多原因,但我认为是这两个之一:

    如果它只发生在 android 上,那么您可能没有将 <uses-permission android:name="android.permission.INTERNET" /> 添加到清单文件中。 您所在的国家/地区禁止此服务

【讨论】:

是的,我检查了互联网,它已经存在于 manifest.xml 中。如果该服务被禁止,那么它不应该在调试模式下运行,但确实如此。所以,我认为这应该不是问题。 你说得对,我忘了它在调试模式下工作。我想不出别的@BalaGanesh

以上是关于用于颤振的 Google 字体包无法在发布模式下加载字体的主要内容,如果未能解决你的问题,请参考以下文章

Flutter 应用程序中的 Google 字体包无法正常工作

无法导入字体系列

如何解决颤振包 google_mobile_ads 中的此错误

如何使用颤振在 django 中进行 google、facebook 身份验证

无法从 GmsCore 加载 IDynamiteLoader:找不到应用程序包 com.google.android.gms

颤振构建错误无法解析 com.google.android.gms:play-services-location:16.+