From bbf1985d1f2799177f7b7aeee7f0a93a58fde122 Mon Sep 17 00:00:00 2001 From: Ming Ming Date: Wed, 17 Aug 2022 13:56:39 +0800 Subject: [PATCH] Fix sqlite workaround breaking web build --- app/lib/app_init.dart | 7 ++++--- app/lib/mobile/db_util.dart | 5 +++++ app/lib/web/db_util.dart | 4 ++++ 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/app/lib/app_init.dart b/app/lib/app_init.dart index fd425be3..e215b43c 100644 --- a/app/lib/app_init.dart +++ b/app/lib/app_init.dart @@ -32,12 +32,13 @@ import 'package:nc_photos/entity/tagged_file.dart'; import 'package:nc_photos/entity/tagged_file/data_source.dart'; import 'package:nc_photos/k.dart' as k; import 'package:nc_photos/mobile/android/android_info.dart'; +import 'package:nc_photos/mobile/platform.dart' + if (dart.library.html) 'package:nc_photos/web/platform.dart' as platform; import 'package:nc_photos/mobile/self_signed_cert_manager.dart'; import 'package:nc_photos/platform/features.dart' as features; import 'package:nc_photos/platform/k.dart' as platform_k; import 'package:nc_photos/pref.dart'; import 'package:nc_photos/pref_util.dart' as pref_util; -import 'package:sqlite3_flutter_libs/sqlite3_flutter_libs.dart'; import 'package:visibility_detector/visibility_detector.dart'; enum InitIsolateType { @@ -122,11 +123,11 @@ void initDrift() { } Future _initDriftWorkaround() async { - if (AndroidInfo().sdkInt < 24) { + if (platform_k.isAndroid && AndroidInfo().sdkInt < 24) { _log.info("[_initDriftWorkaround] Workaround Android 6- bug"); // see: https://github.com/flutter/flutter/issues/73318 and // https://github.com/simolus3/drift/issues/895 - await applyWorkaroundToOpenSqlite3OnOldAndroidVersions(); + await platform.applyWorkaroundToOpenSqlite3OnOldAndroidVersions(); } } diff --git a/app/lib/mobile/db_util.dart b/app/lib/mobile/db_util.dart index 45592ea7..773c6d27 100644 --- a/app/lib/mobile/db_util.dart +++ b/app/lib/mobile/db_util.dart @@ -4,6 +4,7 @@ import 'package:drift/drift.dart'; import 'package:drift/native.dart'; import 'package:path/path.dart' as path_lib; import 'package:path_provider/path_provider.dart'; +import 'package:sqlite3_flutter_libs/sqlite3_flutter_libs.dart' as sqlite3; Future> getSqliteConnectionArgs() async { // put the database file, called db.sqlite here, into the documents folder @@ -29,3 +30,7 @@ QueryExecutor openSqliteConnection() { return openSqliteConnectionWithArgs(args); }); } + +Future applyWorkaroundToOpenSqlite3OnOldAndroidVersions() { + return sqlite3.applyWorkaroundToOpenSqlite3OnOldAndroidVersions(); +} diff --git a/app/lib/web/db_util.dart b/app/lib/web/db_util.dart index f86846a7..50acd806 100644 --- a/app/lib/web/db_util.dart +++ b/app/lib/web/db_util.dart @@ -28,3 +28,7 @@ QueryExecutor openSqliteConnection() { ); }); } + +Future applyWorkaroundToOpenSqlite3OnOldAndroidVersions() async { + // not supported on web +}