Mobile learning as an intersection of Mobile Computing and E-Learning providing resources that can be accessed anywhere has capability in an excellent searching system, rich interaction and full support towards an effective Learning and performance based assessment. In the modern world of mobile technology and their increasing availability and affordability, mobile devices particularly Android platforms play an important role in the field of communication, entertainment and learning. It has greatly changed the functioning of the world, even the learning process.
Don't use plagiarized sources. Get your custom essay on
“ Android Application Development – Project Report ”
Learning through mobile phones, abbreviated as Mobile Learning has become part of the educative system. Mobile Learning or M-Learning is a specific type of e-learning that provides educational materials through mobile phones. The purpose of this study is to access the learning materials, interact with faculties and view other related documentations along with other facilities, by using android based mobile phone inside and outside the classroom. This will also determine the users' prior knowledge on the personal and educational use and application of mobile phones.
Get quality help now
Prof. Finch
Verified writer
Proficient in: Android
4.7 (346)
“ This writer never make an mistake for me always deliver long before due date. Am telling you man this writer is absolutely the best. ”
Our main aim behind this whole project is to exercise a proper way to bring forth all the necessary elements a student or a teacher requires to carry out his job efficiently. Our app named e-nlight will help the users gain knowledge about their past records, with which they can improve their way of studying and thus make the whole competition a lot healthier and much more inspiring. Through this app, they can also access all the publicly available academic resources like books from any department.
Get to Know The Price Estimate For Your Paper
Topic
Number of pages
EmailInvalid email
By clicking “Check Writers’ Offers”, you agree to our terms of service and privacy policy. We’ll occasionally send you promo and account related email
"You must agree to out terms of services and privacy policy"
As a result, e-nlight will ensure the reach of education to every part of the institution regardless of any barriers.
SYSTEM REQUIREMENTS
HARDWARE REQUIREMENTS :2GB RAM
2GB Hard-Disk
I3 processor
SOFTWARE REQUIREMENTS:
JAVA-> Java SE
Android SDK
Android Studio
SDK tools
TASK PERFORMED
In the development of this app, we have used the basic language of Android - Java, as well as XML for establishing the UI properly. This app is built on Android Studio and has taken the help of Firebase as the back-end service. We also needed a few libraries and permissions as well to make the best possible outcome of the built-in widgets. For further explanation of the logical implementation, snaps of code snippets have been attached with each feature.
Quick View of the Project
Languages
Java (Android version)
XML
Tools & Servers
Android Studio
Firebase
Authentication
Realtime Database
Storage
Crash Reporting
Analytics
Cloud Messaging
Google Play Services
Libraries
We have used the following libraries to provide necessary functionalities to our m-learning app:
The main libraries are briefly discussed below:
com.android.support: design: 25.3.1: This is the Android Design Support Library. Above SDK version 23 there are some new built-in design library for android app development. This is called Material Design.
com.android.support: cardview-v7:25.3.1: This is a special feature of the Material Design which allows the developer to make GridViews and ListViews with smooth transitions and attractive edges.
com.android.support: palette-v7:25.3.1: This is a library from Android that can be used to extract prominent colors from an image. It has helped us to get the right colors for the vibrant look of our app.
com.android.support: customtabs-v7:25.3.1: This support library manages the initialization and use of custom tabs in the UI, especially for TabHosts and TabLayout.
com.android.support: design: 25.3.1: This library allows the use of various necessary UI materials of Material Design for this app, like Navigation Drawer and nested tabs.
com.google.firebase: firebase-core: 11.0.2: This is the most essential library for this app because this and its branches provide us a number of the Firebase services. Firebase is a mobile backend service which takes care of the database, storage, analytics, crash reports, authentication and more for an app, built on Android, iOS or other platforms. We used its services to keep track of our authenticated users, maintaining user access privilege and keeping an updated database and files storage in real time.
com.firebaseui: firebase-ui: 2.0.1: This is the Firebase UI library specially developed for Android applications. It is in fact a set of open-source libraries from Google with Apache 2.0 license, which lets the data on your app be updated in real time based on the Firebase Database. It also lets the developer use other sites' information for authentication such as Google, Facebook and Twitter.
com.prolificinteractive: material-calendarview: 1.4.3: We needed this library to use the customized calendar view, so that we can mark the necessary events for students and faculties with different color codes.
com.jjoe64:graphview: 4.2.1 : To implement the results graph, we needed this library which provided us with line graph, bar graph and pie charts.
Permissions
Here are the permissions our app requires from the user's device to run this app.
The user will be prompted with a list of these permissions while installing and s/he can choose to grant them.
android.permission.GET_ACCOUNTS: Since the minimum SDK our app allows is API 19, we need this permission to get any detail about the user accounts in the Accounts Service. From API 23, this is not required anymore if the authenticator shares the signature with the one managing the account.
android.permission.READ_PROFILE: This permission is to perform queries on the information of the user who owns the device.
android.permission.INTERNET: This app cannot extract the database information and storage materials from the cloud if no internet is present. So this permission to use the internet is essential.
android.permission.READ_EXTERNAL_STORAGE: To upload files like documents and images from the external storage, we need this permission. This will be specifically helpful to the faculty members.
android.permission.WRITE_EXTERNAL_STORAGE: To download the storage files into the external storage like microSD card, we need this permission. This will especially be helpful for the students.
android.permission.READ_CALENDAR: We need this permission to get the current date, day and time in order to display the right events in the Event Display section of our app.
android.permission.WRITE_CALENDAR: This permission helps us to add new information to the default calendar of the device and thus help us to add important events to the calendar.
com.android.alarm.permission.SET_ALARM: This permission is necessary to set alarms automatically according to the event dates shown in the calendar. As soon as there is a new event added in any of the assigned courses, this will be used to set an alarm at 8am of the due date.
Algorithm
This is an overall step-by-step view of how the different aspects of the app work:
Extracting data from institution database and replacing the dummy data with it
For all users : Authenticate by
email and password
google sign in
specific user role
If user_role=student:
Student's database initializes
Else if user_role=teacher:
Teacher's database initializes
Navigation drawer clicked:
Header image, title and subtitle displaying user name and email.
Drawer section displaying current course titles and logout option.
- accessed and displayed in Navigation Drawer Fragments
If user_role=student
Download all button's visibility = ON
Upload button's visibility = OFF
Else
Download all button's visibility = OFF
Upload button's visibility = ON
Dashboard clicked:
-Main features visible in one screen
Data from completed courses:
Students Reference ? user email ? courses completed
semester
course name
Current routine clicked:
if user_role=teacher Courses = teachers
Database.teachersEmail.assignedCourses
elseif user_role=students
Courses=
xstudentsDatabase.studentsEmail.assignedCourses For each course in courses:
find course database reference from departmentsDatabase.departmentName.courseName
save it to courseRef?) courseNameTab.content = couseRef.routine
f) Notification clicked: display any change to following branches.
Log out.
Features
Full Manipulation of course materials by teachers
Faculties of the respective institution can upload, download and edit the corresponding course materials through this app.
Downloading and selective uploading of files by students
Students of the institution can only have the full access to download course materials and occasionally upload submissions if allowed by the respective course teacher.
Specified user privileges
Not all users are allowed all functionalities of this app. Their roles and privileges are specified acutely through Firebase rules.
Push notifications
Whenever a new document is uploaded in any assigned course or whenever an important event is added, the users get push notifications through Firebase Cloud Messaging.
Online library of academic books and other documents
From Firebase Storage, all available books and other academic documents of a department are made accessible through this app.
Working of the app
Phase-1
The first phase involves the sign-in to the application, to enable their personalized e-learning services. Sign-in can be done either by signing up through the required credentials or directly through the google authentication.
Android Application Development - Project Report. (2019, Dec 15). Retrieved from https://studymoose.com/android-application-development-project-report-essay