Kodular और App Inventor ऐप्स से बात करें
HTML के रूप में एक्सपोर्ट करें, उसे WebViewer में खोलें और ऐप के साथ इवेंट, अनुरोध और डेटा का आदान-प्रदान करें।
तैयारी
- ऐप (Kodular / App Inventor) एक्सटेंशन जोड़ें और अपना प्रोजेक्ट प्रोग्राम करें।
- HTML के रूप में एक्सपोर्ट करें (Pro प्लान) और फ़ाइल को ऐप के Media में रखें (या किसी https पते पर)।
- ऐप में पेज के साथ एक WebViewer का उपयोग करें:
file:///android_asset/game.html(App Inventor) या Kodular में मीडिया का पथ। आप पैरामीटर भी भेज सकते हैं:game.html?level=2।
प्रोजेक्ट → ऐप
- ऐप को टेक्स्ट … भेजो और इवेंट … डेटा … के साथ भेजो WebViewer.WebViewStringChange इवेंट चलाते हैं।
valueप्रॉपर्टी पढ़ें (टेक्स्ट या JSON)। - JSON प्रारूप:
{"tipo":"evento","nome":"points","dados":10},{"tipo":"acao","acao":"toast","valor":"Hi"}और{"tipo":"pedido","id":3,"nome":"tinydb_ler","dados":{"tag":"record"}}। - ऐप में टेक्स्ट को डिक्शनरी में बदलें (JsonTextDecode / make dictionary from JSON) और tipo और acao के अनुसार चुनें कि क्या करना है:
toast,vibrar,abrir_link,compartilhar,falar,copiar,notificacao,tela_ligada,orientacao,abrir_tela,fechar,tinydb_salvar।
ऐप → प्रोजेक्ट
- WebViewer.RunJavaScript (App Inventor) या Evaluate JavaScript (Kodular):
blocosiaApp('back')याblocosiaApp('coin', 5)जब ऐप इवेंट … भेजे को चलाते हैं। - किसी अनुरोध का जवाब देने के लिए:
blocosiaApp.responder(3, 'value')(वही id उपयोग करें)। - या WebViewString प्रॉपर्टी बदलें: सादा टेक्स्ट संदेश बन जाता है;
{"nome":"x","dados":1}इवेंट बन जाता है;{"resposta":3,"valor":…}किसी अनुरोध का जवाब देता है।
सुझाव
- फ़ोन का Back बटन: Screen.BackPressed में
blocosiaApp('back')कॉल करें और प्रोजेक्ट में उसे संभालें। - एडिटर में कोई ऐप नहीं होता: टेस्ट करने के लिए ऐप द्वारा इवेंट … भेजने का अनुकरण करो का उपयोग करें।
- क्या मैं किसी ऐप के अंदर हूँ? उन बटनों को छिपाने में मदद करता है जो सिर्फ़ फ़ोन पर काम के हैं।