Developing android application using android studio for food ordering app

DEVELOPING ANDROID APPLICATION USING ANDROID  
STUDIO FOR FOOD ORDERING APP  
SVTH: Hoàng Thị Thùy Dương,  
Trần Thị Mịn, Nguyễn Thị Cẩm Tú  
GVHD: ThS Đỗ Thị Phương Thảo  
Tó m tắt - Để đồng hành với sự phá t triển như vũ bão của cuộc cá ch mạng khoa học cô ng  
nghệ, việc tối ưu hóa các chức năng ứng dụng, đặc biệt là cá c sản phẩm phần mềm trên thiết bị di  
động là vô cùng quan trọng. Thế giới ngày càng đòi hỏi những sản phẩm phần mềm di động ngày  
càng tiện dụng hơn để đáp ứng những nhu cầu thiết yếu nhất của con người. Cá c sản phẩm này  
khô ng chỉ cần hiệu quả mà cò n phải nhanh chó ng, cập nhật liên tục và có thể mở rộng với cơ sở  
dữ liệu rất lớn. Trong bài bá o này, nhó m phá t triển sẽ thảo luận về việc phá t triển ứng dụng  
Android bằng Android Studio, cùng với lý do sử dụng cô ng cụ này và trì nh bày kết quả của việc  
xâ y dựng và phá t triển một ứng dụng thực tế Ứng dụng Đặt hàng Thực phẩm.  
Abstract - In order to accompany the rapid development of the scientific and technological  
revolution, it is extremely important to optimize application functions, especially software products  
on mobile devices. The world increasingly requires more and more handy mobile software  
products to meet the most essential needs of people. These products not only need to be  
effective, but also fast, constantly updated and scalable with a very large database. In this paper,  
the development team will discuss developing android apps using Android Studio, along with the  
reasons for using this tool and present the results of the build and development a practical  
application Food Ordering Application.  
Keywords – Android Studio, Java, FireBase.  
I.INTRODUCTION  
In recent years, the emergence of smart phones has modified the definition of mobile  
phones. It is no longer just a communication device, but also become an essential part of  
the people’s daily life. Various applications of android provides entertainment and other  
necessities of modern life.  
It provides a link between people and people.  
For mobile developers, this is a reality great and exciting era. Android[2] is an open  
source architecture that consists of the Operating system, application famework, Linux  
kernel, middleware and application as well as a set of API libraries for developing mobile  
applications that can give look, feel, and function of mobile handsets. The Android  
platform can be expanded to enhance reliability, usability and other features of prevailing  
products by developers. Without any problem and complexity, they can easily write  
application code that can make mobile hardware more useful and user friendly. In this  
63  
research, we discuss on Android Studio for the mobile application development and  
Firebase for database design and development. Java language codes are used to develop  
android mobile application which allows developers to write codes in the Java language.  
Android Mobile Application Development is basically used to create user friendly and  
innovative applications.  
II. MAIN CONTENT  
A. What is Android Studio?  
Android studio is the official IDE integration development environment for the  
development of applications running on the Android platform. It was first announced at  
Google I/O in May 2013 and is developed by Google. It is used to be able to create the  
majority of applications that you can use every day on android devices.  
This software acts as an editor for the selected programming language (Android  
Studio supports Java, C ++ and now Kotlin, although Java is the official language of  
Android), a compiler can create APK files and file system to organize your project. It also  
includes an XML editor and "design view" for arranging elements on the screen.  
Android Studio offers a full suite of additional tools, and most of them will come  
bundled up for one-time download. In fact, it also comes with the Android SDK, although  
you'll still need to download and install the Java JDK separately.  
In addition to IntelliJ's code-power editor and developer tools, Android Studio  
supplies even more features to exalt productivity when constructing Android apps, such  
as:  
Flexible Gradle-based construction system  
The emulator is fast and feature-rich  
A synchronized environment for you to apply to all Android devices  
Apply Changes to push code and resource changes to your running application  
without restarting your application  
Code templates and GitHub integration to help you build popular application  
features and import sample code  
Extensive testing tools and frameworks  
Lint tools for capturing performance, usability, version compatibility and other  
issues  
64  
Supports C ++ and NDK  
Integrated support for Google Cloud Platform, making it easy to integrate Google  
Cloud Messaging and App Engine.  
B. Why use Android Studio?  
Previously, Eclipse was the main Android development tool that developers used.  
The tool is also a generic IDE that supports many different programming languages,  
including Java with the Android SDK. However, Eclipse does not provide these supports  
already and requires a bit of setup to use them. Once released, Android Studio quickly  
replaced Eclipse because it could integrate most of Google's support in one install.  
Android Studio is increasingly used in popularity because the Android Studio setup  
process is quite simple and easy thanks to its installer. When downloading Android  
Studio, in addition to Android Studio, you will get Android SDK, SDK manager and many  
other tools included. The only tool you will need is the Java Development Kit (JDK).  
App built on Android Studio will connect to FireBase. Firebase is a real-time  
database service provided by Google and operated in the cloud. It helps programmers to  
rapidly develop mobile applications by simplifying database operations.  
Apps built on Android Studio will then be compiled into APK format for submission  
to the Google Play Store.  
So, Android Studio is the perfect choice for building and developing android apps.  
C. Android studio on real application: Food Ordering Application  
Food Ordering Application is an application built to meet the needs of people to eat  
and drink conveniently in the era of technology 4.0. This application provides menus of  
different restaurant chains for customers to choose and order, then the shipper takes  
delivery of the delivery to the place that Customer provides. This application has a  
friendly and easy to use interface for users. Along with the ability to display real data, it  
also allows administrative users to update data in an easy way.  
Our Food Ordering Android App is built on top of Android Studio, with Java  
programming language and FireBase database.  
To access the app, first need to install the app on your Android device. After  
clicking on the app, the app is being loaded.  
65  
<thêm ảnh>  
D. Development of Food ordering application  
1. Analysis  
From the requirements given by the instructor, the project team has listed the most  
important use cases for this system:  
• Customers: View menu, search food, add/remove to cart, edit profile, place order,  
make payment, rate food  
• Restaurant Employees: Add/ remove/ modify menu, update order status, view  
statistics  
• Delivery: Update delivery status  
The following diagram presents Entity-Relationship :  
66  
2. Backend design  
Java is a high level programming language, which developed by sun microsystem.  
It was originally designed to develop the web Application. The syntax of java language is  
similar to c++ programming language. However, it is an object-oriented programming  
language. Classes and methods make up a Java program. The java program are  
interpreted by java virtual machine which almost the entire platform. The java program  
developments require a java software development kit, which typically include  
complier, interpreters, and documentation generatoretc. which is used to produce a  
complete code [3].  
Firebase : It’s a database management system that enables development of databases  
and tables. It supports a large amount of information storage, allows concurrancy control  
services, quick data retrieval , easy data manipulations (updating, deleting, insertion, sum,  
difference, multiplication, division ), it stores alphanumerical data, therefore with those  
enhanced features it had to be our best choice for designing the back end of system.  
3. Frontend design  
Unlike normal java programming, the classes in android programming written in  
* .java file also uses XML(Extensible Markup Language) to design interface for the  
application. Of course an interface still can be design without needing any XML lines, but  
using XML will make the work simpler. Besides, XML will help easily editting the  
application later.  
4. Implemetation  
After getting the logical structure of the system, the implementation step began. In  
this step, the logical structure converted to physical architecture through coding and  
development of the system. The frontend and backend of the system has  
been  
developed and tested.  
E. Food Ordering App- work results  
After a long time of working with this project, the project team has released the first  
major version of Food ordering app. The following images are some outstanding  
capscreen of usecases in our app:  
67  
Splash Screen  
Sign In/ Login  
Customer’s feed  
Food Details  
68  
Shopping Cart  
View Chef’s Menu  
Rating  
Chef Post Dish  
69  
Chef Update Dish  
Chef View Statistics  
F. Evaluation  
1. Achivement  
The project has gone through a series of activities to develop a complex solution for  
the online food ordering system. After analysis of the project’s goal and research  
direction, a set of objectives were established. We have implemented all the core  
functionalities of admin, customer, chef and delivery like: login/logout, manage account,  
view homepage, edit/add/remove/update prduct, update status,..  
2. Limitation  
• Customer cannot place more than one order at the same time. This means if they  
want to booking the second food in different restaurant, they will must wait until  
completed the fisrt order.  
• Interface is still simple. In the future, we will try to make it become eye-catching  
and attractive.  
3. Future recommendations  
In addition to the unfinished requirements, there are other possibilities of  
further improving the project. The respondent of user acceptance testing also suggest some  
improvement ideas. The improvements may include:  
oOvercoming the limitations mentioned above  
o Presenting graphical floor plan for table management and reservation.  
oAdding support for food order delivery tracking.  
70  
oAdvanced inventory control with material storage and expiry information.  
oManaging customer loyalty membership and discount voucher.  
oConverting the system to progressive web application.  
G. Conclusion  
In this paper, the authors have discussed about Android Studio with the application  
in Food Ordering Application. The paper has also coined the advantages with Android  
software environment, and has shown great environment for developer. Future of Android  
and its SDK is very wide. Android opens a wide area of possibility with new features and  
personal preferences, it has created a new era in sharing open source software  
equipment’s. The resulting app – Food Ordering Application – may not be the fastest  
application to develop, and performance may be not yet good enough for a large number  
of users at the same time, but it also had essential features which is convinient for user. In  
the future, more goal will be gained on this project to bring more useful functionalities and  
enhance the usability of the application.  
REFERENCES  
[3] Deitel, P., & Deitel, H. (2011). Java How to program. Prentice Hall Pres  
71  
pdf 9 trang baolam 35080 Free
Bạn đang xem tài liệu "Developing android application using android studio for food ordering app", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfdeveloping_android_application_using_android_studio_for_food.pdf