El id es necesario en el Adapter, en el método getItemId que se sobrescribe al extender de BaseAdapter, por tanto en el return de este método he quitado la llamada a getId() y directamente he puesto un 0 así puedo borrar el getId() de App.java