在发行模式下的flutter apk不能重建小部件,但在调试模式下可以正常工作

问题描述

更改变量时,无法在提供者notifyListeners()上重建无状态窗口小部件。它仅在发布模式下发生,而在调试模式下一切都很好。

我的pubspec.yaml文件

name: lomaysowda
description: Lomay Sowda elektron sowda komekcisi
version: 1.0.0+1

environment:
  sdk: ">=2.1.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^0.1.2
  http: ^0.12.1
  carousel_pro: ^1.0.0
  clip_shadow: any
  flutter_icons: ^1.1.0
  flutter_bloc: ^4.0.1
  bloc: ^4.0.0
  equatable: ^1.2.0
  badges: ^1.1.1
  styled_text: ^1.0.1+1
  flutter_svg: ^0.18.0
  sqflite: ^1.3.1
  device_info: ^0.4.2+4
  path_provider: ^1.6.11
  provider: ^4.3.1
  cached_network_image: ^2.2.0+1

dev_dependencies:
  flutter_test:
    sdk: flutter


flutter:

  uses-material-design: true

  assets:
    - images/

我与提供者的main.dart

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await DbHelper.init();
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return ChangeNotifierProvider<ProviderModel>(
      create: (context) => ProviderModel(Services()),child: ...
...
}

providerModel.dart

class ProviderModel with ChangeNotifier{

  List<CartItem> _cartItems;
  String _apiAddress;

  List<CartItem> get  GetCartItems=>_cartItems;

  void set SetCartItems(List<CartItem> cartItems){
    _cartItems=cartItems;
    print("DkPrint PushNotifyListeners _cartItems changed");
    notifyListeners();
  }
}

使用providerModel的无状态小部件

class ResourceItem extends StatelessWidget {

...

  @override
  Widget build(BuildContext context) {
    final providerModel = Provider.of<ProviderModel>(context);
    int _orderCount = providerModel.GetCartItems.firstWhere(
            (element) => element.ResId == _resource.ResId,orElse: () => CartItem()).ItemCount ??
        0;
    return ...
...
 Column(children: <Widget>[
(_orderCount > 0)
              ? CounterWidgets(_orderCount,_resource)
              : Container(
                  width: 0,),...
])
...

我对AndroidMainfest.xml具有互联网许可

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...