Building User Application for Drink Vending Machine using React Native
Dahal, Subodh (2021)
Dahal, Subodh
2021
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2021052711680
https://urn.fi/URN:NBN:fi:amk-2021052711680
Tiivistelmä
The thesis is centred around the unorthodox practice of developing a client-side user application for drink vending machine fitted with Android OS using React Native. The main requirement included the identification of the communication practice and protocols between the CPUs in the machine, an application to register and identify valid customers and their subscription status with the help of RFID tags attached to their personal protein shakers and serve the desired drink and report every transaction to the server. The invoicing would then be taken care of differently.
The project was done for OptiShake Oy, which envisioned the use of protein and recovery drink vending machines on the gyms where the gym goers can get the desired protein and recovery drinks. The machines were especially customized and manufactured in China and shipped to Finland. The default application on the machines required an active connection to the servers of the manufacturer thus the need for independent application had arisen.
Development was carried out using React Native with use of multiple Java based modules. While the perceived difficult parts of controlling the hardware using JavaScript was already done, the company decided to change the requirements and switch to Java to develop the application. Thus, the project was cut short. The thesis reports on the challenges faces and overcame during the development process and the findings.
The project was done for OptiShake Oy, which envisioned the use of protein and recovery drink vending machines on the gyms where the gym goers can get the desired protein and recovery drinks. The machines were especially customized and manufactured in China and shipped to Finland. The default application on the machines required an active connection to the servers of the manufacturer thus the need for independent application had arisen.
Development was carried out using React Native with use of multiple Java based modules. While the perceived difficult parts of controlling the hardware using JavaScript was already done, the company decided to change the requirements and switch to Java to develop the application. Thus, the project was cut short. The thesis reports on the challenges faces and overcame during the development process and the findings.