better web support
This commit is contained in:
@@ -1,4 +1,5 @@
|
|||||||
import 'package:example/stream_version.dart';
|
import 'package:example/stream_version.dart';
|
||||||
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
||||||
import 'package:flutter_svg/flutter_svg.dart';
|
import 'package:flutter_svg/flutter_svg.dart';
|
||||||
@@ -165,26 +166,28 @@ class ChooseUserPage extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
final secureStorage = FlutterSecureStorage();
|
|
||||||
final client = StreamChat.of(context).client;
|
final client = StreamChat.of(context).client;
|
||||||
client.apiKey = kDefaultStreamApiKey;
|
client.apiKey = kDefaultStreamApiKey;
|
||||||
await client.setUser(
|
await client.connectUser(
|
||||||
user,
|
user,
|
||||||
token,
|
token,
|
||||||
);
|
);
|
||||||
|
|
||||||
secureStorage.write(
|
if (!kIsWeb) {
|
||||||
key: kStreamApiKey,
|
final secureStorage = FlutterSecureStorage();
|
||||||
value: kDefaultStreamApiKey,
|
secureStorage.write(
|
||||||
);
|
key: kStreamApiKey,
|
||||||
secureStorage.write(
|
value: kDefaultStreamApiKey,
|
||||||
key: kStreamUserId,
|
);
|
||||||
value: user.id,
|
secureStorage.write(
|
||||||
);
|
key: kStreamUserId,
|
||||||
secureStorage.write(
|
value: user.id,
|
||||||
key: kStreamToken,
|
);
|
||||||
value: token,
|
secureStorage.write(
|
||||||
);
|
key: kStreamToken,
|
||||||
|
value: token,
|
||||||
|
);
|
||||||
|
}
|
||||||
Navigator.pushNamedAndRemoveUntil(
|
Navigator.pushNamedAndRemoveUntil(
|
||||||
context,
|
context,
|
||||||
Routes.HOME,
|
Routes.HOME,
|
||||||
|
|||||||
@@ -44,10 +44,14 @@ class _MyAppState extends State<MyApp> with TickerProviderStateMixin {
|
|||||||
int timeOfStartMs;
|
int timeOfStartMs;
|
||||||
|
|
||||||
Future<InitData> _initConnection() async {
|
Future<InitData> _initConnection() async {
|
||||||
final secureStorage = FlutterSecureStorage();
|
String apiKey, userId, token;
|
||||||
|
|
||||||
final apiKey = await secureStorage.read(key: kStreamApiKey);
|
if (!kIsWeb) {
|
||||||
final userId = await secureStorage.read(key: kStreamUserId);
|
final secureStorage = FlutterSecureStorage();
|
||||||
|
apiKey = await secureStorage.read(key: kStreamApiKey);
|
||||||
|
userId = await secureStorage.read(key: kStreamUserId);
|
||||||
|
token = await secureStorage.read(key: kStreamToken);
|
||||||
|
}
|
||||||
|
|
||||||
final client = StreamChatClient(
|
final client = StreamChatClient(
|
||||||
apiKey ?? kDefaultStreamApiKey,
|
apiKey ?? kDefaultStreamApiKey,
|
||||||
@@ -55,14 +59,13 @@ class _MyAppState extends State<MyApp> with TickerProviderStateMixin {
|
|||||||
)..chatPersistenceClient = chatPersistentClient;
|
)..chatPersistenceClient = chatPersistentClient;
|
||||||
|
|
||||||
if (userId != null) {
|
if (userId != null) {
|
||||||
final token = await secureStorage.read(key: kStreamToken);
|
|
||||||
await client.connectUser(
|
await client.connectUser(
|
||||||
User(id: userId),
|
User(id: userId),
|
||||||
token,
|
token,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
var prefs = await StreamingSharedPreferences.instance;
|
final prefs = await StreamingSharedPreferences.instance;
|
||||||
|
|
||||||
return InitData(client, prefs);
|
return InitData(client, prefs);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user