zeba_academy_security
A powerful Flutter security plugin designed to protect mobile applications from common security threats such as rooted devices, emulators, insecure networks, and screen capture leaks.
This package helps developers integrate essential mobile security protections including root detection, emulator detection, screenshot blocking, SSL pinning, API request encryption, and tamper detection.
⨠Features
-
š Root Detection Detect if the Android device is rooted to prevent running the app on compromised devices.
-
š± Emulator Detection Identify if the app is running inside an emulator or virtual environment.
-
š« Screenshot Blocking Prevent users from taking screenshots of sensitive screens.
-
š„ Screen Recording Detection Protect sensitive app screens from being recorded.
-
š SSL Pinning Ensure secure communication by validating server certificates.
-
š API Request Encryption Encrypt API payloads before sending requests.
-
š” App Tamper Detection Detect modifications or repackaging of the app.
š¦ Installation
Add this to your pubspec.yaml:
dependencies:
zeba_academy_security: ^1.0.0
Then run:
flutter pub get
š Basic Usage
Import the package:
import 'package:zeba_academy_security/zeba_academy_security.dart';
š Device Security Check
bool rooted = await ZebaAcademySecurity.isDeviceRooted();
bool emulator = await ZebaAcademySecurity.isEmulator();
š« Block Screenshots
await ZebaAcademySecurity.blockScreenshots();
ā Allow Screenshots
await ZebaAcademySecurity.allowScreenshots();
š Encrypt API Request
String encrypted = ZebaAcademySecurity.encryptRequest(
"request-data",
"secret-key",
);
š± Example App
import 'package:flutter/material.dart';
import 'package:zeba_academy_security/zeba_academy_security.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
String status = "Checking security...";
@override
void initState() {
super.initState();
checkSecurity();
}
Future<void> checkSecurity() async {
bool rooted = await ZebaAcademySecurity.isDeviceRooted();
bool emulator = await ZebaAcademySecurity.isEmulator();
await ZebaAcademySecurity.blockScreenshots();
setState(() {
status = "Rooted: $rooted\nEmulator: $emulator";
});
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(title: const Text("Zeba Security Test")),
body: Center(
child: Text(status),
),
),
);
}
}
šø Screenshots
screenshots/
āā security_dashboard.png
āā root_detection.png
āā screenshot_blocking.png
šÆ Use Cases
This package is ideal for:
- FinTech applications
- EdTech platforms
- Banking apps
- Secure enterprise apps
- Applications handling sensitive user data
š Documentation
For tutorials and guides:
š¤ Contributing
Contributions are welcome.
- Fork the repository
- Create a new feature branch
- Commit your changes
- Submit a pull request
š License
This project is licensed under the GNU General Public License v3.0.
About Me
⨠Iām Sufyan bin Uzayr, an open-source developer passionate about building and sharing meaningful projects. You can learn more about me and my work at https://sufyanism.com/ or connect with me on https://www.linkedin.com/in/sufyanism
Your all-in-one no-bloat hub!
š Explore cutting-edge resources in coding, tech, and development at zeba.academy and code.zeba.academy.
Empower yourself with practical skills through curated directives, real-world projects, and hands-on experience.
Level up your tech game today! š»āØ
Zeba Academy is a learning platform dedicated to coding, technology, and development.
ā” Visit our main site: https://zeba.academy ā” Explore hands-on courses and resources at: https://code.zeba.academy ā” Check out our YouTube for more tutorials: https://www.youtube.com/@zeba.academy ā” Follow us on Instagram: https://www.instagram.com/zeba.academy/
Thank you for visiting!