The term of Internet of Things (IoT) has currently become a novelty in the Internet as an innovation to connect things from all around the world where various sensors are connected using gateways. However, it is not a straightforward task to design such gateways owing to several problems. For instance, there typically exist severe energy consumption constraints due to the limited power source. In most cases, a gateway has to spend an amount of energy for processing the collected data in the network. Additionally, there are myriad of different user interface functions for various services, which in turn raises the question about the reliability and scalability of such gateways. To support the IoT vision, many people have recently used smart mobile devices, e.g., smartphones, tablets, PDA, and laptops, as a gateway for data acquisition in IoT so that these IoT devices can be used in a broader scope. This concept of exploiting our smart devices emerges thanks to their ability to connect things to the cloud via the Internet. In fact, there exist a communication gap between the things implemented with limited power sources to sense the environmental data and the cloud services. Fortunately, this gap can be bridged by adopting smartphones for forwarding the collected data using their wireless connection technologies. One of the critical technologies that can be used to bridge this communication gap while also still maintaining low energy consumption is Bluetooth Low Energy (BLE). As leverage from the original Bluetooth technology, BLE or known as Bluetooth Smart was initially designed as a power-friendly wireless technology aimed for some novel applications in many industries. To save energy, BLE can be set in a sleep mode and wake up only to receive or send possible packet periodically. By the usage of BLE in modern smartphones, a mobile gateway system can be made in a way that data from the sensors can be passed to the cloud while also considering the energy efficiency in the mobile gateway itself. In this thesis, we propose a software architecture of energy-aware mobile gateways for IoT applications. The proposed architecture makes continual and efficient data transmission from a set of predefined devices. Moreover, the gateway architecture implements several scheduling algorithms used to efficiently control the sleep mode operations besides handle the simultaneous connection to several BLE sensors. The presented scheduling algorithms comprise Semaphore, Round Robin, Exhaustive Polling and Fair Exhaustive Polling algorithms. To implement the BLE device priority-based approach, several multi-criteria decision making (MCDM) algorithms are also implemented to prioritize the device based on several criteria, such as device power usage, received signal strength indication and the device state. Examples of such MCDM algorithms that have been implemented in this work are the Analytic Hierarchy Process and the Weighted Sum Model. Furthermore, the algorithms implemented are then evaluated based on two quality of service(QoS) metrics, including the power consumption of the mobile gateway and the throughput defined regarding the number of packets received per second. The evaluation results showed that Fair Exhaustive Polling (FEP) consumes the lowest energy consumption compared to all other scheduling algorithms with only 12,79 mW. On the other hand, Exhaustive Polling with Analytical Hierarchy Process (EPAHP) has the worst energy consumption among the examined algorithms with 49,14 mW. Concerning the throughput, the Exhaustive Polling combined with Weighted Sum Model (EPWSM) has the most prominent data throughput compared to all other algorithms with 101.18 packets/s while Fair Exhaustive Polling (FEP) has the lowest throughput value with 50.98 packets/s. To sum up, the proposed mobile gateway architecture is exceptionally efficient for handling data forwarding from multiple BLE sensors to the cloud services with energy awareness.