当我为项目运行 bitbucket 管道时,我在颤动测试期间收到错误:
/root/.pub-cache/hosted/pub.dartlang.org/firebase_core-1.24.0/lib/src/firebase_app.dart:18:25: Error: Member not found: 'FirebaseAppPlatform.verifyExtends'.
FirebaseAppPlatform.verifyExtends(_delegate);
^^^^^^^^^^^^^
Run Code Online (Sandbox Code Playgroud)
当我在终端中运行颤振测试时,我没有遇到这些问题。
我的管道脚本是:
firebase firebase-authentication flutter flutter-test flutter-objectbox
我已在对象框中添加了多个实体并成功构建了 build_runner。\n flutter pun run build_runner build。\n现在,我添加了另外两个实体,但收到此错误 -无法解析注释 @Entity()
尝试添加实体
\nimport \'package:formula_application/objectbox.g.dart\';\nimport \'package:json_annotation/json_annotation.dart\';\n\npart \'stop_test_model.g.dart\';\n\n@JsonSerializable(\n explicitToJson: true,\n fieldRename: FieldRename.pascal,\n)\n@Entity()\nclass StopTest {\n StopTest(this.id, this.name);\n int id = 0;\n String name;\n //@Backlink()\n //final routes = ToMany<RouteTest>();\n\n factory StopTest.fromJson(Map<String, dynamic> json) =>\n _$StopTestFromJson(json);\n Map<String, dynamic> toJson() => _$StopTestToJson(this);\n}\n\n\\\\separate route test file\n\nimport \'package:formula_application/objectbox.g.dart\';\nimport \'package:json_annotation/json_annotation.dart\';\n\npart \'route_test_model.g.dart\';\n\n@JsonSerializable(\n explicitToJson: true,\n fieldRename: FieldRename.pascal,\n)\n@Entity()\nclass RouteTest {\n RouteTest(this.id, this.name);\n int id = 0;\n String name;\n //final stops = ToMany<StopTest>();\n\n factory RouteTest.fromJson(Map<String, dynamic> json) =>\n _$RouteTestFromJson(json);\n Map<String, dynamic> …Run Code Online (Sandbox Code Playgroud) 我正在尝试让我当前的 Flutter 应用程序在网络上运行。我打了电话flutter create .,但如果我尝试在 Chrome 中运行它,我会收到大约 10000 条错误消息的提示,这些消息都如下所示:
尝试删除“external”关键字或添加 JS 互操作注释。外部 ffi.Pointer<OBX_id_array> 删除;^
../../flutter/.pub-cache/hosted/pub.dartlang.org/objectbox-1.1.0/lib/src/native/bindings/objectbox-c.dart:6289:41:错误:仅JS互操作成员可能是“外部”的。尝试删除“external”关键字或添加 JS 互操作注释。外部 ffi.Pointer<OBX_sync_change> 列表;^
../../flutter/.pub-cache/hosted/pub.dartlang.org/objectbox-1.1.0/lib/src/native/bindings/objectbox-c.dart:6292:16:错误:仅JS互操作成员可能是“外部”的。尝试删除“external”关键字或添加 JS 互操作注释。外部整数计数;^
无法编译应用程序。
我尝试用谷歌搜索,但找不到任何关于此的信息。有谁知道这是什么以及我该如何适应它?
我希望使用 Flutter 和 ObjectBox (1.1.1 -> Flutter) 定义最佳开发实践。
我想建立一个由Repository组成的架构来实现对数据库中存储的对象的查询功能。这是一个对象人的例子。存储库主要从 viewModel 调用。
import 'package:flutter_app_best_practice/data/person_repository_interface.dart';
import 'package:flutter_app_best_practice/model/person.dart';
import 'package:flutter_app_best_practice/objectbox.g.dart';
import 'package:objectbox/objectbox.dart';
class PersonRepository implements IPersonRepository{
var _store;
late Box _box;
@override
Future<List<Person>>? getPeople() {
List<Person> list = _box.getAll() as List<Person>;
return Future.value(list);
}
@override
Future<void>? addPerson(String name, int age) async {
Person person = new Person();
person.name = name;
person.age = age;
_box.put(person); // Add
return;
}
@override
Future<void>? initialize() async {
// Future<Store> openStore() {...} is defined in the generated objectbox.g.dart …Run Code Online (Sandbox Code Playgroud) 我有一个带有 Map 属性的类,但它似乎不存储该属性。所有其他属性都存储良好:
@JsonSerializable()
@Entity()
class PossessionStats {
@JsonKey(defaultValue: 0)
int id;
String cardUuid;
int total;
Map<String, int>? totalByVersion;
CardPossessionStats({
this.id = 0,
required this.cardUuid,
this.total = 0,
this.totalByVersion,
});
}
Run Code Online (Sandbox Code Playgroud)
当我保存一个时:
stats = PossessionStats(cardUuid: card.uuid);
if (stats.totalByVersion == null) {
stats.totalByVersion = Map();
}
stats.totalByVersion!
.update(version, (value) => quantity, ifAbsent: () => quantity);
stats.total = stats.totalByVersion!.values
.fold(0, (previousValue, element) => previousValue + element);
box.put(stats);
Run Code Online (Sandbox Code Playgroud)
当我得到结果时(刷新后),我可以看到total是正确的,但totalByVersion仍然是空的。
谢谢!