feature 5.0.0

This commit is contained in:
v7lin
2023-02-24 14:57:43 +08:00
parent 85c9dcdccc
commit b32b842132
8 changed files with 75 additions and 77 deletions

View File

@ -6,8 +6,8 @@ part of 'tencent_api_resp.dart';
// JsonSerializableGenerator
// **************************************************************************
TencentUserInfoResp _$TencentUserInfoRespFromJson(Map<String, dynamic> json) {
return TencentUserInfoResp(
TencentUserInfoResp _$TencentUserInfoRespFromJson(Map<String, dynamic> json) =>
TencentUserInfoResp(
ret: json['ret'] as int? ?? 0,
msg: json['msg'] as String?,
isLost: json['is_lost'] as int?,
@ -31,7 +31,6 @@ TencentUserInfoResp _$TencentUserInfoRespFromJson(Map<String, dynamic> json) {
level: json['level'] as String?,
isYellowYearVip: json['is_yellow_year_vip'] as String?,
);
}
Map<String, dynamic> _$TencentUserInfoRespToJson(
TencentUserInfoResp instance) =>

View File

@ -6,15 +6,14 @@ part of 'tencent_unionid_resp.dart';
// JsonSerializableGenerator
// **************************************************************************
TencentUnionidResp _$TencentUnionidRespFromJson(Map<String, dynamic> json) {
return TencentUnionidResp(
TencentUnionidResp _$TencentUnionidRespFromJson(Map<String, dynamic> json) =>
TencentUnionidResp(
error: json['error'] as int? ?? 0,
errorDescription: json['error_description'] as String?,
clientId: json['client_id'] as String?,
openid: json['openid'] as String?,
unionid: json['unionid'] as String?,
);
}
Map<String, dynamic> _$TencentUnionidRespToJson(TencentUnionidResp instance) =>
<String, dynamic>{

View File

@ -40,9 +40,9 @@ class Home extends StatefulWidget {
}
class _HomeState extends State<Home> {
late final StreamSubscription<BaseResp> _respSubs;
late final StreamSubscription<TencentResp> _respSubs;
LoginResp? _loginResp;
TencentLoginResp? _loginResp;
@override
void initState() {
@ -50,12 +50,12 @@ class _HomeState extends State<Home> {
_respSubs = TencentKitPlatform.instance.respStream().listen(_listenLogin);
}
void _listenLogin(BaseResp resp) {
if (resp is LoginResp) {
void _listenLogin(TencentResp resp) {
if (resp is TencentLoginResp) {
_loginResp = resp;
final String content = 'login: ${resp.openid} - ${resp.accessToken}';
_showTips('登录', content);
} else if (resp is ShareMsgResp) {
} else if (resp is TencentShareMsgResp) {
final String content = 'share: ${resp.ret} - ${resp.msg}';
_showTips('分享', content);
}

View File

@ -4,8 +4,8 @@ import 'package:json_annotation/json_annotation.dart';
part 'resp.g.dart';
abstract class BaseResp {
const BaseResp({
abstract class TencentResp {
const TencentResp({
required this.ret,
this.msg,
});
@ -41,8 +41,8 @@ abstract class BaseResp {
explicitToJson: true,
fieldRename: FieldRename.snake,
)
class LoginResp extends BaseResp {
const LoginResp({
class TencentLoginResp extends TencentResp {
const TencentLoginResp({
required super.ret,
super.msg,
this.openid,
@ -51,8 +51,8 @@ class LoginResp extends BaseResp {
this.createAt,
});
factory LoginResp.fromJson(Map<String, dynamic> json) =>
_$LoginRespFromJson(json);
factory TencentLoginResp.fromJson(Map<String, dynamic> json) =>
_$TencentLoginRespFromJson(json);
final String? openid;
final String? accessToken;
@ -64,22 +64,22 @@ class LoginResp extends BaseResp {
: null;
@override
Map<String, dynamic> toJson() => _$LoginRespToJson(this);
Map<String, dynamic> toJson() => _$TencentLoginRespToJson(this);
}
@JsonSerializable(
explicitToJson: true,
fieldRename: FieldRename.snake,
)
class ShareMsgResp extends BaseResp {
const ShareMsgResp({
class TencentShareMsgResp extends TencentResp {
const TencentShareMsgResp({
required super.ret,
super.msg,
});
factory ShareMsgResp.fromJson(Map<String, dynamic> json) =>
_$ShareMsgRespFromJson(json);
factory TencentShareMsgResp.fromJson(Map<String, dynamic> json) =>
_$TencentShareMsgRespFromJson(json);
@override
Map<String, dynamic> toJson() => _$ShareMsgRespToJson(this);
Map<String, dynamic> toJson() => _$TencentShareMsgRespToJson(this);
}

View File

@ -6,8 +6,8 @@ part of 'resp.dart';
// JsonSerializableGenerator
// **************************************************************************
LoginResp _$LoginRespFromJson(Map<String, dynamic> json) {
return LoginResp(
TencentLoginResp _$TencentLoginRespFromJson(Map<String, dynamic> json) =>
TencentLoginResp(
ret: json['ret'] as int? ?? 0,
msg: json['msg'] as String?,
openid: json['openid'] as String?,
@ -15,9 +15,9 @@ LoginResp _$LoginRespFromJson(Map<String, dynamic> json) {
expiresIn: json['expires_in'] as int?,
createAt: json['create_at'] as int?,
);
}
Map<String, dynamic> _$LoginRespToJson(LoginResp instance) => <String, dynamic>{
Map<String, dynamic> _$TencentLoginRespToJson(TencentLoginResp instance) =>
<String, dynamic>{
'ret': instance.ret,
'msg': instance.msg,
'openid': instance.openid,
@ -26,14 +26,14 @@ Map<String, dynamic> _$LoginRespToJson(LoginResp instance) => <String, dynamic>{
'create_at': instance.createAt,
};
ShareMsgResp _$ShareMsgRespFromJson(Map<String, dynamic> json) {
return ShareMsgResp(
TencentShareMsgResp _$TencentShareMsgRespFromJson(Map<String, dynamic> json) =>
TencentShareMsgResp(
ret: json['ret'] as int? ?? 0,
msg: json['msg'] as String?,
);
}
Map<String, dynamic> _$ShareMsgRespToJson(ShareMsgResp instance) =>
Map<String, dynamic> _$TencentShareMsgRespToJson(
TencentShareMsgResp instance) =>
<String, dynamic>{
'ret': instance.ret,
'msg': instance.msg,

View File

@ -14,17 +14,17 @@ class MethodChannelTencentKit extends TencentKitPlatform {
const MethodChannel('v7lin.github.io/tencent_kit')
..setMethodCallHandler(_handleMethod);
final StreamController<BaseResp> _respStreamController =
StreamController<BaseResp>.broadcast();
final StreamController<TencentResp> _respStreamController =
StreamController<TencentResp>.broadcast();
Future<dynamic> _handleMethod(MethodCall call) async {
switch (call.method) {
case 'onLoginResp':
_respStreamController.add(LoginResp.fromJson(
_respStreamController.add(TencentLoginResp.fromJson(
(call.arguments as Map<dynamic, dynamic>).cast<String, dynamic>()));
break;
case 'onShareResp':
_respStreamController.add(ShareMsgResp.fromJson(
_respStreamController.add(TencentShareMsgResp.fromJson(
(call.arguments as Map<dynamic, dynamic>).cast<String, dynamic>()));
break;
}
@ -59,7 +59,7 @@ class MethodChannelTencentKit extends TencentKitPlatform {
}
@override
Stream<BaseResp> respStream() {
Stream<TencentResp> respStream() {
return _respStreamController.stream;
}

View File

@ -43,7 +43,7 @@ abstract class TencentKitPlatform extends PlatformInterface {
}
///
Stream<BaseResp> respStream() {
Stream<TencentResp> respStream() {
throw UnimplementedError('respStream() has not been implemented.');
}

View File

@ -37,7 +37,7 @@ class MockTencentKitPlatform
}
@override
Stream<BaseResp> respStream() {
Stream<TencentResp> respStream() {
throw UnimplementedError();
}