谷歌字体包在颤振中不起作用

Posted

技术标签:

【中文标题】谷歌字体包在颤振中不起作用【英文标题】:Google Fonts package Not working in flutter 【发布时间】:2020-05-29 09:30:03 【问题描述】:

google_fonts 包在 FLutter 的最终构建 apk 中不工作,它在调试模式下工作正常,但是一旦我构建它并安装最终 apk,它只显示常规字体。

【问题讨论】:

也有完全相同的问题。有什么修复吗? 它似乎与我相信的最新版本一起工作,或者它可能只是一个颤振构建的东西,尝试颤振清洁并构建它。 非常感谢!会试一试! @sameerkashyap 你有没有解决这个问题,我也面临同样的问题? TIA。 【参考方案1】:

确保您已在 /android/app/src/main/AndroidManifest.xml 中添加以下行

<uses-permission android:name="android.permission.INTERNET"/>

【讨论】:

【参考方案2】:

我认为这不是互联网问题。大多数情况下,使用 Flutter 包的字体在 Pubspec 文件中包含错误。

检查您的 Pubspec.yaml 文件。确保您的 google 字体包以这种方式格式化

version: 1.0.0+1
environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  google_fonts: ^1.1.0

flutter:
  assets:
    - google_fonts/ # you only need this line and nothing in the fonts area per https://pub.dev/packages/google_fonts 

【讨论】:

【参考方案3】:

这可能是因为互联网权限问题,谷歌字体使用互联网访问,如果没有在您的项目中应用权限,安装应用程序时将无法正常工作。

为此,您需要将后续行添加到文件 AndroidManifest.xml 中; yourappname/android/app/src/debug/AndroidManifest.xml

以及您将添加的行:

<uses-permission android:name="android.permission.INTERNET"/>

【讨论】:

google_fonts 包已经包含了字体,并且已经安装在本地机器上,无需再次使用互联网检索字体。 要通过http下载字体,android.permission.INTERNET权限也应该添加到/android/app/src/main/AndroidManifest.xml。 我不知道为什么,但这实际上对我有用,在 google_fonts: ^2.0.0 flutter: 2.2.0 上,在另一个项目中没有添加此权限,在这种情况下仍然有效。无论如何感谢@Lunedor。

以上是关于谷歌字体包在颤振中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

ngx-socket-io 包在 Angular JS 中不起作用

颤振补间基本动画在“FutureBuilder”中不起作用

为啥这个切换按钮在颤振 - 飞镖中不起作用?

为啥捆绑包在我的 asp.net mvc 项目中不起作用?

滑动以返回在 ios 中的颤振 webview 中不起作用

颤振热重新加载在android studio(mac)中不起作用