Blue and Green Organic Group Project Presentation
Blue and Green Organic Group Project Presentation
PROJECT
WWW.REALLYGREATSITE.COM
INTRODUCTION
What is the App?
The app is a simple yet efficient camera application
designed for quick image capturing and storage.
It utilizes Android's built-in camera functionalities and
saves images securely.
Purpose of the App
Lightweight & User-Friendly: Offers a minimalistic
approach to taking pictures.
Faster Access to Camera: Eliminates the need to navigate
through multiple menus.
Secure Storage: Ensures images are stored in a controlled
environment.
Target Audience
Students & Developers: Useful for learning about Android
app development.
General Users: People who need a simple and effective
camera app.
Hobbyists & Photographers: Can serve as a base for
further feature enhancements.
KEY FEATURES
Capture Images Instantly
Click the capture button to open the camera.
Takes pictures using the device’s default camera.
Save Images Securely
Uses internal cache storage to store images.
Prevents unauthorized access.
Dynamic Permission Handling
Requests camera permissions only when needed.
Ensures compliance with Android security guidelines.
Seamless Integration with Android’s Camera API
Uses MediaStore.ACTION_IMAGE_CAPTURE to capture images.
Ensures compatibility across Android versions.
APPLICATION FLOW
1. User clicks the "Capture Image"
button.
2. Camera opens for image
capture.
3. Image is taken and displayed on
the screen.
4. Image is saved in the app
storage.
5. Image can be accessed later
within the app.
Programming Language: Java
Framework: Android SDK
Core Android
Provides necessary
development language
libraries and APIs for
for building native
Android development.
applications.
TECHNOLOGY
STACK
Storage Method: Internal
Libraries Used:
Cache Storage
AndroidX: For backward
Ensures captured
compatibility and
images are saved within
improved UI interaction
app-specific storage.
APP
PERMISSIONS
Why Are Permissions Required?
The app needs access to the device camera to
capture images.
Permissions Declared in AndroidManifest.xml
<uses-permission
android:name="android.permission.CAMERA"
/>
Ensures that the app requests necessary
access before launching the camera.
Runtime Permission Handling in Java Code
Uses ActivityCompat.requestPermissions() to
dynamically request permissions.
Ensures that users have control over granting
or denying access.
CODE OVERVIEW - JAVA
(MAINACTIVITY.JAVA)
Handling Camera Permissions
Uses ActivityCompat.requestPermissions(...) to request camera access if not already granted.
If permission is granted, the camera is opened; otherwise, a permission denied message is displayed.
Launching Camera Intent
Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); initiates the camera
application.
activityResultLauncher.launch(cameraIntent); is used to handle the result from the camera.
If a camera app is available, it launches; otherwise, a toast message indicates no camera app is
installed.
Handling Captured Image
The captured image is retrieved using result.getData().getExtras().get("data").
The bitmap is resized and converted for efficiency using WeakReference<Bitmap>.
The image is then displayed in imageView.setImageURI(imageUri);.
Saving the Captured Image
A File object is created within the cache directory.
The image is compressed using image.compress(Bitmap.CompressFormat.JPEG, 100, stream);.
FileProvider.getUriForFile(...) generates a secure URI for accessing the stored image.
CODE JAVA (MAINACTIVITY.JAVA)
CODE ACTIVITY MAIN XML
CODE JAVA (MAINACTIVITY.JAVA)
CODE OVERVIEW -
ANDROIDMANIFEST.XML
Permissions Declared
<uses-permission android:name="android.permission.CAMERA"/> ensures
the app has camera access.
FileProvider Configuration
Allows secure sharing of file URIs using <provider> within <application>.
<meta-data> is included to specify the paths for file storage.
Activity Declaration
The main activity is declared with <activity android:name=".MainActivity">.
An intent filter is defined to make the activity the entry point of the app.
CODE ANDROIDMANIFEST.XML
OUTPUT
CONCLUSION
This project focused on developing a lightweight and efficient camera application
with essential functionalities such as image capturing and secure storage. The app
ensures a smooth user experience by integrating Android’s Camera API while
handling permissions dynamically. Through this project, we gained hands-on
experience in Android app development, including working with camera intents, file
handling, and UI design. Although the app currently provides basic image capturing
features, there is significant potential for future enhancements such as image
editing, sharing options, and cloud backups. Moving forward, these improvements
can enhance user experience and expand the app’s functionality.This project was a
great learning experience, and we look forward to applying these skills in more
advanced applications.
THANK
YOU !
USER INTERFACE