Aspetta, farti fare la query di select sulla tabella android_metadata era un test (positivo) per capire che in effetti il .getReadableDatabase ti ha creato il file del db vuoto e tu consulti quello (per questo hai l'error 'table rubrica not found').
In merito al nullpointer exception, puoi postare il logcat relativo? Quando hai l'errore?