A smart phone is a mobile device that offers advanced computing capabilities to the user. Since the operating system of smart phone is similar to that of computers, a successful malware attack may provide complete control of the device to the hackers. Since Android is popular among smart phones, attacks on Android smart phones are increasing nowadays. To defend these attacks, two detection mechanisms called static analysis and dynamic analysis are commonly used. Dynamic analysis overcomes most of the drawbacks of static analysis. However, the existing machine learning approaches in dynamic analysis have the limitations of low code coverage and excess resource utilization. In this chapter, we propose a multi-pattern matching-based dynamic malware detection mechanism in smart phones as an alternative to machine learning-based methods. The energy consumption is critical in smart phones, in terms of both cost and availability. So the multi-pattern algorithm used should be a reversible algorithm. We analyzed the performance of the proposed mechanism and compared it with two existing dynamic analysis mechanisms based on machine learning. The experimental results show that the proposed malware detection has more accuracy especially in detecting malwares, which use system call evasion to avoid detection. The proposed mechanism is more efficient and uses fewer resources.