小编lit*_*nal的帖子

如何访问包中的资源

原问题来自flutter issues 32799

我开发了一个 dart 包,我需要在运行时加载一些 json 文件,但是当我这样做时会发生错误。加载图片没问题,代码:

void main() {
  Future<void> loadAsset() async {
    String value = await rootBundle
        .loadString('lib/src/assets/JsonConfig/test.json');

    //Image img = Image.asset('lib/src/assets/default-logo.png');
  }

  test('adds one to input values', () async {
    await loadAsset();
  });
}
Run Code Online (Sandbox Code Playgroud)

我的 pubspec.yaml 文件如下:

flutter:
  # To add assets to your package, add an assets section, like this:
   assets:
   - lib/src/assets/default-logo.png
   - lib/src/assets/JsonConfig/test.json
   - lib/src/assets/
Run Code Online (Sandbox Code Playgroud)

flutter flutter-dependencies flutter-packages

8
推荐指数
1
解决办法
5359
查看次数

格式化字符串 res 时,gradle 插件 lint 错误

我在下面有一个字符串 res 和 kotlin 数据类:

<string name="amount_format">¥%1$.2f</string>

data class TagAndTotal(
    @ColumnInfo(name = "tag_name") var tagName: String,
    @ColumnInfo(name = "total") var total: Float)
Run Code Online (Sandbox Code Playgroud)

./gradlew lint升级到 AGP 3.1.0 后运行时出现以下错误。

Error: Wrong argument type for formatting argument '#1' in 
amount_format: conversion is 'f', received <ErrorType> (argument #2 in 
method call) [StringFormatMatches]
        applicationContext.getString(R.string.amount_format, it.total))
Run Code Online (Sandbox Code Playgroud)

但它在 AGP 3.0.1 中没有错误。

android lint android-gradle-plugin

4
推荐指数
1
解决办法
826
查看次数