Upvote:2
A taxi from Guarulhos is not very reasonably priced, in my opinion. I'm not sure about from Guarulhos, but to Guarulhos from Vila Mariana can be 50 USD, depending on the time of day.
There are private shuttle buses that cost about 30 reais (10 USD or so) that take you to either the Tiete or Barra Funda bus terminal. There are a few sales offices for these directly after leaving the terminal. If you're lucky, they have wifi on board.
From Tiete and Barra Funda you can get the metro into Vila Mariana.
There are also public buses that move between the airport and, I think, metro stop Tatuape. This costs 5 or 6 reais, if my memory serves me correct. From there, you can get into Vila Mariana.
Speaking a little bit of Spanish will allow you to ask around for where a public bus will get you to a metro station.
I have no experience with Uber in São Paulo. Their competitors (there are several (1, 2) mobile apps that allow you to get a cab) are widely used.