Enhancement of the My Nails Style application for Android (frontend).
Programming language: Kotlin UI language: Jetpack Compose
The mobile application under development requires the implementation of the following points:
Integration of Google Play payments:
1.1 - Adding the BILLING permission to the application to allow the addition of products in the Google Play Console.
1.2 - Connecting the application to the Google Play Console payment system and setting up the sale of 2 subscriptions and 3 products from the frontend.
Separation of files of different users:
Separation of files of different users of the application on the same device. When logging into the application, the user uses an email or Google account. Based on this, the files (photos and generations) created in the application should not be accessible to other users using the same device but with a different account.
Synchronization of published images with the server:
When opening the application, information about previously published images of the user should be loaded from the server. If they are not on the user's device, they should be downloaded from the server to the user's application folders. In the application, they should be displayed in the "My Generations" gallery (Art and Fun). This may be needed if the user deleted the application for some reason and then reinstalled it. Or switched to another device.
Authorization token verification:
With each request to the backend, the application should handle a possible response with code 401 Unauthorized. Upon receiving such a response, redirect to the login page.
Pagination of image loading:
Implementation of the logic for paginated loading of the list of published images. For example, 100 at a time (the user viewed 95 images - information about the next 100 is loaded. The user viewed 98 - 100 images are loaded according to the previously loaded list).
The number of images stored in the smartphone's memory should be limited to a reasonable amount (20..30), so that the phone does not crash when the user scrolls through 100500 pictures.
6. Notification of account deletion:
After deleting the account, a card should appear confirming successful deletion.
Correction of the application page layout
Image page
7.1 - Adding a "Report" icon and sending "Report" messages to the backend from the image page. If the user has already sent a Report on the image, the button does not appear.
7.2 Notification of accepted Report.
7.3 - Adding the ability to delete one's own image. If this image is published - it is deleted from publications. The delete icon appears only if this image belongs to the user.
Page "My Profile":
8 - Moving the "Settings" button from one place on the "My Profile" page to another. It is necessary to slightly shift several elements.
Link to publication requirements:
Adding a link on the card that appears before publication, which allows familiarization with the publication requirements on the application's website.
Layouts of all elements will be provided in the form of access to the project in Figma.
At the top, the layouts of the elements in their current state, at the bottom how they need to be changed
https://www.figma.com/design/9HJ27koNHsP9PXxEFVFFqr/Part-3?node-id=0-1&t=hdR5q9MZ5p0nS8U7-1