هل أنا داخل تطبيق (App Inventor / Kodular)؟
صحيح عندما يكون المشروع المُصدَّر مفتوحًا في WebViewer داخل App Inventor أو Kodular.
صدّر المشروع بصيغة HTML، وافتحه في WebViewer في Kodular أو MIT App Inventor، وتبادل الرسائل مع التطبيق: أحداث، وطلبات بردود، و TinyDB، وتنبيهات، واهتزاز، ومشاركة، والكثير غير ذلك.
في التطبيق: يستقبل الحدث WebViewer.WebViewStringChange ما يرسله المشروع (نص أو JSON). لإرسال شيء إلى المشروع، استخدم WebViewer.RunJavaScript("blocosiaApp('voltar')") أو غيّر الخاصية WebViewString. للرد على طلب: RunJavaScript("blocosiaApp.responder(ID, 'valor')"). في المحرر، استخدم "حاكِ إرسال التطبيق…" للاختبار. اطّلع على الوصفة الكاملة في الويكي.
لاستخدامها: في المحرر، انقر على "الإضافات" (في الزاوية السفلية) وأضف "التطبيق (Kodular / App Inventor)".
صحيح عندما يكون المشروع المُصدَّر مفتوحًا في WebViewer داخل App Inventor أو Kodular.
ترسل نصًا إلى التطبيق: يطلق الحدث WebViewer.WebViewStringChange.
ترسل حدثًا باسم مع بيانات بصيغة JSON: {"tipo":"evento","nome":…,"dados":…}.
تطلب من التطبيق ميزة من ميزات الهاتف: رسالة toast، اهتزاز، فتح رابط، مشاركة، نطق، نسخ، إشعار، إبقاء الشاشة مضاءة، الاتجاه، شاشة أخرى أو إغلاق.
ترسل طلبًا برقم (id) وتنتظر إجابة التطبيق (حتى 10 ثوانٍ). يجيب التطبيق بـ RunJavaScript("blocosiaApp.responder(id, value)").
الإجابة على آخر طلب.
صحيح إذا أجاب التطبيق على آخر طلب في الوقت المحدد.
تطلب من التطبيق تخزين قيمة في TinyDB (تبقى في الهاتف بعد إغلاق التطبيق).
تطلب من التطبيق وسم TinyDB وتنتظر؛ تذهب القيمة إلى "إجابة التطبيق".
تبدأ عندما يرسل التطبيق أي رسالة أو حدث.
تبدأ عندما يرسل التطبيق حدثًا بهذا الاسم (مثلًا back أو pause أو coin).
نص آخر رسالة وصلت من التطبيق.
اسم آخر حدث وصل.
بيانات آخر حدث (رقم أو نص أو قائمة أو كائن).
القيمة الحالية لخاصية WebViewString في التطبيق.
تقرأ معاملًا من عنوان الصفحة (مثلًا game.html?level=2 ← level = 2).
تتظاهر بأن التطبيق أرسل حدثًا: اختبر المشروع في المحرر دون هاتف.