我已经在 flutter 中使用 RevenueCat 实现了订阅,但 RevenueCat 没有关于取消订阅的文档。
我正在使用 Revenuecat 进行扑动。在套餐订阅期间,我想在购买时给用户一定的折扣。有什么办法可以让客户端在订阅套餐时给予折扣吗?
我正在使用 flutter audio_service和just_audio包作为音乐播放器。我想在初始化音乐播放器时播放播放列表中特定队列位置的媒体项目。当我调用 AudioService.start() 方法时,它始终播放播放列表的第一项。当我启动音频服务时,如何传递并播放播放列表中特定队列位置的媒体项目?
音频服务启动
AudioService.start(
backgroundTaskEntrypoint: _audioPlayerTaskEntrypoint,
androidNotificationChannelName: 'Zenmind',
androidNotificationColor: 0xFF2196f3,
androidNotificationIcon: 'mipmap/ic_launcher',
androidEnableQueue: true,
params: params); // [params contains playlist ]
Run Code Online (Sandbox Code Playgroud)
_audioPlayerTaskEntrypoint代码
void _audioPlayerTaskEntrypoint() async {
AudioServiceBackground.run(() => AudioPlayerTask());
}
Run Code Online (Sandbox Code Playgroud)
AudioPlayerTask类
class AudioPlayerTask extends BackgroundAudioTask {
var _queue = <MediaItem>[];
AudioPlayer _player = new AudioPlayer();
AudioProcessingState _skipState;
Seeker _seeker;
StreamSubscription<PlaybackEvent> _eventSubscription;
List<MediaItem> get queue => _queue;
int get index => _player.currentIndex;
MediaItem get mediaItem => index == null ? null : queue[index];
@override
Future<void> …Run Code Online (Sandbox Code Playgroud) 我能够像Gmail应用程序一样制作非常相似的浮动动作按钮动画,但是当我isExpanded为 false时,我会获得一点余量。有什么解决办法吗?
这是我的代码
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
debugShowCheckedModeBanner: false,
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: MyHomePage(),
);
}
}
class MyHomePage extends StatefulWidget {
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
bool isExpanded = false;
Widget build(context) {
return Scaffold(
floatingActionButton: AnimatedContainer(
width: isExpanded ? 150 : 56,
height: 56,
duration: Duration(milliseconds: 300),
child: FloatingActionButton.extended( …Run Code Online (Sandbox Code Playgroud)