Indoor localization based on Wi-Fi fingerprints has been an active research topic for years. However, existing approaches do not consider the instability of access points (APs) which may be unreliable in practice, particularly the ones deployed by individual users. This instability impacts the localization accuracy severely, due to the unreliable or even wrong Wi-Fi fingerprints. Ideally, the localization should be done using only the well-deployed APs (e.g., deployed by facility teams). However, in many places the number of these APs is too few to achieve a good localization accuracy. To solve this problem, we leverage emerging smart APs equipped with multi-mode antennas, and build a new indoor localization system called MMLOC to reduce the number of necessary APs. The key idea is controlling the modes of AP antennas to generate more fingerprints with fewer APs. A clustering based localization strategy is designed to enable a mobile terminal to figure out the RSSI (Received Signal Strength Indicator) for different antenna modes without requiring any synchronization. We have implemented a prototype system using smart APs and commercial smartphones. Experimental results demonstrate that MMLOC can reduce the number of necessary APs by 50%, and achieve the same or even better localization accuracy.