在我的应用程序中,我想添加自定义转换。我使用插件 Auto_Route 进行路由,在文档中写有如何执行此操作,但是当我执行相同操作时,我会抛出错误。对于没有自定义转换的“正常”路由,我使用“ExtendedNavigator.root.push(Routes.shoppingFormScreen)”。
代码
import 'package:auto_route/auto_route.dart';
import 'package:auto_route/auto_route_annotations.dart';
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:mealapp/features/shopping_plan/presentation/pages/shopping_form.dart';
import '../../../../core/models/shopping_list.dart';
import '../../../../core/router/router.gr.dart';
import '../../../../core/services/repositories/shopping_list_repository.dart';
import '../../../../core/util/firestore_collections.dart';
import '../../../../core/util/global.dart';
import '../../../../injection_container.dart';
import '../../../auth/presentation/bloc/auth/auth_bloc.dart';
import '../../../auth/presentation/bloc/auth/auth_state.dart';
class ShoppingPage extends StatelessWidget {
@CustomRoute(transitionsBuilder: TransitionBuilders.slideBottom,durationInMilliseconds: 400)
ShoppingFormScreen shoppingFormScreenTest;
@override
Widget build(BuildContext context) {
final authBloc = context.bloc<AuthBloc>();
return Scaffold(
backgroundColor: darkGreyColor,
floatingActionButton: FloatingActionButton(
onPressed: () => CustomRoute(page: shoppingFormScreenTest(), transitionsBuilder: zoomInTransition),
child: Icon(Icons.add),
backgroundColor: redColor,
),
body: Column(
children: <Widget>[
Container(
padding: EdgeInsets.only(left: 20, top: 30), …Run Code Online (Sandbox Code Playgroud) 我正在使用 in_app_purchase 软件包,但我只能在订阅中获取一项计划
我有 3 个订阅:
Basic subscription
Premium subscription
Enterprise subscription
Run Code Online (Sandbox Code Playgroud)
在每个订阅中,我想要有 2 个计划:
Month plan
Year plan
Run Code Online (Sandbox Code Playgroud)
我总是得到启用“向后兼容性”(“这将是已弃用的 Google Play 计费库方法 querySkuDetailsAsync() 返回的基线”)的计划。
有什么方法可以获取所有计划,还是我必须订阅 6 个,每个订阅只有 1 个计划?
编辑:
import 'dart:async';
import 'dart:io';
import 'package:flutter/material.dart';
import 'package:flutter_i18n/flutter_i18n.dart';
import 'package:in_app_purchase/in_app_purchase.dart';
import 'package:in_app_purchase_storekit/in_app_purchase_storekit.dart';
import 'package:in_app_purchase_storekit/store_kit_wrappers.dart';
import 'package:motorline_home/widgets/materials/appbar/appbar_title_widget.dart';
import 'package:motorline_home/widgets/materials/pop_button_widget.dart';
import 'package:rxdart/subjects.dart';
class SubscriptionPage extends StatefulWidget {
const SubscriptionPage({
Key? key,
}) : super(key: key);
@override
State<SubscriptionPage> createState() => _SubscriptionPageState();
}
class _SubscriptionPageState extends State<SubscriptionPage> {
// In app subscriptions
InAppPurchase …Run Code Online (Sandbox Code Playgroud)