Tải bản đầy đủ (.pdf) (20 trang)

Lập Trình Ứng Dụng Di Động Android (Báo Cáo Thực Tập).Pdf

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (562.28 KB, 20 trang )

1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM

BÁO CÁO THỰC TẬP

LẬP TRÌNH ỨNG DỤNG DI ĐỘNG ANDROID

Cơng ty thực tập
Người phụ trách
Thực tập sinh

: Công ty cổ phần TVT Group
: Nguyễn Ngọc Tú
: Lê Hoàng Thịnh

TP. Hồ Chí Minh, tháng 12 năm 2022

Nguyễn Ngọc Tú

Lê Hồng Thịnh


2

LỜI MỞ ĐẦU
Ngày nay, điện thoại di động đã trở thành một thiết bị, một món đồ khơng thể thiếu trong cuộc
sống của chúng ta. Trong quá trình làm việc, liên lạc hay học tập, giải trí, điện thoại di động trở
thành một cơng cụ hồn hảo khi có thể hỗ trợ và làm được rất nhiều thứ máy tính khơng thể
làm, đồng thời vẫn đảm bảo tính gọn nhẹ và dễ sử dụng cho người dùng. Ở thời điểm hiện tại,


có hai hệ điều hành chính cho điện thoại đó là Android và IOS. Theo dịng sự kiện Google I/O
2022, Google đã chính thức xác nhận có hơn 3 tỷ thiết bị chạy hệ điều hành Android tương
đương với 74% tổng số thiết bị di động. Con số này đối với Iphone chạy hệ điều hành IOS của
Apple.Inc là 26%.
Về tính phổ biến của các ứng dụng trên thiết bị di động, theo tạp chí Forbes, vào quý 1 năm
2022, trung bình có 29 tỉ lượt tải về trên Google Store trong khi chỉ có khoảng 8 tỉ lượt ứng
dụng được tải về trên nền tảng IOS. Từ đó ta có thể thấy được sự chiếm ưu thế của hệ điều
hành Android ngành xây dựng và phát triển ứng dụng di động. Con số này, riêng ở Việt Nam sẽ
được dự đốn cịn tăng mạnh trong những năm tới do nhu cầu sử dụng ứng dụng và giải quyết
tác vụ từ xa thay vì tại chỗ đang được ưu tiên.
Khi xét về phương diện lập trình, Android là một cơng nghệ mã nguồn mở, có thể cho phép
cộng đồng các lập trình viên quan tâm đóng góp và tiếp tục xây dựng hệ điều hành này. Tuy
nhiên đối với hệ điều hành đến từ Apple, công ty này đã đề ra những quy định rất nghiêm ngặt
về việc bản quyền và phát triển ứng dụng trên Iphone, Ipad,… Vì thế số lượng lập trình viên,
các chuyên gia trong mảng lập trình Ios nhỏ hơn nhiều so với số lượng lập trình viên bên hệ
điều hành Android.
Nhận thấy được tiềm năng phát triển ứng dụng di động nói chung và phát triển ứng dụng trên
nền tảng Android nói riêng, đặc biệt là ở Việt Nam là rất lớn, vì thế em quyết định sẽ phát triển
bản thân, tìm hiểu các kiến thức thực tiễn thông qua cơ hội thực tập để trở thành lập trình viên
ứng dụng Android. Bên cạnh đó em cũng tìm được cơng ty cổ phần TVT Group, công ty hiện
đại chuyên xây dựng và phát triển các ứng dụng Android và mong muốn sẽ được thực tập ở
cơng ty này ở vị trí Android Internship.

Nguyễn Ngọc Tú

Lê Hoàng Thịnh


3


LỜI CẢM ƠN
Trân trọng gửi lời cảm ơn Công ty cổ phần TVT Group đã tạo điều kiện cho em có cơ hội được
thực tập tại q cơng ty.
Tuy thời gian thực tập chỉ có 3 tháng, nhưng nhờ sự chỉ dẫn, hỗ trợ nhiều tình của các anh, chị
mentor trong team, em đã tiếp thu được những kiến thức tối quan trọng, thực tiễn và cần thiết
trong quá trình xây dựng và phát triển một ứng dụng. Chân thành cảm ơn các anh chị trong team
đã tận tình giúp đỡ, bỏ thời gian để hướng dẫn em trong những bước đầu mới tham gia vào công
ty. Tuy nhiên, trong q trình học tập và làm việc có thể khơng tránh khỏi những sai sót, mong
mọi người có thể bỏ qua cho em.
Đặc biệt cảm ơn anh Phạm Hồng Thơng, leader của team Android đã hướng dẫn, giúp đỡ em tận
tình trong những bước đầu làm việc. Chân thành cảm ơn anh đã chỉ dẫn em những kiến thức rất
thực tiễn về kiến trúc ứng dụng đến những kỹ năng mềm như giao tiếp với khách hàng,… Bên
cạnh đó, em cũng xin cảm ơn anh Bùi Thế Lượng đã hỗ trợ, cung cấp cho em những kiến thức bổ
ích khi giao tiếp và làm việc, meeting với khách hàng và xây dựng sản phẩm.
Cũng xin cảm ơn thầy cô trong khoa Cơng nghệ phần mềm đã nhiệt tình hỗ trợ, tạo điều kiện em
làm bài báo cáo này.
Lê Hoàng Thịnh
TP.HCM, ngày 22 tháng 12 năm 2022

Nguyễn Ngọc Tú

Lê Hoàng Thịnh


4

NHẬN XÉT CỦA KHOA
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................

.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................

Nguyễn Ngọc Tú

Lê Hoàng Thịnh


5

MỤC LỤC
Table of Contents
1.

2.

Giới thiệu công ty thực tập ....................................................................................................6

1.1.

Giới thiệu công ty cổ phần TVT Group ......................................................................6

1.2.

Sản phẩm của cơng ty ...................................................................................................6

1.3.

Tầm nhìn ........................................................................................................................7

1.4.

Sơ đồ tổ chức ..................................................................................................................7

Nội dung thực tập ..................................................................................................................8
2.1.

Tìm hiểu về cơng ty và các dự án đang thực hiện của công ty ..................................8

2.2. Nghiên cứu kỹ thuật ......................................................................................................8
2.2.1. Cài đặt các công cụ làm việc cần thiết cho dự án ...................................................8
2.2.2. Tìm hiểu ngơn ngữ Kotlin và framework Android ................................................9
2.2.3. Tìm hiểu về dự án hiện tại ......................................................................................10

3.

2.3.


Thực hiện project ........................................................................................................11

2.4.

Lịch làm việc ................................................................................................................11

Chi tiết về project .................................................................................................................14
3.1.

Giới thiệu về ứng dụng EMOL ..................................................................................14

3.2. Các tính năng chính ....................................................................................................15
3.2.1. Thu thập những trải nghiệm của người sử dụng ..................................................15
3.2.2. Tham gia vào các bài học hỗ trợ tinh thần ............................................................15
3.2.3. Chatbot trò chuyện với người sử dụng ..................................................................16
3.2.4. Các tính năng khác ..................................................................................................17
4.

Thực hiện .............................................................................................................................17

5.

Kế hoạch ...............................................................................................................................18
5.1.

Phase 1: Tính năng bên lề ...........................................................................................18

5.2.

Phase 2: Tính năng chính ...........................................................................................18


TÀI LIỆU THAM KHẢO ...........................................................................................................19
TỔNG KẾT ..................................................................................................................................20

Nguyễn Ngọc Tú

Lê Hoàng Thịnh


6

1. Giới thiệu công ty thực tập

1.1.

Giới thiệu công ty cổ phần TVT Group

TVT Group được đầu tư và phát triển dựa trên nguyên tắc lựa chọn và tập trung, ngồi
việc tiếp tục nâng cao thế mạnh vốn có của mình trong lĩnh vực Navigation, cơng ty
cịn mở rộng thêm các hoạt động trên các lĩnh vực lập trình phần mềm ứng dụng cho
các dòng sản phẩm, thiết bị di động thông minh (smart phone, tablet) sử dụng hệ điều
hành Android, iOS, Window Phone, Blackberry OS… đào sâu nghiên cứu, cập nhật
các công nghệ mới để cho ra đời các ứng dụng với nhiều tính năng thơng minh, tiên
tiến trên thế giới như cơng nghệ xử lý hình ảnh (Image Processing), Công nghệ tương
tác thực tế ảo (Augmented Reality), DM (Direct marketing), DM+CRM…
1.2.

Sản phẩm của công ty

TVT Group chịu trách nhiệm thiết kế và trực tiếp thực thi, xây dưng các ứng dụng di

động, các thiết bị POS và những sản phẩm có tính thực tế cao và úng dụng những công
nghệ tiên tiến như AR, Blockchain,… Một số sản phẩm nổi tiếng của cơng ty có thể kể
đến như: Car Navigation, EMOL, POS Android (được sử dụng cho chuỗi cửa hàng
Highland Vietnam), Starverse Henieken (Ứng dụng công nghệ blockchain), Naver
Labs Apps,… Nhờ việc hợp tác với các đối tác lớn và không ngừng mở rộng quy mô,
công ty đã liên kết và đi đến hợp tác thoả thuận với những thương hiệu lớn trên toàn
cầu.

Nguyễn Ngọc Tú

Lê Hoàng Thịnh


7

1.3.

Tầm nhìn

Trở thành một đơn vị hàng đầu trong việc nghiên cứu và phát triển những phần mềm
ứng dụng mang tính kỹ thuật cao, phù hợp với xu thế chung của nền công nghệ thế
giới, khẳng định chất lượng sản phẩm và thương hiệu công ty tại thị trường Việt Nam
nói riêng và thị trường châu Á nói chung.
Triết lý công ty: 5C
➢ Challenge – Thách thức
Thách thức cho các thành viên về việc luôn cập nhật công nghệ mới để thực hiện
các dự án có yêu cầu cao. Thách thức cũng là cơ hội để các thành viên tự phát triển
bản thân mình.
➢ Collaboration – Hợp tác
Hợp tác với các công ty đối tác hoặc khách hàng

➢ Định hướng Khách hàng
Hiểu rõ yêu cầu của khách hàng
➢ Tự tin
Đảm bảo hiểu biết về công nghệ cũng như khả năng làm việc trong lĩnh vực đang
đảm nhận
➢ Thay đổi
Ứng dụng kiến thức, công nghệ mới để liên tục thay đổi, đổi mới trong việc phát
triển ý tưởng và ứng dụng.
1.4. Sơ đồ tổ chức
Sơ đồ tổ chức của công ty được thể hiện như sau, trong đó, em thuộc về team phát tiển
phần mềm Android.
Managing Director

Application

iOS

Android

Nguyễn Ngọc Tú

MFC

Navigation

Strategy Header

Web

Server

Management

Front/Design
Management

Administrator

Human
Resource

Accounting

Lê Hoàng Thịnh


8

2. Nội dung thực tập
Trong thời gian thực tập tại công ty, em đã may mắn được tham gia vào dự án thực tế của
công ty và là một trong những dự án thành công của TVT Group. Đây là ứng dụng chạy trên
nền tảng Android và được upload lên Play Store. Đồng thời thơng qua q trình này, bên cạnh
những kiến thức về khía cạnh kỹ thuật, em cịn được tiếp cận và hỗ trợ những kỹ năng mềm
như tin học văn phòng, giao tiếp khách hàng, xử lý vấn đề, đánh giá và tiếp cận cơng việc…
2.1. Tìm hiểu về công ty và các dự án đang thực hiện của cơng ty
Thời gian: 1 tuần
Nội dung:
- Tìm hiểu về quy trình và quy định làm việc tại cơng ty, cách tổ chức và nội bộ, các
phòng ban của công ty.
- Em được thêm vào những resources, tài nguyên của công ty, được cung cấp email
riêng của công ty để làm việc. Bên cạnh đó em cịn được hướng dẫn viết báo cáo

cuối ngày, sử dụng email công ty để trao đổi, liên lạc và sử dụng các tài nguyên
được cung cấp.
- Trong quá trình thực tập, em được thêm vào Trello (Phần mềm quản lý công việc
và phân chia đầu việc) để tìm hiểu về dự án hiện tại mà em sẽ tham gia. Công ty sử
dụng Skype là kênh liên lạc chính của các thành viên trong cơng ty. Ngồi ra em
cịn được tham gia vào buổi hợp mặt thành viên mới trong công ty.
Kết quả: Em đã hiểu thêm về quy trình làm việc, phong cách làm việc và văn hố cơng
ty. Đồng thời em cũng có thêm các kỹ năng mềm liên quan đến việc sử dụng email nội
bộ, báo cáo hằng ngày, làm việc có kế hoạch, trách nhiệm và kỷ luật hơn.
2.2.

Nghiên cứu kỹ thuật
2.2.1. Cài đặt các công cụ làm việc cần thiết cho dự án

Thời gian: 1 ngày
Nội dung:
- Em được tìm hiểu về các cơng cụ lập trình và các cơng cụ văn phịng sẽ được sử
dụng trong q trình làm việc.
- Trong thời gian này, em được khuyến khích nên sử dụng Android Studio, là một
IDE được sử dụng để phát triển các ứng dụng Android. Cũng trong thời gian này,
mentor giới thiệu cho em một số ứng dụng khác để có thể sử dụng trong q trình
phát triển ứng dụng như: Figma, Postman, Git Kraken,… Đây là những cơng cụ
hữu ích và thiết yếu trong q trình phát triển ứng dụng. Ngoài ra, em cũng được
hướng dẫn về cách sử dụng các phần mềm văn phòng như Google Sheet, Jira,… để
tracking các tasks.
Thực hiện: Tải về và cài đặt các ứng dụng cần thiết
Kết quả: Có thể lập trình ứng dụng Android trên IDE dựa vào design. Update tình hình
tiến độ cơng việc và báo cáo. Sử dụng Git Kraken để tương tác với các repository.

Nguyễn Ngọc Tú


Lê Hoàng Thịnh


9

2.2.2. Tìm hiểu ngơn ngữ Kotlin và framework Android
Thời gian: 7 ngày
Nội dung: Dự án hiện tại được chạy trên nền tảng Android và viết bằng ngôn ngữ
Kotlin. Điều này khác với ngôn ngữ Java để làm ứng dụng Android em được học trên
trường. Vì thế cơng ty đưa ra cho em lộ trình 3 ngày để đọc và tìm hiểu về Kotlin. Điều
này bao gồm nhưng không giới hạn bởi những kiến thức nêu ra dưới đây:
- Các syntax chính:
Em được học cách khai báo biến, viết cái câu điều kiện, hàm gọi, callback,…
trong Kotlin.
- Lập trình hướng đối tượng với Kotlin:
Em tự học và tìm hiểu cách viết các lớp, kế thừa lớp, ghi đè các phương thức
trong Kotlin
- Các thành phần chính trong lập trình Android:
Em được đưa các nguồn tài liệu để có thể tự học lập trình Android. Qua các tài
liệu này, em hiểu được các thành phần cơ bản của Android. Vòng đời của một
ứng dụng Android, cách lập trình giao diện và tương tác với chúng. Hiểu được
mơ hình MVVM và databinding trong Android.
- Tìm hiểu về các sử dụng máy ảo và truy cập vào bộ nhớ máy ảo.
Thực hiện:
- Tham gia đầy đủ các buổi training của công ty.
- Tự học ngơn ngữ Kotlin và framework Android
Kết quả:
- Em đã có thể lập trình ứng dụng di động với ngơn ngữ Kotlin sử dụng framework
Android

- Em đã có thể clone project hiện tại và học các tiêu chuẩn viết code, commit code
và tách ra nhánh riêng để tiến hành làm việc.

Nguyễn Ngọc Tú

Lê Hoàng Thịnh


10

2.2.3. Tìm hiểu về dự án hiện tại
Thời gian: 4 ngày
Nội dung: Em được giao chơng nhiệm vụ tìm hiểu về dự án hiện tại. Việc tìm hiểu này
bao gồm tìm hiểu về cấu trúc dự án, các user flow, danh sách các màn hình, design,
coding convetion, kiến trúc của ứng dụng,… Sau khi có các kiến thức nhất định về dự
án, em mới có thể được xem xét cho phép tiến hành thực hiện các nhiệm vụ trong dự
án.
- Mơ hình MVVM:
Đây là mơ hình cũng như là kiến trúc chính của ứng dụng Android. Đại đa số các
dự án Android đều được phát triển dựa trên kiến trúc này. Đây là mơ hình 3 lớp có
khả năng tách biệt giữa Logic và UI. Giúp mã nguồn dễ phát triển và mở rộng hơn.
Đồng thời cơ chế databinding giúp việc phát triển ứng dụng nhanh chóng.
- Design Pattern Tempate Method
Ở thời điểm em gia nhập vào dự án, đây là dự án đang trong giai đoạn phát triển
chứ không phải mới khởi động. Vì thế dự án đã có một số tính năng cũng như là
các mẫu đã viết sẵn. Bằng cách sử dụng Template Method, mã nguồn của dự án này
có thể dễ dàng phát triển và mở rộng hơn. Với các phương thức được định sẵn và
các bước đã được thực thi trước, em được yêu cầu tìm hiểu về Code Base của ứng
dụng để có thể dễ dàng phát triển một tính năng sau này.
- API with Retrofit

Đa số các ứng dụng Android đều yêu cầu phải tương tác với server thông qua HTTP
Rest API. Một trong những thư viện phổ biến của Android để tương tác với HTTP
là sử dụng Retrofit. Retrofit làm việc như một client để gọi và nhận các dữ liệu từ
server thơng qua HTTP. Em được u cầu tìm hiểu cách tạo các request GET,
POST, PUT, DELETE để tương tác với server
- Animation với Android
Tuy nhiên điều đặc biệt với ứng dụng này là Animation của nó. Đây là giao diện
thân thiện với người dùng và đề cao trả nghiệm của người dùng hơn là Logic ẩn
chứa trong nó. Vì thế animation là một kiến thức không thể thiếu khi phát triển hoặc
bảo trình một tính năng trong dự án. Vì thế em phải học cách tạo và điều khiển các
animation trong ứng dụng.
Thực hiện:
- Tự học các lý thuyết trong tài liệu các mentor đã đưa.
- Thử tạo một ứng dụng Android và tìm hiểu các cơ chế hoạt động của nó.
- Tìm hiểu các thành phần chức năng trong dự án, cách tổ chức và chia File, chia thư
mục. Các feature template đã được định nghĩa sẵn
Kết quả:
- Biết được cách thức lập trình ứng dụng Android với ngơn ngữ Kotlin theo kiến trúc
MVVM.
- Biết được cách làm animation trong Android và gọi RestAPI để lấy và update dữ
liệu trên server.

Nguyễn Ngọc Tú

Lê Hoàng Thịnh


11

2.3. Thực hiện project

Sau 2 tuần được hướng dẫn và thực hành cũng như tìm hiểu về dự án cơng ty, em đã nắm
được những kiến thức cơ bản về Kotlin, Android, kiến trúc MVVM, Retrofit Client,
Animation và những kiến thức căn bản khác. Kể từ thời gian này, em sẽ tiến hành tham
gia vào các module chính của dự án bằng cách áp dụng những kiến thức thực tiễn đã học.
Chi tiết của dự án sẽ được kể ở phần sau.
2.4.

Lịch làm việc

Tuần

Cơng việc
-

1
-

2
3
4

-

5
Nguyễn Ngọc Tú

Tìm hiểu về cơng
ty, cách tổ chức của
cơng ty.
Tìm hiểu về các quy

định, quy trình làm
việc của cơng ty.
Làm quen với các
anh chị trong cơng
ty
Tìm hiểu về ngơn
ngữ lập trình Kotlin
Tìm
hiểu
về
framework Android
để lập trình di động.
Tìm hiểu về mơ
hình MVVM
Tìm
hiểu
về
Android animation
Fix một số bug
trong dự án liên
quan đến hiển thị
UI và bảng màu
Fix lỗi logic khơng
thể xem được video
Thêm UI của một
màn hình tính năng
mới
Tiến hành thực thi
các Logic cho màn
hình mới đó.

Sử dụng retrofit để
gọi API đến server

Người hướng dẫn

Mức
độ
hoàn
thành

Nhận xét của người
hướng dẫn

Anh Nguyễn Ngọc


Anh Phạm Hồng
Thơng

Anh Phạm Hồng
Thơng
Anh Phạm Hồng
Thơng

Anh Phạm Hồng
Thơng

Lê Hồng Thịnh



12

6

7

8

9

10

Nguyễn Ngọc Tú

và lấy dữ liệu hiển
thị lên giao diện
- Tiếp tục làm thêm
UI cho một màn
hình mới và thực thi
các logic của màn
hình đó.
- Update tình hình
tiến độ sau 1,5 tháng
làm việc, cập nhật
trạng thái của các
tính năng được giao
- Sửa một số lỗi của
giai đoạn trước
trong quá trình thực
hiện tính năng.

- Tìm hiểu kỹ hơn
cách
sử
dụng
animation để chuẩn
bị cho giai đoạn tiếp
theo
- Sử dụng thư viện
Android animation
để tạo animation
cho những lúc
chuyển giữa hai
màn hình
- Sử dụng animation
kết hợp với thời gian
và API để update
trạng thái của giao
diện và server.
- Đây là một trong
những tính năng
chính của ứng dụng
có khả năng đồng bộ
giữa người dùng,
giao diện và máy
chủ.
- Tìm
hiểu
các
Google service để
bỏ vào trong ứng

dụng. Một số có thể
kể đến là AdMob

Anh Phạm Hồng
Thơng

Anh Phạm Hồng
Thơng

Anh Nguyễn Văn
Lộc

Anh Phạm Hồng
Thơng, anh
Nguyễn Văn Lâm

Anh Phạm Hồng
Thơng

Lê Hồng Thịnh


13

-

11

-


12

-

(để quảng cáo) và
Google Map
Viết báo cáo, tổng
hợp lại những tính
năng đã làm và trình
bày với các anh
mentor. Hỗ trợ team
để đưa ứng dụng lên
Play Store
Viết document cho
dự án, hướng dẫn sử
dụng và convetion,
cách tổ chức code để
thuận tiện cho việc
phát triển tiếp ở
Phase sau
Kết thúc giai đoạn
thực tập

Anh Phạm Hồng
Thơng

Anh Phạm Hồng
Thơng

Figure 1: Mẫu báo cáo hằng ngày


Nguyễn Ngọc Tú

Lê Hoàng Thịnh


14

3. Chi tiết về project
3.1. Giới thiệu về ứng dụng EMOL
Ứng dụng này được phát triển vì mục đích nâng cao chất lượng tinh thần của mỗi con
người, đặc biệt là người Nhật. Ở trong cuộc sống hiện đại, chúng ta gặp quá nhiều vấn
đề ảnh hưởng đến tâm lý của bản thân nhưng không hề được chữa lành. Những ngun
do có thể đến từ áp lực cơng việc, áp lực kinh tế, gia đình, xã hội v.v. Vì thế ứng dụng
EMOL được tạo ra để có thể nắm bắt tâm lý của con người, từ đó đưa ra các phương
pháp để chữa lành tâm lý như trò chuyện, bắt đầu các bài học dưỡng sinh, chữa lành
tổn thương trò chuyện hay các trò chơi lành mạnh,… Đây là một ứng dụng thành công
trên nền tảng Ios ở thị trường Nhật và đang được phát triển trên nền tảng Android.

Nguyễn Ngọc Tú

Lê Hoàng Thịnh


15

Các tính năng chính
3.2.1. Thu thập những trải nghiệm của người sử dụng

3.2.


Đây là tính năng chính của ứng dụng, có thể cho phép người dùng nói cho ứng
dụng những các xúc hiện tại của họ như vui, buồn, phấn khích, lo âu, giận giữ…
Ứng dụng sẽ theo thập và phân tích chúng, dựa theo thời gian vị trí địa điểm và
các yếu tố khác, từ đó sẽ tiến hành trò chuyện, đưa ra những bài học hoặc phương
án xử lý thích hợp.

3.2.2. Tham gia vào các bài học hỗ trợ tinh thần
Ứng dụng đưa ra một lượng lớn các bài học như là một cách chữa trị tinh thần cho
người dử dụng. Các bài học này có những mục đích và cách thức khác nhau, có
thể là tập hít thở, thiền, nghe nhạc, chơi trò chơi… tuỳ thuộc vào cảm xúc của
người sử dụng.

Nguyễn Ngọc Tú

Lê Hoàng Thịnh


16

3.2.3. Chatbot trò chuyện với người sử dụng
Chatbot là một tính năng khác và tuyệt vời trong ứng dụng. Nó có thể phân tích
lời nói, giọng điệu của người dùng và đưa ra những lời khuyên hay bầu bạn,
tâm sự… Đây là một tính năng sử dụng cơng nghệ tiên tiến và được sử dụng
rất nhiều trong các ứng dụng hiện đại.

Nguyễn Ngọc Tú

Lê Hoàng Thịnh



17

3.2.4. Các tính năng khác
Đây là những tính năng thường thấy trong ứng dụng hiện đại , đăng nhập đăng
xuất, sao lưu dữ liệu, chỉnh sửa, quảng cáo,…

4. Thực hiện
Trong team có 4 thành viên chính là:
- Phạm Hồng Thơng (Lead)
- Nguyễn Văn Lộc (Android Developer)
- Nguyễn Ngọc Tú (Project Owner)
- Lê Hồng Thịnh (Android Internship)
Trong đó em đóng vai trong là thực tập lập trình viên Android, cùng với team phát triển
ứng dụng và sửa các lỗi trong quá trình thực hiện.

Nguyễn Ngọc Tú

Lê Hồng Thịnh


18

5. Kế hoạch
5.1. Phase 1: Tính năng bên lề
- Hồn thành các tính năng phụ của ứng dụng:
o Đăng nhập, đăng xuất
o Sao lưu dữ liệu
o Chỉnh sửa thông tin người dùng
o Thu thập cảm xúc của người dùng và gửi về server

o Sử dụng Google Map để lưu vị trí hiện tại của người đang sử dụng
- Xem các bài học và thực hiện mua các bài học (chưa sử dụng đến Google Pay)
Kết quả:
- Các tính năng trên đều đã được thực hiện.
- Đã hoàn thành và pass tất cả các test case
5.2. Phase 2: Tính năng chính
- Sử dụng Animation để animate hoạt ảnh con bot ở giao diện chính
- Thực thi tính năng trị chuyện với người dùng
- Cho phép mua và xem bài học thông qua Google Pay
- Sử dụng dịch vụ AdMob của Google để cho phép sử dụng bài học miễn phí bằng
cách xem quảng cáo
- Thực hiện tính năng thiền, yoga và lịch các ngày có sử dụng ứng dụng.
Kết quả:
- Đã hoàn thành được khoản 80% ứng dụng vào thời điểm cuối của giai đoạn thực
tập
- Ứng dụng lúc này đang được đưa lên Play Store bản Beta để có thể xem xét và tiến
hành đưa vào Production
- Ứng dụng đã pass các test case trước khi đưa lên Play Store

Nguyễn Ngọc Tú

Lê Hoàng Thịnh


19

TÀI LIỆU THAM KHẢO

Google. (2021, 10 30). Android Documentation. From Android Developer:
/>Overflow, S. (2021, 10 31). Stack Overflow. From Stack Overflow: />2359Media. (2021, 10 20). Easy Android Animation. From Github:

/>Retrofit. (2021, 11 20). Retrofit - A Type Safe HTTP client for Android and Java. From Retrofit:
/>Google. (2021, 09 15). Mobile App Monetization. From Google Admob:
/>Google. (2021, 10 08). Google Analytics. From Google Analytics:
/>EMOL. (2022, 01 25). Emol Playstore. From Playstore:
/>
Nguyễn Ngọc Tú

Lê Hoàng Thịnh


20

TỔNG KẾT
Như vậy, chỉ trong vòng ba tháng ngắn ngủi, em và team Android đã hoàn thành gần đủ 2
giai đoạn của ứng dụng EMOL. Sau đó ứng dụng này đã được chấp nhận và đưa lên Play Store
để mọi khách hàng có thể sử dụng. Hiện nay ứng dụng đã có một số lượng người dùng và đang
hoạt động trơn tru. Tuy nhiên do thời gian thực tập có hạn nên một số tính năng chưa hồn thành
xong trước giai đoạn thực tập. Tuy nhiên nhờ có sự hướng dẫn và hỗ trợ của các anh mentor, mã
nguồn của em được đánh giá ở chất lượng tốt và có khả năng kế thừa để phát triển thêm sau này.
Em xin chân thành cảm ơn sự giúp đỡ nhiệt tình của các anh chị trong team Android DEV
nói riêng và tồn thể cơng ty TVT Group nói chung. Nhờ có sự giúp đỡ của anh chị mà em có thể
trải qua một kỳ thực tập thật ý nghĩa, đáng nhớ và giá trị. Chúc tồn thể q cơng ty phát triển
thuận lời và gặt hái được nhiều thành công trong tương lai.

Nguyễn Ngọc Tú

Lê Hoàng Thịnh




×