vulnguard 0.0.1
vulnguard: ^0.0.1 copied to clipboard
Detect a fack installed_apps
VulnGuard π‘οΈ #
A powerful Flutter library for detecting and blocking vulnerable applications on Android devices. VulnGuard helps secure your app by identifying potentially harmful or blocked applications installed on the user's device.
Features β¨ #
- π Real-time Detection: Automatically scans installed apps against a curated vulnerability database
- π« App Blocking: Prevents app usage when vulnerable applications are detected
- π¨ Beautiful UI: Modern, customizable security alert dialogs
- π Auto-sync: Automatically updates vulnerability database from remote server
- πΎ Local Caching: Efficient local storage for offline functionality
- π§ Easy Integration: Simple API with minimal setup required
Screenshot #
[screen_shot_01]
Installation π¦ #
Add VulnGuard to your pubspec.yaml:
dependencies:
vulnguard: ^1.0.0
Then run:
flutter pub get
Quick Start π #
1. Initialize VulnGuard #
Initialize VulnGuard in your main.dart before running your app:
import 'package:flutter/material.dart';
import 'package:vulnguard/vulnguard.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
// Initialize VulnGuard with your API credentials
await Vulnguard.initialize(
apiKey: 'your_api_key_here',
platform: 'android',
category: 'camera', // or your app category
);
runApp(MyApp());
}
2. Check for Vulnerable Apps #
Add the vulnerability check in your main screen:
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Your App',
home: HomeScreen(),
);
}
}
class HomeScreen extends StatefulWidget {
@override
State<HomeScreen> createState() => _HomeScreenState();
}
class _HomeScreenState extends State<HomeScreen> {
@override
void initState() {
super.initState();
// Check for vulnerable apps after the widget is built
WidgetsBinding.instance.addPostFrameCallback((_) {
Vulnguard.checkForVulnerableApps(context);
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Your App')),
body: Center(
child: Text('Your app content here'),
),
);
}
}
API Reference π #
Initialization #
static Future<void> initialize({
required String apiKey,
required String platform,
String category = 'default',
})
Parameters:
apiKey: Your VulnGuard API key (required)platform: Target platform ('android'or'ios')category: App category for targeted vulnerability checking
Core Methods #
Check for Vulnerable Apps
static void checkForVulnerableApps(BuildContext context)
Displays a security dialog if vulnerable apps are detected.
Get Vulnerable Apps List
static List<VulnerableApp> getVulnerableApps()
Returns a list of detected vulnerable applications.
Check if Vulnerable Apps Exist
bool hasVulnerableApps()
Returns true if any vulnerable apps were found.
Utility Methods #
Get Installed Packages
static Future<List<AppInfo>> getInstalledPackages()
static Future<void> getInstalledPackage()
Package Information
static Future<String?> getAppName(String packageName)
static Future<String?> getIconUrl(String packageName)
static Future<List<PackageInfo>> getAllPackages()
static Future<int> getPackagesCount()
Version Management
static Future<String?> getStoredVersion()
Cleanup
static Future<void> dispose()
Configuration Options βοΈ #
Platform Support #
android: Android platform supportios: iOS platform support (coming soon)
Categories #
Choose the appropriate category for your app:
camera: Camera and photo appssocial: Social media applicationsfinance: Financial and banking appsgaming: Gaming applicationsproductivity: Productivity toolsdefault: General applications
Permissions π #
Add the following permissions to your android/app/src/main/AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
API Key π #
To use VulnGuard, you need a valid API key. Purchase your API key from:
π VulnGuard Official Website
Pricing Plans #
- Starter: Perfect for small apps
- Professional: For growing businesses
- Enterprise: Custom solutions for large organizations
Visit our website for detailed pricing and features comparison.
Advanced Usage π‘ #
Manual Vulnerability Check #
// Get vulnerable apps without showing dialog
List<VulnerableApp> vulnerableApps = Vulnguard.getVulnerableApps();
if (vulnerableApps.isNotEmpty) {
// Handle vulnerable apps manually
for (VulnerableApp app in vulnerableApps) {
print('Vulnerable app found: ${app.appName} (${app.packageName})');
}
}
Custom Security Actions #
// Check if vulnerable apps exist
if (Vulnguard.instance.hasVulnerableApps()) {
// Implement custom security measures
// e.g., disable certain features, show custom warnings, etc.
}
Error Handling π§ #
try {
await Vulnguard.initialize(
apiKey: 'your_api_key',
platform: 'android',
category: 'camera',
);
} catch (e) {
print('VulnGuard initialization failed: $e');
// Handle initialization error
}
Best Practices π #
- Initialize Early: Always initialize VulnGuard before
runApp() - Handle Errors: Wrap initialization in try-catch blocks
- Check Periodically: Consider checking for vulnerabilities periodically during app usage
- Respect Privacy: Inform users about app scanning in your privacy policy
- Update Regularly: Keep the VulnGuard library updated for latest security definitions
Requirements π #
- Flutter 3.0.0 or higher
- Dart 2.17.0 or higher
- Android API level 21+ (Android 5.0+)
- iOS 11.0+ (coming soon)
Support π€ #
- Documentation: docs.vulnguard.com
- API Reference: api.vulnguard.com
- Issues: GitHub Issues
- Email: support@vulnguard.com
License π #
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing π€ #
We welcome contributions! Please see our Contributing Guide for details.
Made with β€οΈ by the VulnGuard Team
π Website: vulnguard.com
π§ Email: hello@vulnguard.com
π¦ Twitter: @vulnguard