init method

Future<void> init({
  1. String? directory,
})

Implementation

Future<void> init({String? directory}) async {
  // await Isar.initialize("./libisar_android_armv7.so");//initializeIsarCore(download: true);

  // final dir = await getApplicationDocumentsDirectory();
  // final dir = Directory.systemTemp.createTempSync()
  if (directory == Isar.sqliteInMemory) {
    await Isar.initialize();
  }
  isar = Isar.open(
    name: "db_ndk_${kDebugMode?"debug":"release"}",
    inspector: kDebugMode,
    maxSizeMiB: 1024,
    compactOnLaunch: const CompactCondition(minRatio: 2.0, minBytes: 100 * 1024 * 1024, minFileSize: 256 * 1024 * 1024),
    directory: directory ?? Directory.systemTemp.path,
    engine: directory == Isar.sqliteInMemory ? IsarEngine.sqlite: IsarEngine.isar,
    schemas: [
      DbEventSchema,
      DbUserRelayListSchema,
      DbRelaySetSchema,
      DbContactListSchema,
      DbMetadataSchema,
      DbNip05Schema
    ],
  );
  // isar.write((isar) {
  //   isar.clear();
  // });
}