Do per scontato che l'hardware consista in:
[ Device Android che si connette via wifi al router]---> [Router] <---[ Arduino con EthernetShield collegato al router] ---> [relay board collegata ad un qualsiasi elemento tipo lampadina ecc...]
L'indirizzo ip del router in questo caso farebbe solo da gateway... ovvero il nodo centrale dove sono collegati i vari dispositivi della LAN
tu dovresti mandare istruzioni direttamente all' IP che identifica Arduino nella rete.
Come dice alexAndroid basterebbe mandare una chiamata tramite un semplice
http://xx.xx.xx.xx?accendi dove "xx.xx.xx.xx" è l'IP di arduino e "accendi" in base al codice che hai caricato dall'IDE arduino è la variabile che fa cambiare uno stato digitalWrite al pin dove è collegato il relay
Oppure tirare in ballo un DB esterno (anche su server remoto) e fare in modo che sia Android sia Arduino facciano un sync ad un file .json per essere tutti e due aggiornati sullo stato effettivo dei vari relays e inviare l'istruzione http ad una pagina php sul server che aggiorna il DB.
Poi per soluzioni migliori magari aspettiamo larisposta di chi ne sa un po di +
