feat:参照研听的基础工程

This commit is contained in:
jingyun
2026-06-18 15:02:28 +08:00
commit 364fc837b3
367 changed files with 16495 additions and 0 deletions
@@ -0,0 +1,11 @@
import 'flutter_paid_platform_interface.dart';
class FlutterPaid {
Future<String?> getPlatformVersion() {
return FlutterPaidPlatform.instance.getPlatformVersion();
}
Future<String?> paid() {
return FlutterPaidPlatform.instance.paid();
}
}
@@ -0,0 +1,23 @@
import 'package:flutter/foundation.dart';
import 'package:flutter/services.dart';
import 'flutter_paid_platform_interface.dart';
/// An implementation of [FlutterPaidPlatform] that uses method channels.
class MethodChannelFlutterPaid extends FlutterPaidPlatform {
/// The method channel used to interact with the native platform.
@visibleForTesting
final methodChannel = const MethodChannel('flutter_paid');
@override
Future<String?> getPlatformVersion() async {
final version = await methodChannel.invokeMethod<String>('getPlatformVersion');
return version;
}
@override
Future<String?> paid() async {
final paid = await methodChannel.invokeMethod<String>('paid');
return paid;
}
}
@@ -0,0 +1,32 @@
import 'package:plugin_platform_interface/plugin_platform_interface.dart';
import 'flutter_paid_method_channel.dart';
abstract class FlutterPaidPlatform extends PlatformInterface {
/// Constructs a FlutterPaidPlatform.
FlutterPaidPlatform() : super(token: _token);
static final Object _token = Object();
static FlutterPaidPlatform _instance = MethodChannelFlutterPaid();
/// The default instance of [FlutterPaidPlatform] to use.
///
/// Defaults to [MethodChannelFlutterPaid].
static FlutterPaidPlatform get instance => _instance;
/// Platform-specific implementations should set this with their own
/// platform-specific class that extends [FlutterPaidPlatform] when
/// they register themselves.
static set instance(FlutterPaidPlatform instance) {
PlatformInterface.verifyToken(instance, _token);
_instance = instance;
}
Future<String?> getPlatformVersion() {
throw UnimplementedError('platformVersion() has not been implemented.');
}
Future<String?> paid() {
throw UnimplementedError('platformVersion() has not been implemented.');
}
}