In this paper, we propose a cross-layer approach for energy aware geographical routing in wireless sensor networks: Energy-aware Geographical Forwarding using Adaptive Sleeping(EnGFAS). We take (a) the characteristics of the applications, (b) route selection in the network layer, (c) scheduling in MAC layer, and (d) the acknowledge scheme in link layer into consideration. First, EnGFAS collects some useful local information about the traffic load in the MAC layer to make a better decision in the geographical routing. Furthermore, EnCFAS uses this local information to determine the duty cycles of neighbor nodes. Simulation results show that this cross-layer approach is energy-efficient and is able to balance energy consumption of the whole network.