Skip to content

Latest commit

 

History

History
501 lines (387 loc) · 55.9 KB

README-ar.md

File metadata and controls

501 lines (387 loc) · 55.9 KB

autojs6-banner_800×224

أداة أتمتة JavaScript لنظام Android مدعومة بخدمة الوصول

GitHub release (latest by date) GitHub closed issues Created
Rhino Android Studio
CodeFactor Grade JetBrains supporter GitHub License


اللغات


ملف README.md الحالي يدعم اللغات التالية:


المقدمة


Auto.js هو برنامج أتمتة JavaScript مدعوم على منصة Android مع خدمة الوصول.

تم إصدار Auto.js لأول مرة بواسطة hyb1996 في 2017/01/27، وتوقف الصيانة في 2020/03/13، وكان الإصدار الأخير هو 4.1.1 Alpha2 ورقم البنية 461.

تم تطوير AutoJs6 استنادًا إلى المشروع النهائي لـ Auto.js في 2021/12/01، ويستمر في أن يكون مفتوح المصدر ومجاني.

الجدول أدناه يضم بعض المشاريع ذات الصلة بـ Auto.js (مرتبة حسب تاريخ التطوير):

المشروع اسم التطبيق المطور تاريخ بداية التطوير تاريخ نهاية التطوير
Auto.js Auto.js hyb1996 2017/01/27 2020/03/13
Auto.js Pro 7 Auto.js hyb1996 2019/03/13 2019/07/08
Auto.js Pro 8 AutoJsPro hyb1996 2019/10/13 2021/07/24
Auto.js Auto.js M TonyJiangWJ 2019/11/21 -
AutoX Autox.js kkevsekk1 2020/07/24 -
Auto.js Pro 9 AutoJsPro hyb1996 2021/03/28 2023/02/09
AutoJs6 AutoJs6 SuperMonster003 2021/12/01 -
AutoX Autox.js v6 wilinz 2022/05/26 -
AutoX Autox.js v7 aiselp 2024/04/21 -

التواريخ في الجدول هي تقديرات وقد تختلف عن الواقع.

في الجدول، تعد إصدارات Auto.js Pro 7/8/9 مدفوعة، والبقية مفتوحة المصدر ومجانية.


الوظائف


  • يمكن استخدامه كبيئة تطوير تكاملية (IDE) لـ JavaScript (إكمال الكود / إعادة تسمية المتغيرات / تنسيق الكود)
  • دعم تشغيل الأتمتة باستناد إلى خدمة الوصول
  • دعم الإجراءات السريعة لزر الطفو (تسجيل وتشغيل السكربت / عرض حزمة النشاط / تحليل التخطيط)
  • دعم واجهة برمجة التطبيقات الخاصة بالموصل وتوفير التصفح/استرجاع المعلومات/تشغيل الموصلات (مشابه لـ UiAutomator)
  • دعم تحليل واجهة التخطيط (مشابه لـ LayoutInspector في Android Studio)
  • دعم ميزة التسجيل وتشغيل التسجيل
  • دعم لقطة الشاشة/حفظ لقطة الشاشة/البحث عن اللون في الصورة/مطابقة الصورة
  • دعم كتابة الواجهة باستخدام E4X (ECMAScript for XML)
  • دعم تجميع ملفات أو مشاريع السكربت إلى ملفات APK
  • دعم توسيع الميزات باستخدام صلاحيات الروت (النقر, السحب, التسجيل, أوامر shell)
  • دعم الاستخدام كمكون إضافي لـ Tasker
  • دعم الاتصال بـ VSCode وتطوير سطح المكتب (تحتاج إلى المكون الإضافي AutoJs6-VSCode-Extension)

البيئة


  • نظام تشغيل Android
  • API 24 (7.0) [N] وما بعده

الدليل



التغييرات الرئيسية


مقارنةً بالإصدار النهائي المفتوح المصدر لـ Auto.js 4.1.1 Alpha2، فإن AutoJs6 قد أجرت التحديثات أو التغييرات الرئيسية التالية:


تاريخ الإصدارات


v6.6.0

2024/12/02 - إعادة كتابة الوحدات المدمجة، الترقي بحذر
  • تلميح تمت إعادة كتابة الوحدات المدمجة باستخدام Kotlin لتحسين كفاءة تشغيل البرامج النصية ولكن قد يتطلب ذلك عدة تكرارات للتطوير بشكل تدريجي
  • تلميح ملف init.js المدمج هو فارغ بشكل افتراضي ولكنه يدعم توسيع الوحدات المدمجة أو تحميل وحدات خارجية بواسطة المطورين
  • إضافة جديدة وحدة axios / وحدة cheerio (راجع إلى AutoX)
  • إضافة جديدة وحدة sqlite، تُستخدم للعمليات البسيطة على قواعد بيانات SQLite (راجع إلى Auto.js Pro) (ارجع إلى مستندات المشروع > SQLite)
  • إضافة جديدة وحدة mime، تُستخدم لمعالجة وتحليل سلاسل نوع MIME (ارجع إلى مستندات المشروع > MIME)
  • إضافة جديدة وحدة nanoid، يمكن استخدامها كمولد لسلاسل معرفات (راجع إلى ai/nanoid)
  • إضافة جديدة وحدة sysprops، تُستخدم للحصول على بيانات تكوين بيئة التشغيل (ارجع إلى مستندات المشروع > خصائص النظام)
  • إضافة جديدة تدعم وحدة ocr محرك Rapid OCR
  • إضافة جديدة دعم تحليل التخطيط لتبديل النوافذ (راجع إلى Auto.js Pro)
  • إضافة جديدة طريقة auto.clearCache، تدعم مسح ذاكرة الكاش (راجع إلى Auto.js Pro)
  • إضافة جديدة طريقة threads.pool، تدعم تطبيق بسيط للمؤشرات (راجع إلى Auto.js Pro)
  • إضافة جديدة طريقة images.matchTemplate تضيف خيار useTransparentMask لدعم البحث الشفاف عن الصور (راجع إلى Auto.js Pro)
  • إضافة جديدة طريقة images.requestScreenCaptureAsync، تُستخدم لطلب إذن لالتقاط الشاشة بشكل غير متزامن في وضع UI (راجع إلى Auto.js Pro)
  • إضافة جديدة طريقة images.requestScreenCapture تضيف خيار isAsync لدعم الحصول على لقطة الشاشة بشكل غير متزامن (راجع إلى Auto.js Pro)
  • إضافة جديدة طرق مراقبة الأحداث مثل images.on('screen_capture', callback)، تدعم مراقبة توافر لقطة الشاشة (راجع إلى Auto.js Pro)
  • إضافة جديدة طريقة images.stopScreenCapture، تدعم تحرير الموارد المتعلقة بطلب لقطة الشاشة (راجع إلى Auto.js Pro)
  • إضافة جديدة طرق images.psnr/mse/ssim/mssim/hist/ncc وimages.getSimilarity، تُستخدم للحصول على مقادير تشابه الصور
  • إضافة جديدة طريقة images.isGrayscale، لتحديد ما إذا كانت الصورة رمادية أم لا
  • إضافة جديدة طريقة images.invert، تُستخدم لعكس ألوان الصورة
  • إضافة جديدة طرق s13n.point/time، لتوحيد كائنات النقاط وكائنات الوقت (ارجع إلى مستندات المشروع > التوحيد)
  • إضافة جديدة طرق وحدة console، مثل gravity (الجاذبية)، touchThrough (النقر عبر)، وbackgroundTint (تلوين الخلفية) (ارجع إلى مستندات المشروع > وحدة التحكم)
  • إضافة جديدة طرائق Mathx.randomInt/Mathx.randomFloat، تستخدم لإرجاع عدد صحيح أو نقطة عشوائية ضمن النطاق المحدد
  • إضافة جديدة طرق app.launchDual/startDualActivity، تُستخدم للتعامل مع التطبيقات المزدوجة (تتطلب Shizuku أو Root) (تجريبي)
  • إضافة جديدة طريقة app.kill، تُستخدم لإيقاف التطبيق بالقوة (تتطلب Shizuku أو Root)
  • إضافة جديدة طريقة floaty.getClip، تُستخدم للحصول على محتوى الحافظة بشكل غير مباشر باستخدام نافذة عائمة
  • تصليح تسرب الذاكرة في الارتباط العرضي في الفئات الفرعية لFragment (مثل DrawerFragment / ExplorerFragment إلخ)
  • تصليح تسرب الذاكرة في مثيلات الفئات مثل ScreenCapture / ThemeColorPreference إلخ
  • تصليح مشكلة تسبب تعطل التطبيق عند طلب إذن لقطة الشاشة على Android 14+ (by chenguangming) pr #242
  • تصليح مشكلة تسبب تعطل التطبيق عند تشغيل الخدمة الأمامية على Android 14+
  • تصليح مشكلة بطئ إضاءة زر تشغيل محرر الأكواد على Android 14+
  • تصليح مشكلة تؤدي إلى عدم القدرة على تشغيل التطبيق نتيجة نقص الملفات الأساسية بعد حزم المشروع issue #202 issue #223 pr #264
  • تصليح مشكلة تعطل التطبيق بسبب عدم وجود موارد الأيقونات المخصصة أثناء تحرير المشروع issue #203
  • تصليح عدم القدرة على استخدام المعلمات للحصول على لقطة الشاشة باتجاه معين أثناء طلب إذن لقطة الشاشة
  • تصليح مشكلة في بعض الأجهزة التي لا يمكنها إضافة اختصارات البرامج النصية بشكل سليم (محاولة إصلاح) issue #221
  • تصليح مشكلة تأخير تراكمي في إرسال الطلبات عند استدعاء الطرائق المتعلقة بوحدة http
  • تصليح مشكلة في عدم قدرة خدمة Shizuku على العمل بشكل صحيح قبل الدخول إلى النشاط الرئيسي لـ AutoJs6 (محاولة إصلاح) issue #255
  • تصليح مشكلة تجاوز النتيجة في طريقة random(min, max)
  • تصليح عدم القدرة على تمرير المعلمات من النوع الفارغ في طريقة pickup
  • تصليح مشكلة في تحريف الشكل الثابت للمعامل عند الحصول على المربعات باستخدام UiObject#bounds()
  • تصليح مشكلة عدم القدرة على تحليل النصوص التي تحتوي على علامات تنصيص نصف عريضة في العناصر text/button/input
  • تصليح مشكلة عدم فعالية وظيفة autoLink في عناصر text/textswitcher
  • تصليح مشكلة في مشاركة كائن ScriptRuntime بين السكريبتات المختلفة
  • تصليح فقدان الخواص الديناميكية للمتغيرات العامة HEIGHT وWIDTH
  • تصليح مشكلة في التأخير في بدء التحميل المفاجئ لـ RootShell أثناء بدء تشغيل البرنامج النصي
  • تصليح مشكلة في ضبط لون الخلفية التي تسبب فقدان الزوايا المستديرة للنافذة العائمة في وحدة التحكم
  • تصليح مشاكل تعطل الخدمة في التشغيل التلقائي لنظام التشغيل بدون حزمة كاملة (محاولة إصلاح)
  • تصليح مشكلة تبديل ViewPager عند التمرير الأفقي في WebView في صفحة المستندات الرئيسية
  • تصليح مشكلة عدم القدرة على تحديد الملفات ذات الامتداد الكبير في مدير الملفات
  • تصليح مشكلة عدم قدرة مدير الملفات على التعرف التلقائي على المشروع عند الدخول الأول إلى دليله
  • تصليح مشكلة عدم تحديث الصفحة تلقائيًا بعد حذف المجلد في مدير الملفات
  • تصليح مشكلة في ترتيب الملفات والمجلدات في مدير الملفات بسبب وضع اسم الحرف الأول في ASCII في نهاية القائمة
  • تصليح خطأ فشل التثبت في وظيفة تصحيح الأخطاء لمحرر الأكواد
  • تصليح مشكلة عدم القدرة على بدء التصحيح بعد إغلاق محرر الأكواد أثناء التصحيح
  • تصليح مشكلة تجاوز العناصر عند التنقل إلى نهاية السطر في محرر الأكواد
  • تصليح مشكلة وميض عند تشغيل صفحة السجلات في الصفحة الرئيسية للنشاط
  • تصليح عدم القدرة على استخدام وحدة opencc مع التطبيقات المعبأة بشكل صحيح
  • تحسين تحسين تجربة النقر على عنصر تحكم ABI غير متاح في صفحة التعبئة
  • تحسين دعم التحكم في تشغيل عرض مواقع المؤشر باستخدام Shizuku
  • تحسين دعم التحكم في تشغيل "إبراز وسائل الإعلام" و"تعديل إعدادات الأمان" باستخدام Shizuku
  • تحسين تدعم طرائق automator.gestureAsync/gesturesAsync معلمات دالة الاستدعاء
  • تحسين استخدام الوحدات النمطية كوحدة tasks لتنفيذ العمليات على قاعدة البيانات بطريقة متزامنة لتجنب التناقضات المحتملة في الوصول إلى البيانات
  • تحسين دعم وضع التشغيل البرمجي باستخدام فواصل الأنابيب (مثل "ui|auto"; في البداية)
  • تحسين دعم وضع التشغيل البرمجي باستخدم الأقواس الفردية والخلفية بالتخطي; وتقديم القدرة على إغفال الفواصل المنقوطة (مثل بدايةً 'ui'; أو 'ui')
  • تحسين دعم استيراد النماذج المدمجة مثل axios, cheerio, dayjs وغيرها من النماذج باستخدام معلم الأوضاع السريعة (مثل "axios"; في البداية)
  • تحسين دعم استيراد وحدات JavaScript الداخلية باستخدام "x" أو "jsox" كمعلم الأوضاع السريعة (مثل "x"; في البداية)
  • تحسين دعم مسارات محلية نسبية في خصائص عنصر img src و path (مثل <img src="a.png" />)
  • تحسين دعم التعرف الذكي على موقع الإدراج عند استيراد فئات وحزم Java في محرر الأكواد
  • تحسين دعم استخدام المسارات كمعلمات الصور مباشرة في وحدة images
  • تحسين دعم المعلمات في استيراد الحزم باستخدام importPackage
  • تحسين دعم التعرف الذكي على عناوين IP في وضع الخادم من الحافظة ودعم التحويل الذكي باستخدام مفتاح المسافة
  • تحسين دعم إنشاء الملفات برقم تسلسلي افتراضي ومناسب مع اختيار تلقائي للبادئة في مدير الملفات
  • تحسين توفر رسائل خطأ مفصلة عند تشغيل مشروع معين في مدير الملفات issue #268
  • تحسين دعم المزيد من أنواع الملفات ودعم عرض الرموز المقابلة (يدعم أكثر من 800 نوع من الملفات) في مدير الملفات
  • تحسين إضافة زر لتعديل أنواع الملفات القابلة للتحرير (jpg/doc/pdf...) في مدير الملفات
  • تحسين إضافة دعم لعرض المعلومات الأساسية وبيانات Manifest وقائمة الأذونات لملفات APK في مدير الملفات
  • تحسين دعم عرض المعلومات الأساسية وبيانات MediaInfo للملفات الوسائطية (الصوت والفيديو) في مدير الملفات
  • تحسين دعم إدخال اسم الحزمة القياسي تلقائيًا عند تعبئة ملف فردي وتقديم تحذيرات حول الشخصيات غير الصالحة
  • تحسين دعم إعداد الأيقونة وزيادة رقم الإصدار واسم الإصدار تلقائيًا بناءً على التطبيقات المثبتة من نفس اسم الحزمة عند تعبئة ملف فردي
  • تحسين دعم تحديد وحدات ABI والمكتبات الافتراضية المتضمنة باستخدام خيارات abis/libs في ملفات تكوين المشاريع التعبئة
  • تحسين دعم الرسائل التحذيرية عند تعذر فاعلية الخيارات المحددة لـ abis/libs في ملفات تكوين المشاريع التعبئة
  • تحسين استبعاد LeakCanary في إصدارات الإنتاج لتقليل الأعباء غير الضرورية
  • تحسين إضافة ترجمات باللغة الصينية للتعليقات الإنجليزية في الشيفرة المصدرية للمشروع لتحسين قابلية القراءة للتعليقات
  • تحسين دعم README وCHANGELOG للغات متعددة (توليد النصوص تلقائيًا)
  • تحسين تحسين التكيف الذاتي لإصدارات السكريبت الإنشائي لـ Gradle
  • تحسين تعديلات على إصدارات بعض التبعيات أو المكتبات المحلية CHANGELOG.md

v6.5.0

2023/12/02
  • إضافة جديدة إضافة وحدة opencc (مرجع إلى وثائق المشروع > تحويل النصوص الصينية) (مرجع إلى LZX284)
  • إضافة جديدة إضافة طريقتي plus و append إلى UiSelector - issue #115
  • إضافة جديدة إضافة دعم تصفية ABI والمكتبات في صفحة تغليف التطبيق (مرجع إلى AutoX) - issue #189
  • تصليح إصلاح مشكلة الحجم الكبير غير العادي للتطبيقات المغلفة (مرجع إلى AutoX و LZX284) - issue #176
  • تصليح إصلاح مشكلة عرض وطباعة بعض رسائل الخطأ في التطبيقات المغلفة
  • تصليح إصلاح مشكلة عرض أيقونة فارغة عند اختيار أيقونة التطبيق في صفحة التغليف
  • تصليح إصلاح خطأ تهيئة السياق الغير مهيأ عند تضمين مكتبة MLKit Google OCR في التطبيقات المغلفة
  • تصليح إصلاح عدم فعالية طرق ocr.mlkit/ocr.recognizeText/detect
  • تصليح إصلاح عدم تطابق لغة النصوص المعروضة مع لغة الإعدادات في بعض النصوص (مثل صفحة السجلات)
  • تصليح إصلاح مشكلة تجاوز النص لحدود الصفحة في بعض اللغات ضمن مفتاح زوار الصفحة الرئيسية
  • تصليح إصلاح مشكلة إغلاق خدمة الوصول تلقائيًا بعد تفعيلها دون أي رسالة تحذيرية في بعض الأجهزة - issue #181
  • تصليح إصلاح مشكلة تعطل التطبيق بعد تفعيل خدمة الوصول بسبب استخدام الأزرار الفيزيائية في بعض الأجهزة (محاولة تصحيح) - issue #183 issue #186
  • تصليح إصلاح خلل في وظيفة pickup بعد إعادة تشغيل خدمة الوصول باستخدام auto(true) (محاولة تصحيح) - issue #184
  • تصليح إصلاح مشكلة تعطل التطبيق عند سحب نافذة التعويم في وحدة floaty (محاولة تصحيح)
  • تصليح إصلاح مشكلة عدم القدرة على استخدام معايير مختصرة في app.startActivity - issue #182 issue #188
  • تصليح إصلاح مشكلة عدم القدرة على استيراد الأسماء المتعارضة مع المتغيرات العالمية باستخدام importClass - issue #185
  • تصليح إصلاح مشكلة عدم القدرة على استخدام خدمة الوصول في Android 7.x
  • تصليح إصلاح مشكلة عدم القدرة على استخدام طرق runtime.loadJar/loadDex في Android 14 (محاولة تصحيح)
  • تصليح إصلاح مشكلة عدم القدرة على استخدام "تحليل النطاق التخطيطي" و"تحليل التسلسل التخطيطي" ضمن لوحة الإعدادات السريعة لأنظمة Android - issue #193
  • تصليح إصلاح مشكلة تأخير التطبيق نتيجة فحص التحديث التلقائي (محاولة تصحيح) - issue #186
  • تصليح إصلاح مشكلة عدم الرجوع إلى صفحة مسار العمل بعد النقر على زر "الصعود" في صفحة مدير الملفات - issue #129
  • تصليح إصلاح مشكلة عدم ظهور زر الاستبدال في وظيفة الاستبدال بمحرر الأكواد
  • تصليح إصلاح مشكلة تعطل التطبيق عند الضغط المطول لحذف رمز في محرر الأكواد (محاولة تصحيح)
  • تصليح إصلاح مشكلة عدم ظهور لوحة الوظائف السريعة لوحدة fx عند النقر عليها في محرر الأكواد
  • تصليح إصلاح مشكلة تجاوز النص لحدود الأزرار في لوحة الوظائف السريعة بمحرر الأكواد
  • تحسين يتكيف لوح الوظائف السريع في وحدة محرر الأكواد مع الوضع الليلي.
  • تحسين تتكيف صفحة البدء لتطبيق الحزمة مع الوضع الليلي ويتم تعديل تخطيط أيقونات التطبيق.
  • تحسين تدعم صفحة التطبيق المغلفة التنقل بالمؤشر باستخدام مفتاح ENTER على لوحة المفاتيح البرمجية.
  • تحسين تدعم صفحة التطبيق المغلفة تغيير حالة التحديد الكامل عند النقر فوق عناوين ABI والمكتبة.
  • تحسين تم جعل التحديد الافتراضي لـ ABI ذكيًا في صفحة التطبيق المغلفة مع إضافة مطالبات إرشادية للعناصر غير القابلة للتحديد.
  • تحسين يقوم مدير الملفات بتعديل عرض عناصر القائمة بناءً على النوع وخصائص الملفات والمجلدات.
  • تحسين يضيف قائمة النقر بزر الماوس الأيمن للمدير الملفات خيار تغليف التطبيقات.
  • تحسين عند تمكين خدمات الوصول ولكنها تعمل بشكل غير صحيح، يتم عكس حالة الشذوذ في مفتاح التبديل في الصفحة الرئيسية لـ AutoJs6.
  • تحسين تتضمن وحدة التحكم معلومات مفصلة عن المكدس عند طباعة رسائل الخطأ.
  • تحسين تعديلات على إصدارات بعض التبعيات أو المكتبات المحلية CHANGELOG.md

v6.4.2

2023/11/15
  • إضافة جديدة خصائص خيار المعلمة inputSingleLine في dialogs.build()
  • إضافة جديدة طريقة console.setTouchable issue #122
  • تصليح مشكلة بعض طرق التعرف على المنطقة في وحدة ocr issue #162 issue #175
  • تصليح مشكلة تعذر الحصول على تفاصيل الإصدار عند اكتشاف إصدار جديد على Android 7.x
  • تصليح مشكلة تعطل التطبيق عند طلب إذن لقطة الشاشة على Android 14
  • تصليح مشكلة تعطل التطبيق عند التبديل السريع لـ "زر عائم" في درج الصفحة الرئيسية
  • تصليح مشكلة استمرار ظهور الزر العائم بعد إعادة تشغيل التطبيق عند إغلاقه باستخدام القائمة
  • تصليح مشكلة عدم فعالية اختيار وتبديل لغة AutoJs6 في صفحة إعدادات النظام على Android 13 والإصدارات الأحدث
  • تصليح مشكلة تعذر إكمال نشر موارد OpenCV تلقائيًا عند البناء الأول باللغة
  • تحسين تعديل وحدة bridges الأصلية لتحسين كفاءة تنفيذ السكريبت (المرجع aiselp)
  • تحسين إعادة هيكلة الكود المرتبط بخدمات إمكانية الوصول لتعزيز استقرار الخدمة (تجريبية) issue #167
  • تحسين تنسيق إخراج UiObject وUiObjectCollection
  • تحسين إضافة إشعار للترقية عند عدم استيفاء إصدار Gradle JDK لمتطلبات بيئة البناء
  • تحسين تعديلات على إصدارات بعض التبعيات أو المكتبات المحلية CHANGELOG.md
لمزيد من تاريخ الإصدارات، ارجع إلى

تجميع وبناء المشروع


لتصحيح أو تطوير مشروع AutoJs6، يمكنك استخدام Android Studio (منتج من Google) أو IntelliJ IDEA (منتج من Jetbrains).

يتناول هذا القسم طرق بناء وتجميع مشروع AutoJs6 المفتوح المصدر مستخدمًا Android Studio كمثال، يمكن استخدام IntelliJ IDEA بنفس الطريقة.

تحضير Android Studio

قم بتنزيل إصدار Android Studio Ladybug | 2024.2.1 Patch 2 (حدد أحدها حسب الحاجة):

ملاحظة: تاريخ الإصدار بالنسخة المذكورة أعلاه هو 31 October 2024. إذا كنت بحاجة إلى تنزيل إصدار آخر، أو إذا كان الرابط المذكور غير صالح، يمكنك زيارة أرشيف إصدارات Android Studio.

قم بتثبيت أو فك ضغط الملف المذكور سابقًا، ثم قم بتشغيل برنامج Android Studio (مثل "D:\android-studio\bin\studio64.exe").

تحضير Android SDK

ملاحظة: إذا كان نظام الكمبيوتر يحتوي بالفعل على Android SDK (مجموعة تطوير البرمجيات لنظام أندرويد)، فيمكنك تخطي هذا القسم.

في برنامج Android Studio، استخدم الاختصار CTRL + ALT + S لفتح صفحة الإعدادات:

Appearance & Behavior (الشكل العام والسلوك) -> 
System Settings (إعدادات النظام) -> 
Android SDK (مجموعة تطوير البرامج لنظام Android)

إذا كان حقل موقع Android SDK (Android SDK Location) فارغًا، يمكنك النقر على زر تحرير (Edit) على اليمين، والنقر على التالي (Next) عدة مرات في النافذة المنبثقة.

ملاحظة: قد يتطلب الأمر الموافقة على اتفاقية واحدة أو أكثر للاستمرار في العملية.

عندما يتم تنزيل وتثبيت الموارد ذات الصلة، انقر على زر إنهاء (Finish).
سيتم تلقائيًا ملء المسار في حقل موقع Android SDK (Android SDK Location) المشار إليه أعلاه، وسيتم إنجاز أعمال التحضير للـ SDK.

تحضير أدوات Android SDK

AutoJs6 يتطلب استخدام بعض أدوات SDK (مثل NDK وCMake).

ملاحظة: إذا كان النظام يحتوي بالفعل على جميع أدوات Android SDK المطلوبة لمشروع AutoJs6، فيمكنك تخطي هذا القسم.

استخدام اختصار CTRL + ALT + S في برنامج Android Studio لفتح صفحة الإعدادات:

Appearance & Behavior (الشكل العام والسلوك) -> 
System Settings (إعدادات النظام) -> 
Android SDK (مجموعة تطوير البرامج لنظام Android) -> 
SDK Tools  (أدوات SDK) (في النافذة اليمنى)

حدد إظهار تفاصيل الحزمة (Show Package Details)، وقم بالنقر على NDK و CMake، وتأكد من تحديد الأدوات الخاصة بها ,تقع معلومات إصدار أدوات SDK في ملف version.properties في جذر مشروع AutoJs6.

تحضير JDK

يعتمد مشروع AutoJs6 على إصدار JDK (مجموعة تطوير جافا) بإصدار لا يقل عن 17، ولكن يفضل الإصدار الذي لا يقل عن 19.

اعتبارًا من 2 December 2024، الإصدار الأقصى المدعوم من JDK لمشروع AutoJs6 هو 23.

ملاحظة: إذا كان نظام الكمبيوتر يحتوي على JDK والإصدار يفي بالمتطلبات المذكورة أعلاه، فيمكنك تخطي هذا القسم.

يمكن تنزيل JDK مباشرةً باستخدام IDE، أو زيارة موقع Oracle لتنزيله.

استخدم اختصار CTRL + ALT + S في برنامج Android Studio لفتح صفحة الإعدادات:

Build, Execution, Deployment (البناء، التنفيذ، التوزيع) -> 
Build Tools (أدوات البناء) -> 
Gradle

يمكنك اختيار أو إضافة إصدار JDK مختلف في حقل Gradle JDK.

إذا كان الإصدار المناسب للـ JDK (>= 17) موجوداً بالفعل في القائمة، فيمكنك تحديده مباشرةً.
يمكنك اختيار Download JDK (تنزيل JDK) لتنزيل JDK المناسب، انقر على زر Download (تنزيل) وانتظر حتى يكتمل التنزيل.
يمكنك أيضًا اختيار Add JDK (إضافة JDK) لإضافة JDK موجود محليًا، وتحديد مساره وإكمال الإضافة.

استنساخ موارد AutoJs6

في شاشة Android Studio الرئيسية، انقر على زر Get from VCS (الحصول من نظام التحكم في الإصدارات).
أدخل العنوان https://github.com/SuperMonster003/AutoJs6.git في حقل URL (عنوان الموارد الموحدة),
يمكن تعديل المسار في حقل Directory (المجلد) حسب الحاجة.
انقر على زر Clone (استنساخ)، وانتظر حتى يكتمل استنساخ موارد مشروع AutoJs6 محليًا.

ملاحظة: قد تتطلب العملية المذكورة أعلاه تثبيت Git (نظام التحكم في الإصدار الموزع).

بناء مشروع AutoJs6

عند اكتمال الاستنساخ، سيفتح Android Studio نافذة مشروع AutoJs6، ويكمل تلقائيًا تنزيل Dependencies (التبعيات) الأساسية وبناء Gradle.

ملاحظة: قد تستغرق العملية المذكورة أعلاه وقتًا طويلًا. إذا كانت حالة الشبكة غير جيدة، قد تحتاج إلى المحاولة عدة مرات (بالنقر على زر Retry).

عند اكتمال البناء، ستظهر رسالة مشابهة لـ BUILD SUCCESSFUL in 1h 17m 34s في علامة التبويب Build في برنامج Android Studio.

حزمة المشروع وتوليد ملف APK يمكن تثبيته على أجهزة Android:

  • نسخة تجريبية (Debug Version)
    • Build (بناء) -> Build Bundle(s) / APK(s) -> Build APK(s)
    • توليد حزمة تثبيت الإصدار التجريبي مع التوقيع الافتراضي
    • مثال على المسار: "D:\AutoJs6\app\build\outputs\apk\debug\"
  • نسخة مطروحة (Release Version)
    • Build (بناء) -> Generate Signed Bundle / APK
    • اختيار خيار APK
    • قم بإعداد ملف التوقيع (تكوين جديد أو اختيار موجود)، وتوليد حزمة تثبيت الإصدار المطروح
    • مثال على المسار: "D:\AutoJs6\app\release\"

مرجع: Android Docs


مساعدة تطوير السكريبت


لتطوير سكربتات يمكن تشغيلها بواسطة AutoJs6، تحتاج إلى استخدام أدوات تطوير مناسبة:

إذا كنت بحاجة إلى كتابة وتصحيح السكربتات على الكمبيوتر الشخصي، يمكن لمكون VSCode الإضافي تحقيق الاتصال بين الكمبيوتر والهاتف:

أثناء كتابة الكود باستخدام أدوات التطوير، يمكن أن تساعد ميزة الإكمال التلقائي الذكية في إكمال الكود:

أثناء كتابة الكود، يمكن الرجوع إلى الوثائق التطبيقية لـ AutoJs6 والمعلومات حول استخدام API ذات الصلة:

مشاريع تطوير السكربتات الموجودة يمكن أن تكون مرجعًا وإلهامًا لإنشاء المشاريع الشخصية:


المشاركة بالإسهام


شكرًا لكل من ساهم في تطوير مشروع AutoJs6.

المساهمون عدد الإرساليات أحدث الإرساليات
kvii 1 2024/10/16
chenguangming 2 2024/05/14
LZX284 17 2023/11/19
TonyJiangWJ 4 2023/10/31
little‑alei 12 2023/07/12
aiselp 6 2023/06/14
LYS86 2 2023/06/03

تم تحديث البيانات في 23 October 2024.

تم تصنيف سجلات البيانات بترتيب تنازلي حسب أحدث الإرساليات.

طلبات السحب الجديدة غير المعالجة بعد، سيتم إدراجها في الإحصاءات بعد الدمج.

بعض المساهمين قد لا يظهرون بشكل صحيح في GitHub Contributors، سجلات إسهاماتهم قد تكون فارغة، لكن يمكن مراجعة سجلات الإسهامات عبر Pull Request.