Jag kom på ett sätt att få det att fungera, som jag inte är särskilt stolt över, men det gör jobbet. Om du inte kan vara med i en transaktion när du bifogar en databas, avsluta sedan transaktionen först.
db.setTransactionSuccessful();
db.endTransaction();
db.execSQL("ATTACH DATABASE ? AS names",new String[]{namesDb});
db.beginTransaction();