startQrauth method

  1. @override
Future<void> startQrauth({
  1. required String appId,
  2. required List<String> scope,
  3. required String noncestr,
  4. required String ticket,
})
override

调用微信 API 获得 ticket,开始扫码登录

Implementation

@override
Future<void> startQrauth({
  required String appId,
  required List<String> scope,
  required String noncestr,
  required String ticket,
}) {
  final String timestamp = '${DateTime.now().millisecondsSinceEpoch}';
  final String content = 'appid=$appId'
      '&noncestr=$noncestr'
      '&sdk_ticket=$ticket'
      '&timestamp=$timestamp';
  final String signature = hex.encode(
    sha1.convert(utf8.encode(content)).bytes,
  );
  return methodChannel.invokeMethod<void>(
    'startQrauth',
    <String, dynamic>{
      'appId': appId,
      'scope': scope.join(','), // Scope
      'noncestr': noncestr,
      'timestamp': timestamp,
      'signature': signature,
    },
  );
}