Váš adaptér potřebuje práci. V rámci vaší metody getView() předpokládáte, že argumenty jsou URI. Ve skutečnosti jsou tyto argumenty:
public View getView(final int position, View convertView, final ViewGroup parent) {
...
}
První argument je pozice položky v zobrazení mřížky, kterou se chystáte vykreslit. Druhým je Pohled – který lze recyklovat. A třetí je rodič pohledu. Snažíte se zaujmout pozici, jednoduché celé číslo, a použít to jako URI
Co byste měli udělat v rámci svého getView, je vytažení obrázku z databáze, který odpovídá "pozici" té položce
Další informace o vývoji zavaděčů pro vaše adaptéry naleznete na tomto odkazu