Целевые платформы: API API 34, iOS 17+< /li>
< /ul>
Что работает: < /strong> < /p>
Database Инициализируется на приложении. Правильно < /li>
Операции базы данных (CRUD) отлично работают во время сеанса приложения < /li>
Правильные разрешения на файлы (проверяются с помощью File Explorer на Android) < /li>
Файл базы данных существует и имеет ожидаемый размер (~ 140kb с данными) < /li>
< /ul>
< /p>
После полного закрытия приложения и повторного открытия файл базы данных исчез < /li>
Не существует сообщений об ошибках или исключениях < /li>
< /umbase files < /li>
< /ul> < /umbas Когда вы закрываете приложение, журналы закрываются с ним- если вы не можете открыть его?
Код: Выделить всё
public static async Task InitializeAsync()
{
if (_connection != null) return;
await _semaphore.WaitAsync();
try
{
if (_connection != null) return; // Double-check after acquiring lock
string dbPath = Path.Combine(FileSystem.AppDataDirectory, "BetterSQLite.db3");
//// Delete the database file if it exists (uncomment to enable)
//if (File.Exists(dbPath))
// File.Delete(dbPath);
_connection = new SQLiteAsyncConnection(dbPath);
// Create the tables if they don't exist
await _connection.CreateTablesAsync();
_logger?.LogInformation("SQLite database initialized successfully at {DbPath}", dbPath);
}
catch (Exception ex)
{
_logger?.LogError(ex, "Failed to initialize SQLite database");
throw new InvalidOperationException("Failed to initialize database", ex);
}
finally
{
_semaphore.Release();
}
}
Подробнее здесь: https://stackoverflow.com/questions/797 ... lease-mode
Мобильная версия