
عميل أندرويد مفتوح المصدر لـ VirusTotal. امسح الملفات وعناوين URL والتطبيقات المثبتة مقابل أكثر من 70 محركًا لمكافحة الفيروسات. اعرض تقارير مفصلة تحتوي على التجزئات (hashes) وتصنيفات التهديدات ومطابقات YARA وسلوكيات الصندوق الرملي. لا تتبع ولا إعلانات.
مجاني ومفتوح المصدر. أحضر مفتاح VirusTotal API الخاص بك لفحص الملفات والروابط والتطبيقات المثبتة عبر أكثر من 70 محرك فحص، بواجهة Material 3. بدون حسابات، بدون تتبع، بدون إعلانات.
Veto هو عميل أندرويد لخدمة VirusTotal. أرسل ملفًا أو رابطًا أو تطبيقًا مثبتًا لعرض نتائج التحليل في الوقت الفعلي. يعرض التطبيق تقريرًا واضحًا يتراوح من حكم موحّد واحد إلى المجموعة الكاملة من الحقول التي تُرجعها الخدمة.
المشروع مجاني ومفتوح المصدر، ولا يحتوي على حسابات مستخدمين أو أنظمة تتبع أو إعلانات. نظرًا لأن المستخدمين يوفّرون مفتاح VirusTotal API الخاص بهم، فإن جميع عمليات الفحص تتم مباشرةً تحت حسابهم الشخصي دون المرور عبر خوادم وسيطة تابعة لجهات خارجية.
![]() | ![]() | ![]() |
ScanManager على مستوى التطبيق كمصدر مركزي للحقيقة لجميع حالات الفحص. يضمن ذلك بقاء واجهة المستخدم متزامنة سواء كان التطبيق نشطًا في المقدمة أو معلقًا في الخلفية أو تم إتلافه بواسطة نظام التشغيل./analyses/{id} بحد زمني أقصى قدره ست دقائق. إذا تمت مواجهة استجابة حد معدل، تنتظر العملية بدلاً من الفشل. تتم إعادة جلب التقرير حتى يتم ملء النتائج، مع إرجاع حالة فشل منظمة إذا تم الوصول إلى حد المهلة.ScanState داخل ScanManager لتحمّل إتلاف النشاط، تحافظ ScanService على دورة حياة العملية أثناء العمليات النشطة وتدير الإشعارات الجارية وإشعارات الاكتمال.attributes الأولية الكاملة بصيغة JSON عبر مُسلسِل مخصص. يتيح ذلك لعرض التقرير التفصيلي عرض جميع الحقول المُرجعة، بما في ذلك أي حقول جديدة تُضاف إلى حمولة API بمرور الوقت.└── app/src/main/java/com/quantum_prof/vtscansuite/
├── data/ # النماذج وواجهة API البعيدة وتنفيذ المستودع
├── domain/ # واجهة المستودع وحالات الاستخدام الخاصة بالأعمال
├── di/ # وحدات حقن التبعيات Hilt
├── scan/ # ScanManager وScanService وإشعارات النظام
└── ui/ # مكونات واجهة المستخدم وطبقات العرض
├── intro/ # شاشة البداية وإعداد مفتاح API
├── dashboard/ # مركز التنقل: وحدات فحص الروابط والملفات والتطبيقات
├── results/ # عارضات التقارير السريعة والتفصيلية
├── components/# عناصر وتخطيطات واجهة مستخدم قابلة لإعادة الاستخدام
├── theme/ # إعدادات الألوان والأشكال والخطوط والحركة
└── util/ # أدوات الاهتزاز والإيماءات والروابط العميقة
fastlane/metadata/android/en-US/.docs/store/svg/.docs/store/export.html.استنسخ المستودع وقم بتجميع إصدار التصحيح باستخدام سطر الأوامر:
git clone https://github.com/ProfessorQuantumUniverse/VTScan.git
cd VTScan
./gradlew :app:assembleDebug
بدلاً من ذلك، افتح الدليل الجذر داخل Android Studio وحدد إعداد التشغيل Run.
عند التشغيل الأول، أدخل مفتاح VirusTotal API الخاص بك في شاشة إعداد المقدمة. يتم تخزين المفتاح محليًا على جهازك، مشفرًا بمفتاح AES-256-GCM من Android Keystore، ويُستثنى من النسخ الاحتياطي السحابي والنقل من جهاز إلى جهاز. تخضع مفاتيح API المجانية عادةً لحد أقصى قدره أربعة استعلامات في الدقيقة.
يتواصل التطبيق حصريًا مع واجهة VirusTotal API باستخدام بيانات الاعتماد التي تقدمها. يتم إرسال الملفات المرفوعة وعناوين URL المقدمة والنتائج الديناميكية مباشرةً إلى خوادم VirusTotal. يتم تخزين مفتاح API محليًا على جهازك، مشفرًا بمفتاح AES-256-GCM من Android Keystore، ويُستثنى من النسخ الاحتياطي السحابي والنقل من جهاز إلى جهاز، لذلك لا يغادر الجهاز أبدًا. يقتصر تسجيل HTTP على إصدارات التصحيح ويخفي ترويسة المفتاح. لا يجمع Veto بيانات تحليلية ولا يحتوي على حزم SDK إعلانية.
هذا المشروع مرخص بموجب شروط رخصة GNU العامة العامة الإصدار 3.0.
لمزيد من التفاصيل، يرجى الاطلاع على ملف LICENSE في هذا المستودع.
![]() | ![]() |
| الطبقة | التقنية | الدور في المشروع |
|---|
| اللغة | Kotlin | لغة البرمجة الأساسية |
| إطار الواجهة | Jetpack Compose | بنية واجهة المستخدم التصريحية |
| نظام التصميم | Material 3 | التنسيق البصري، تلوين الأنظمة الديناميكي، والأيقونات الموسعة |
| حقن التبعيات | Hilt | إدارة التبعيات |
| الشبكات | Retrofit & OkHttp | الاتصال عبر HTTP مع واجهة VirusTotal API |
| التسلسل | kotlinx.serialization | تحليل JSON آمن الأنواع والحفاظ على السمات المخصصة |
| اللا تزامن | Kotlin Coroutines | البرمجة غير المتزامنة والمعالجة في الخلفية |
| الاستمرارية | Jetpack DataStore | تخزين الإعدادات الديناميكية وتقارير الفحص المحفوظة |
| التوافق | SDK 30 إلى 36 | تم الترجيع باستخدام JDK 17، minSdk 30، targetSdk 36 |