[go: up one dir, main page]

0% found this document useful (0 votes)
9 views2 pages

Android Assignment Documentation Swipe V22

Uploaded by

thanneruunnathi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views2 pages

Android Assignment Documentation Swipe V22

Uploaded by

thanneruunnathi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

In this Android Assignment, you will build two screens - a product listing screen and an add product

screen. Your goal is to demonstrate your skills in building a functional Android app. Extra points if app is
beautiful

Screen 1 (Fragment): Listing Products Requirements

● Develop a screen that displays a list of products


● User should be able to do the following things on the screen
○ Search products
○ Look for all the products
○ Include a button that allows the user to navigate to the Add Product screen.
● Ensure that images are loaded for each product from a URL. If the URL is empty, use a default
image instead.
● Provide a visual indicator, such as a progress bar, to show loading progress.

API Specification: https://app.getswipe.in/api/public/get

Expected Response:
[
{
"image": "https://vx-erp-product-images.s3.ap-south
1. amazonaws.com/9_1619635829_Farm_FreshToAvatar_Logo-01
.png", "price": 1694.91525424,
"product_name": "Testing app",
"product_type": "Product",
"tax": 18.0
},
{
"image": "https://vx-erp-product-images.s3.ap-south
1.amazonaws.com/9_1619873597_WhatsApp_Image_2021-04-30_at_19.43.23.jpeg", "price":
84745.76271186,
"product_name": "Testing Update",
"product_type": "Service", "tax":
18.0
}
]

Screen 2: Add Product Screen (BottomSheetDialogFragment).:

Create a screen that allows the user to add a new product with these features:

● Select the product type from a list of options.


● Enter the product name, selling price, and tax rate using text fields.
● Optionally select images in JPEG or PNG format with a 1:1 ratio.
● Validate fields such as product type selection, non-empty product name, and decimal numbers
for selling price and tax.
● Submit the data using the POST method to the API endpoint:
https://app.getswipe.in/api/public/add.
● Use a user-friendly interface to display the screen.
● Document the code for future reference.
● Add progress indication while uploading the product.
● Provide clear and concise feedback to the user upon completion of the action with a dialog and a
notification.

API Specifications: POST Method.


END POINT: https://app.getswipe.in/api/public/add
Body Type: form-data

Name Type for

product_name text Product Name

product_type text Product Type

price text Selling price

tax text Tax rate


files[] file Images (OPTIONAL)

Parameters:
Expected response:

{
"message": "Product added Successfully!",
"product_details": {
//details of added product
},
"product_id": 2657,
"success": true
}

Task 2: Implement offline functionality so that created products are saved locally and added to the
system once an internet connection is available.

Requirements for the Android Assignment

● Include detailed documentation that explains how to build and run the app, along with any
other relevant information.
● Use modern technologies and best practices, such as MVVM architecture, Retrofit for
REST, KOIN for Dependency Injection, and Lifecycle for Kotlin coroutines.
● When in doubt, use your best judgment. We have kept it vague for a reason

Optional Things:

1. Navigation Component from Jetpack: to navigate fragments in the app.


2. Use of sealed classes get generic responses.
3. Use of Splash API

Submission: Fill this https://forms.gle/CvNpHGWqc67NTd4S7 form

PS: Assignment is the most important part of our hiring process, so give it your best if you want to work
with us.

You might also like