Skip to content

Repository files navigation

متصفح أندرويد المتقدم (Advanced Android Browser)

هذا المشروع عبارة عن متصفح ويب متقدم لأجهزة الأندرويد تم تطويره باستخدام لغة Kotlin، مع التركيز على الخصوصية والسرعة. يدمج المتصفح ميزات مثل حجب الإعلانات، وتشفير DNS over HTTPS (DoH)، ووضع التخفي الإجباري مع مسح تلقائي للبيانات، ومكافحة التتبع.

الميزات

  • حاجب إعلانات قوي: يتخطى إعلانات اليوتيوب والمواقع الأخرى لتقديم تجربة تصفح خالية من الإعلانات.
  • تشفير DNS over HTTPS (DoH): يحمي خصوصية المستخدم عن طريق تشفير استعلامات DNS.
  • وضع التخفي الإجباري: يتم مسح جميع بيانات التصفح تلقائيًا عند الخروج من التطبيق.
  • مكافحة التتبع: يمنع المواقع من تتبع نشاط المستخدم عبر الإنترنت.
  • واجهة مستخدم احترافية: سريعة الاستجابة وتدعم Custom Tabs (يمكن توسيعها في المستقبل).

هيكل المشروع

يتكون المشروع من الوحدات الرئيسية التالية:

  • app/src/main/java/com/example/advancedbrowser/: يحتوي على ملفات Kotlin المصدرية.
    • MainActivity.kt: النشاط الرئيسي الذي يستضيف WebView وواجهة المستخدم.
    • AdBlocker.kt: منطق حجب الإعلانات ومنع التتبع.
    • DNSManager.kt: (نموذج) لإدارة تشفير DNS over HTTPS.
    • BrowserWebViewClient.kt: WebViewClient مخصص لدمج حجب الإعلانات.
    • IncognitoManager.kt: لإدارة وضع التخفي ومسح البيانات.
  • app/src/main/res/: يحتوي على موارد واجهة المستخدم (التخطيطات، القيم، الألوان).
  • build.gradle.kts (المشروع): ملف إعدادات Gradle للمشروع بأكمله.
  • app/build.gradle.kts (الوحدة): ملف إعدادات Gradle لوحدة التطبيق.
  • settings.gradle.kts: يحدد الوحدات المضمنة في المشروع.
  • gradle/libs.versions.toml: لإدارة إصدارات المكتبات والتبعيات.

كيفية البناء والتشغيل

لإنشاء وتشغيل هذا المشروع، ستحتاج إلى Android Studio مثبتًا على جهازك.

  1. استنساخ المستودع (Clone the Repository):

    git clone <رابط المستودع الخاص بك>
    cd AdvancedBrowser
  2. فتح المشروع في Android Studio:

    • افتح Android Studio.
    • اختر File > Open وانتقل إلى دليل AdvancedBrowser الذي قمت باستنساخه.
    • انقر على Open.
  3. مزامنة Gradle:

    • سيقوم Android Studio تلقائيًا بمزامنة المشروع مع ملفات Gradle.
    • إذا لم يحدث ذلك، انقر على أيقونة Sync Project with Gradle Files في شريط الأدوات.
  4. تشغيل التطبيق:

    • تأكد من توصيل جهاز Android فعلي أو تشغيل محاكي Android.
    • انقر على زر Run 'app' (الأيقونة الخضراء المثلثة) في شريط الأدوات.
    • سيتم بناء التطبيق وتثبيته وتشغيله على الجهاز أو المحاكي المحدد.

التبعيات الرئيسية

يستخدم المشروع التبعيات التالية:

  • androidx.core-ktx: امتدادات Kotlin لـ AndroidX Core.
  • androidx.lifecycle-runtime-ktx: مكونات دورة حياة AndroidX.
  • androidx.activity-compose: دعم Jetpack Compose للأنشطة.
  • androidx.compose.bom: لإدارة إصدارات Jetpack Compose.
  • androidx.compose.ui, androidx.compose.ui-graphics, androidx.compose.ui-tooling-preview: مكونات واجهة المستخدم لـ Compose.
  • androidx.compose.material3: مكونات Material Design 3 لـ Compose.

ملاحظات حول التنفيذ

  • DNS over HTTPS: تم توفير نموذج بسيط لـ DNSManager.kt. يتطلب التنفيذ الكامل لـ DoH دمج مكتبة مخصصة مثل OkHttp's DnsOverHttps أو حلول أخرى، وهو أمر معقد ويتجاوز نطاق هذا النموذج الأولي. يمكن توسيع هذه الوظيفة في المستقبل.
  • حجب الإعلانات: تعتمد قائمة النطاقات المحظورة حاليًا على قائمة بسيطة. يمكن تحسينها عن طريق دمج قوائم حظر أكبر أو استخدام حلول متقدمة مثل AdGuard SDK أو EasyList.
  • وضع التخفي: يتم مسح بيانات التصفح (ملفات تعريف الارتباط، ذاكرة التخزين المؤقت، بيانات النموذج) عند تدمير MainActivity. لضمان الخصوصية الكاملة، يجب التأكد من أن جميع المكونات لا تخزن البيانات بشكل دائم.

المساهمة

نرحب بالمساهمات لتحسين هذا المتصفح. يرجى فتح مشكلة أو تقديم طلب سحب (Pull Request) مع التغييرات المقترحة.

الترخيص

هذا المشروع مرخص بموجب ترخيص MIT. انظر ملف LICENSE لمزيد من التفاصيل. (ملاحظة: لم يتم إنشاء ملف LICENSE في هذا النموذج، ولكن يجب إضافته في مشروع حقيقي).

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages