fix android background push
This commit is contained in:
@@ -7,6 +7,7 @@ import io.flutter.plugin.common.PluginRegistry.PluginRegistrantCallback
|
|||||||
import io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin
|
import io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin
|
||||||
import io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService
|
import io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService
|
||||||
import io.flutter.plugins.sharedpreferences.SharedPreferencesPlugin
|
import io.flutter.plugins.sharedpreferences.SharedPreferencesPlugin
|
||||||
|
import io.flutter.plugins.pathprovider.PathProviderPlugin
|
||||||
|
|
||||||
class Application : FlutterApplication(), PluginRegistrantCallback {
|
class Application : FlutterApplication(), PluginRegistrantCallback {
|
||||||
override fun onCreate() {
|
override fun onCreate() {
|
||||||
@@ -15,10 +16,12 @@ class Application : FlutterApplication(), PluginRegistrantCallback {
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun registerWith(registry: PluginRegistry?) {
|
override fun registerWith(registry: PluginRegistry?) {
|
||||||
FlutterLocalNotificationsPlugin.registerWith(registry?.registrarFor(
|
PathProviderPlugin.registerWith(registry?.registrarFor(
|
||||||
"com.dexterous.flutterlocalnotifications.FlutterLocalNotificationsPlugin"))
|
"io.flutter.plugins.pathprovider.PathProviderPlugin"))
|
||||||
SharedPreferencesPlugin.registerWith(registry?.registrarFor(
|
SharedPreferencesPlugin.registerWith(registry?.registrarFor(
|
||||||
"io.flutter.plugins.sharedpreferences.SharedPreferencesPlugin"))
|
"io.flutter.plugins.sharedpreferences.SharedPreferencesPlugin"))
|
||||||
|
FlutterLocalNotificationsPlugin.registerWith(registry?.registrarFor(
|
||||||
|
"com.dexterous.flutterlocalnotifications.FlutterLocalNotificationsPlugin"))
|
||||||
FirebaseMessagingPlugin.registerWith(registry?.registrarFor("io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin"))
|
FirebaseMessagingPlugin.registerWith(registry?.registrarFor("io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin"))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -98,7 +98,8 @@ class ChannelListView extends StatefulWidget {
|
|||||||
_ChannelListViewState createState() => _ChannelListViewState();
|
_ChannelListViewState createState() => _ChannelListViewState();
|
||||||
}
|
}
|
||||||
|
|
||||||
class _ChannelListViewState extends State<ChannelListView> {
|
class _ChannelListViewState extends State<ChannelListView>
|
||||||
|
with WidgetsBindingObserver {
|
||||||
final ScrollController _scrollController = ScrollController();
|
final ScrollController _scrollController = ScrollController();
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -334,6 +335,8 @@ class _ChannelListViewState extends State<ChannelListView> {
|
|||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
|
|
||||||
|
WidgetsBinding.instance.addObserver(this);
|
||||||
|
|
||||||
final streamChat = StreamChat.of(context);
|
final streamChat = StreamChat.of(context);
|
||||||
streamChat.queryChannels(
|
streamChat.queryChannels(
|
||||||
filter: widget.filter,
|
filter: widget.filter,
|
||||||
@@ -346,4 +349,23 @@ class _ChannelListViewState extends State<ChannelListView> {
|
|||||||
_listenChannelPagination(streamChat);
|
_listenChannelPagination(streamChat);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void didChangeAppLifecycleState(AppLifecycleState state) {
|
||||||
|
if (state == AppLifecycleState.resumed) {
|
||||||
|
StreamChat.of(context).queryChannels(
|
||||||
|
filter: widget.filter,
|
||||||
|
sortOptions: widget.sort,
|
||||||
|
paginationParams: widget.pagination,
|
||||||
|
options: widget.options,
|
||||||
|
onlyOffline: true,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void dispose() {
|
||||||
|
WidgetsBinding.instance.removeObserver(this);
|
||||||
|
super.dispose();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -198,6 +198,7 @@ class StreamChatState extends State<StreamChat>
|
|||||||
List<SortOption> sortOptions,
|
List<SortOption> sortOptions,
|
||||||
PaginationParams paginationParams,
|
PaginationParams paginationParams,
|
||||||
Map<String, dynamic> options,
|
Map<String, dynamic> options,
|
||||||
|
bool onlyOffline = false,
|
||||||
}) async {
|
}) async {
|
||||||
if (_queryChannelsLoadingController.value == true) {
|
if (_queryChannelsLoadingController.value == true) {
|
||||||
return;
|
return;
|
||||||
@@ -210,6 +211,7 @@ class StreamChatState extends State<StreamChat>
|
|||||||
sort: sortOptions,
|
sort: sortOptions,
|
||||||
options: options,
|
options: options,
|
||||||
paginationParams: paginationParams,
|
paginationParams: paginationParams,
|
||||||
|
onlyOffline: onlyOffline,
|
||||||
);
|
);
|
||||||
_queryChannelsLoadingController.sink.add(false);
|
_queryChannelsLoadingController.sink.add(false);
|
||||||
} catch (err, stackTrace) {
|
} catch (err, stackTrace) {
|
||||||
|
|||||||
Reference in New Issue
Block a user