Recently, when I was working on an android project, I encountered a problem: ApplicationProgramDuring initialization, You need to insert a large number of data into SQLite in batches, resulting in slow application startup.
Android uses the SQLite database, while SQLite is a lightweight database. After Google finds that the issue of SQLite transaction processing is a transaction by default when SQLite inserts data, disk operations are performed as many data records as possible. The first 5000 records of my application are 5000 read/write operations on the disk.
Solution:
Add transaction processing and insert 5000 records as a transaction
Database. begintransaction (); // manually set the start transaction
// Data insertion operation cycle
Database. settransactionsuccessful (); // sets whether the transaction is successfully processed. If this parameter is not set, the system automatically rolls back and does not submit the transaction.
Database. endtransaction (); // processing completed