مورس
تطبيق بسيط تم إعداده للنص لتحويل مورس
تنزيل APK
متوفر في متجر Play قريبًا!




سمات
تم صنع مورس لتحويل أي نص معين إلى مورس.
الإخراج
يمكن للمستخدم تحديد استخدام مربعات الاختيار على الطريقة التي يريد بها إرسال Morse:
- النغمة: تتلاشى موجة لطيفة 440 هرتز داخل وخارج (إذا كان ذلك ممكنًا)
- فلاش: يتم استخدام فلاش كاميرا الجهاز لتبطيف ولكنه مشرق ومرئي
- الخلفية: خلفية التطبيق قادرة أيضًا على الوميض في السرعات الأسرع
تمزيق
يتوافق مورس مع جميع السرعات الأربعة التي يتم وضعها:
- 60 مللي ثانية
- 120 مللي ثانية
- 240 مللي ثانية
- 1200 مللي ثانية
(MS لكل DIT)
يتم دعم أبجدية مورس الدولية بأكملها ، ويتم التعامل مع كل خطاب غير مدعوم كمساحة.
(كما هو مدرج في إدخال ويكيبيديا الألماني: مورس تابيل)
واجهة المستخدم
يتميز مورس بواجهة مستخدم مبسطة إلى حد ما.
- حقل إدخال لكتابة نص واضح والذي سيتم تحويله
- 2 حقول نصية توضح الحالة والحرف الحالي ورمز مورس وفقًا
- شريط التقدم الذي يوضح تقدم مورس المستمر
- زر للبدء وإيقاف عملية التماس
- 3 مربعات اختيار لتحديد المخرجات:
- شريط تمرير لاختيار السرعة
- وحقل نص صغير أسفل شريط التمرير لعرض السرعة المحددة حاليًا في MS
يتكيف Morse أيضًا إذا تم استدعاء لوحة المفاتيح الناعمة ، على الرغم من أنه سيتم تعديل ذلك ، لأنه على بعض الأجهزة التي تحتوي على عناصر واجهة المستخدم الكبيرة أو على شاشة صغيرة ، ينتج عن ذلك مكونات متداخلة.
هيكل الكود
يتم تنفيذ معظم العمل ضمن النشاط الرئيسي ، ولكن العديد من المهام مثل إنشاء الصوت تتم إدارتها بواسطة فئات مختلفة.
المكتبات الصوتية:
يستخدم Morse مكتبتين مختلفتين في الوقت الحالي ، بسبب أداء بعضهما البعض بشكل أفضل في سرعات مختلفة.
- PerfectTune by Karlotoy أفضل في السرعات العالية
- تتميز نسخة خاصة بها من PerfectTune وبعض كود Stackoverflow بتلاشي وتتلاشى التأثير ولكنه يصفع كثيرًا في السرعات العالية.
- تم الاحتفاظ بمولد ثالث من Stackoverflow كمصدر للنسخة الخاصة ، ولكنه غير مستخدم حاليًا
المتغيرات الثابتة:
- علامة السلسلة: تستخدم لأغراض تصحيح الأخطاء والمسجلة
- int speedbar: السرعة الحالية المحددة من قبل المستخدم
- Boolean Active: إذا كانت عملية التقسيم نشطة حاليًا
- عامل الخيط: الموضوع الثاني لتمارين لعدم حبس واجهة المستخدم
- Boolean Flashavailable: يتم تعيينه في OnCreate () ، ويحدد ما إذا كان الجهاز يحتوي على فلاش متاح
- Boanean Boxflash: إذا تم التحقق من مربع الاختيار للفلاش
- Boolean Boxtone: إذا تم التحقق من مربع الاختيار للنغمة
- Boinbackground Boinsback: إذا تم التحقق من خانة الاختيار للخلفية
- CorrintLayout ConstrainLayout: إشارة ثابتة إلى ConstraintLayout لإدارتها من الموضوع الثاني
- سياق السياق: إشارة ثابتة إلى سياق النشاط الرئيسي
- فلاش منطقي: متغير تحديد ما إذا كان يجب أن يكون الفلاش قيد التشغيل ، واستخدامه أثناء الترويج ، ويتم معالجته بواسطة موضوع ثالث
- INT AREMRISSION_REQUEST_CAMERA: int ثابت لتحديده أثناء إجراء طلب الإذن
وظائف مهمة:
- onCreate: قم بإعداد الأشياء لأول مرة
- encodebuttonclick: تبدأ عملية التقسيم بأكملها بما في ذلك الخيط الثاني أو توقفه إذا كان هناك واحد يعمل
- مورس: الوظيفة العامة لإدارة عملية الترويج بأكملها ، تعود بشكل صحيح إذا انتهى مورس وكاذبة إذا تم إلغاء مورس
- updateinfo: beeing وظيفة بسيطة تسمى في الغالب من عملية التقسيم لتحديث واجهة المستخدم
خريطة رمز مورس
يتم حفظ رمز Morse بأكمله داخل خريطة كبيرة. هذا يجعل من السهل إدارة وتمكين طلب رمز MORSE لرسالة باستخدام morse.get (الحرف)
وظيفة encodebuttonclick:
تبدأ عملية الترتيب بأكملها بما في ذلك الخيط الثاني أو يوقفه إذا كان هناك واحد يعمل

هذه الوظيفة لها خطة بنية البرنامج متاحة! تنزيل PAP أو تنزيل/عرض PDF
وظيفة مورس
تعمل الوظيفة Morse كل شيء مثير للاهتمام وهو مهم جدًا ، لذلك يحصل على وصفه الخاص
- تم إنشاء عامل Camworker الخيط ، والذي سيدير تشغيل الفلاش لاحقًا ، لأن تشغيل الفلاش ويوقف على ما يبدو يستغرق بعض الوقت وسيؤدي إلى تعبئة التوقيت الدقيق لـ Morse.
- أولا للحلقة عمومًا تحلق Thourgh كل حرف من نص الإدخال
- إذا تحقق بيان ما إذا كانت الشخصية التالية تحتاج إلى تهديد خاص مثل المساحات أم لا
- إذا لم يكن الأمر كذلك ، فإنه يبدأ صغيرًا للحلقة لجمع رموز مورس للعرض
- الثانية لحلقات الحلقة من خلال كل قطعة من الحرف
- اعتمادًا على أنواع الإخراج المحددة ، يتم تنشيط المخرجات
- إما أن يتم تشغيل النغمة لوقت محدد أو إذا تم إلغاء تنشيط إخراج النغمة ، فإن نفس الطول بالضبط قد انتظر النحل
- يتم إيقاف تشغيل المخرجات المحددة مرة أخرى
- تم انتظار DIT الفارغ بين الإشارات القوية
- الوقت بين الحروف ينتظر النحل

هذه الوظيفة لها خطة بنية البرنامج متاحة! تنزيل PAP أو تنزيل/عرض PDF
أذونات
يحتاج Morse فقط إلى إذن للكاميرا لتنشيط الفلاش ، لكنه بالطبع يعمل بشكل جيد بدون فلاش إذا لم يحصل على الإذن بعد. يتم طلب إذن الكاميرا عند بدء التطبيق. مربع التحديد لـ Flash يخرج إذا كان الإذن مفقودًا أو إذا كان الجهاز يفتقر إلى فلاش.
ملفات XML
- STRINGS.xml: يتم تعريف نص الرسالة الافتراضي وتردد الصوت في HZ هنا
- colors.xml: يتم تعريف الألوان القياسية والألوان لعكس الخلفية والنص هنا
- Active_main.xml: ملف تخطيط قياسي للنشاط الرئيسي