GithubHelp home page GithubHelp logo

dev-iram / load-status-app Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 145 KB

Load Status Application developed as part of Udacity Nanodegree Android Kotlin Developer Course. Allows for User to download a number of files. Features Notifications and MotionLayout.

Home Page: https://www.udacity.com/course/android-kotlin-developer-nanodegree--nd940

Kotlin 100.00%
android download kotlin motionlayout notifications permissions

load-status-app's Introduction

Load Status App

loadstatusapplication

This is a Loading Status Application I created as per specifications in Project 3 as part of Udacity Nanodegree Android Kotlin Developer Course.

✦ Programming Language; Kotlin
✦ Minimum SDK; 33
✦ UI Layout; XML, MotionLayout
✦ Software Tools;
    ✧ Android Studio: IDE Used to create, compile and build application

Application Screenshots

Copy of Copy of Copy of ATM Kiosk System Copy of Copy of Copy of ATM Kiosk System (1) Copy of Copy of Copy of ATM Kiosk System (2)

Application Logo

Application Demo

demo.mp4

Assignment Brief

In this project students will create an app to download a file from the Internet by clicking on a custom-built button where:

✦ Width of the button gets animated from left to right

✦ Text gets changed based on different states of the button

✦ Circle gets be animated from 0 to 360 degrees

✦ A notification will be sent once the download is complete.

When a user clicks on the notification, the user lands on detail activity and the notification gets dismissed.
In detail activity, the status of the download will be displayed and animated via MotionLayout upon opening the activity.

Installation

  1. Open Android Studio Application
  2. Choose "Open an existing Android Studio Project"
  3. In the opened finder find Load Status App folder
  4. Click on the folder and select starter folder and click on "Open" button
  5. Once the project is opened in Android studio, go to File -> Sync Project with gradle files
  6. Click on "Run" button in Android Studio to install the project on the phone or emulator

Dependencies

implementation 'androidx.core:core-ktx:1.10.1'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.9.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'

Submission Feedback

2nd Submission - Passed ✅

13th February 2024

Hello Dear Student!

Awesome job solving so well the issue marked by the previous review, now your app will be able to be displayed on almost all devices in the market. 👏

Now, you can continue with the lessons, and please, keep working like this!

1st Submission - Failed ❌

10th February 2024

Hello Student!

An awesome job was done with this project.

✅ Custom attributes have been applied to the custom button.

✅ The custom button is perfectly implemented and the animation is great. The message changes when the user clicks on the download button after selecting an option and he constantly receives good feedback while the file is downloading.

✅ If the user clicks on the download button without making a selection, an informative Toast is shown.

✅ The detail screen contains the name of the file downloaded and informs the user about its status.

✅ The animation using MotionLayout has also been correctly implemented.

There is just one small but important detail to be fixed and you will be done. Don't worry, looking at the great work done with this project, I'm sure that this won't take much of your time and your final app will be perfect.

❌ When tested on a device running Android SDK and higher, the notification does not show. You only need to add runtime permissions and this issue will be solved. 😄

All the projects must be able to run correctly on as many devices as possible.

load-status-app's People

Contributors

dev-iram avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.