Това изключение се хвърля, ако sqlite3_db_readonly() връща не нула. Може да върне не нула if
-
файлът на базата данни е само за четене или
-
файлът на базата данни не съществува.
(Справка)
Имате твърдо кодиран път "/storage/sdcard1/sk2.db" - вероятно там не съществува база данни. Използвайте променливи от Environment за достъп до външното си хранилище вместо твърдо кодирани пътища.