Commit 6426f18f by tanghuan

拉起微信登录后,从微信授权恢复时重新设置竖屏

1 parent 3ce3309a
...@@ -9,6 +9,7 @@ import 'package:appframe/data/repositories/wechat_auth_repository.dart'; ...@@ -9,6 +9,7 @@ import 'package:appframe/data/repositories/wechat_auth_repository.dart';
import 'package:appframe/utils/login_util.dart'; import 'package:appframe/utils/login_util.dart';
import 'package:equatable/equatable.dart'; import 'package:equatable/equatable.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:fluttertoast/fluttertoast.dart'; import 'package:fluttertoast/fluttertoast.dart';
import 'package:fluwx/fluwx.dart'; import 'package:fluwx/fluwx.dart';
...@@ -281,6 +282,11 @@ class LoginMainCubit extends Cubit<LoginMainState> with WidgetsBindingObserver { ...@@ -281,6 +282,11 @@ class LoginMainCubit extends Cubit<LoginMainState> with WidgetsBindingObserver {
@override @override
void didChangeAppLifecycleState(AppLifecycleState appState) { void didChangeAppLifecycleState(AppLifecycleState appState) {
// App 回到前台时,重新强制竖屏(防止从微信等外部App返回时系统重置方向偏好)
if (appState == AppLifecycleState.resumed) {
SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
}
// App 回到前台时,如果仍在等待微信授权回调,给真实回调一个短窗口; // App 回到前台时,如果仍在等待微信授权回调,给真实回调一个短窗口;
// 窗口内仍未收到 WeChatAuthResponse,则认定为系统层取消(典型场景: // 窗口内仍未收到 WeChatAuthResponse,则认定为系统层取消(典型场景:
// 设备装有多个微信,系统弹出选择器后用户点击取消,微信 SDK 根本不会回调)。 // 设备装有多个微信,系统弹出选择器后用户点击取消,微信 SDK 根本不会回调)。
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!