I thought you are living in Xi'an city all your life.对吗?

对!应该是were。

I thought you were living in ...

不是虚拟语态,而是过去时态,表示我以前以为你一辈子都住在西安。(含义是:我现在才知道,原来不是。)

过去时态经常有这样的用法,更多的例子还有:

I told you there was only one. 我告诉过你只有一个。(含义:你不信,现在看见了,才知道我说的对吧。)

They thought there would be a storm. 他们以为有暴风雨。(含义:结果天气挺好,根本没有暴风雨。)

看到楼主补充了。教材也不一定就没错误。这里一定是were,不能是are。英语中有一条原则,就是时态的一致。