Italian Ricevere comandi da pagina web

Paperinik

Member
Licensed User
Buonasera ragazzi,
devo fare un app che riproduca un brano musicale quando viene premuto un pulsante su una pagina web accessibile da internet che dovrò costruire io
Volendo ho anche la possibilità di installare il server http direttamente sul disopsitivo android.

Avete qualche spunto da darmi per capire come b4x possa ricevere comandi?
 

Star-Dust

Expert
Licensed User
Salve,

Perché proprio da una pagina web?
 

Star-Dust

Expert
Licensed User
vedi questo

e questo
 

Paperinik

Member
Licensed User
Ok grazie del materiale da studiare.
Solo una domanda prima di buttarmi nella lettura: dai titoli dei link che mi hai consigliato, vedo che parlano di come mettere su il server web che conterrà la pagina...ma nel sorgente android, come ricevo i dati dal server web? e se decidessi di usare uno spazio web su internet, posso comunque usare la stessa soluzione?
 

Star-Dust

Expert
Licensed User
Mi pare che hai specificato che nello smartphone vuoi accedere da chiunque dal browser... e così sarà.
perchè vorrei fosse accessibile da chiunque tramite uno smartphone ed un QR code...

Su uno spazio internet devi creare delle pagine web che contengono dei link di mp3 che si trovano sul web
 
Last edited:

Paperinik

Member
Licensed User
Su uno spazio internet devi creare delle pagine web che contengono dei link di mp3 che si trovano sul web
No, allora questa soluzione non va bene...l' mp3 deve essere riprodotto dal dispositivo android tramite l'app b4x che sto sviluppando.
 

Star-Dust

Expert
Licensed User
No, allora questa soluzione non va bene...l' mp3 deve essere riprodotto dal dispositivo android tramite l'app b4x che sto sviluppando.
Allora non ho capito cosa vuoi fare di preciso.

un pulsante su una pagina web accessibile da internet ...
Sembra che volevi dire che usavi il browser. Comunque puoi inserire una WebView nella tua app, oppure con okHttpUtils ricevere la pagina web nella tua app...


Comunque mi arrendo...
 

Paperinik

Member
Licensed User
Si, forse sono stato un po' sintetico. Provo a spiegarmi meglio:
sul dispositivo android ci sono alcuni file mp3 che devono essere riprodotti tramite dei pulsanti su una pagina web accessibile da internet.
L'app che sto sviluppando si trova sul dispositivo android e dovrà ricevere un comando dalla pagina web per avviare il brano scelto dalla pagina web (e fare anche altre cose).
okHTTPUtils l'ho già usato ma per recuperare dati da una pagina web. Nel mio caso credo che mi serva un server in ascolto su b4x che attenda il comando dalla pagina web...giusto? okHTTPUtils può fare anche questo?
 

Star-Dust

Expert
Licensed User
Quindi tu hai una pagina web. Qualcuno navigando in questa pagina (con un PC o dispositivo mobile e AndroidTv) clicca un brano musicale sulla pagina web e la musica non ti parte sulla pagina ma sull'app che è installata sul dispositivo.

Ho capito bene?
 

udg

Expert
Licensed User
Da quello che ho capito io, tutta l'azione avviene sul webserver ospitato in un hosting condiviso. L'utente va su una pagina (magari indirizzato da un QrCode), trova il quiz del giorno (o quel che è) e preme un tasto. A quel punto il webserver deve comunicare il "comando" opportuno al device dell'utente ,a bordo del quale si trovano già i file mp3 (probabilmente parte dell'apk).
All'OP interessa solo capire quale sia il metodo più valido per la comunicazione del comando da webserver a device Android.

Manca l'info su come venga identificato uno specifico device/utente.

Comunque, MQTT (un topic per ciascun utente), webservice sul device da chiamare da parte del webserver, FCM (stesso principio di MQTT, ma sullo sapzio condiviso non si può far giarre ilm realtivo sw B4J per l'invio comandi), semplice http(s) (o anche websocket) con protocollo ben definito di domanda-risposta tra le due parti.
 

LucaMs

Expert
Licensed User
L'utente va su una pagina
Manca l'info su come venga identificato uno specifico device/utente.
Non penso che un qualunque utente arrivi su quella pagina web (costruita da lui, spero) da un qualunque disposivito, ad esempio un pc, scelga un brano e questo debba poi essere mandato in esecuzione su un dispositivo Android... a caso. Suppongo che lui voglia usare un browser sul dispositivo Android e su questo stesso mettere in play il file mp3. O no?
 

Paperinik

Member
Licensed User
Suppongo che lui voglia usare un browser sul dispositivo Android e su questo stesso mettere in play il file mp3. O no?
No... oddio non credevo fosse così complicato
E' incredibile come sia difficile spiegarsi quando nella tua testa è una cosa semplice ed ometti quindi particolari importanti per renderlo comprensibile gli altri!!! :):):)
Semplifico al massimo il progetto in modo da farmi capire meglio. A me interessa trovare il modo per farlo, poi lo adatterò io alle mie necessità.

Avete presente quei progetti dove con arduino posso accendere un led via browser web con un pulsante su una pagina?

A me serve una cosa simile, solo che invece di arduino devo usare un dispositivo android ed invece del led devo far apparire una scritta sullo schemo (del dispositivo android) "Ciao mondo!"

1° domanda:
su quei progetti la pagina web è ospitata direttamente su arduino. credo che dovrò fare lo stesso sul dispositivo android con b4x...quale libreria uso?
httpserver?

2° domanda:
c'è un modo per ospitare la pagina sui server su internet piuttosto che sul dispositivo android ed avere le stesse funzionalita?
 

Star-Dust

Expert
Licensed User
Non è meglio che lo fai con Arduino ? 😂 😂 😂 😂
 

udg

Expert
Licensed User
Tra domanda1 e domanda2 , per quanto mi riguarda, si ripropone la confusione che sembrava risolta con l'esempio-arduino.
Partiamo da questo:
Hai un arduino, sulla sua intercaccia web mostri un tasto, da un PC della rete (o grazie alla NAT dall'esterno) visualizzi la pagina, premi il tasto e l'arduino reagisce accendendo il led. Tutto avviene sull'arduino.

Domanda1: cosa uso per attivare un webserver sul device android in modo che conoscendone l'IP (o tramite router) da un secondo device possa visualizzare una pagina (del primo device) su cui ci sia un tasto che mi permetta di mandare (sempre sul primo device) in esecuzione un mp3? (qui uno spunto e qui un altro)

Domanda2 (e scatta per me la confusione): come realizzo una pagina su un webserver raggiungibile da chiunque, su cui mostro un tasto che, premuto, faccia suonare un mp3 sul device android di chi ha premuto il tasto? Già se fosse su un unico specifico device..ma lo farebbe suonare chiunque...
 
Last edited:

LucaMs

Expert
Licensed User
Avete presente quei progetti dove con arduino posso accendere un led via browser web con un pulsante su una pagina?
No 🤤

1° domanda:
su quei progetti la pagina web è ospitata direttamente su arduino. credo che dovrò fare lo stesso sul dispositivo android con b4x...quale libreria uso?
httpserver?
Quindi su ardurino hai un server web, altrimenti non è così. Se al posto di Arduino+suo server web vuoi un Android+suo server web:
https://www.b4x.com/android/forum/threads/embed-an-http-server-in-your-android-application.25984/

2° domanda:
c'è un modo per ospitare la pagina sui server su internet piuttosto che sul dispositivo android ed avere le stesse funzionalita?
Mi arrendo.gif
 

Star-Dust

Expert
Licensed User
Quindi tu hai una pagina web. Qualcuno navigando in questa pagina (con un PC o dispositivo mobile e AndroidTv) clicca un brano musicale sulla pagina web e la musica non ti parte sulla pagina ma sull'app che è installata sul dispositivo.

Ho capito bene?
Credo che voglia dire proprio questo, il sito web dovrebbe essere una sorta di telecomando per avviare brani musicali sul suo dispositivo mobile. Clicca il bottone per selezionare il brano audio dalla pagina web e lo esegue nel telefonino.

Comunque se lo scrivevi in inglese lo avremmo capito prima
 
Last edited:

LucaMs

Expert
Licensed User
Pera d'arte:

1605617878713.png


Così? Non dovrebbe essere difficile. Tu crei la pagina web (quella dedicata a Lucio Battisti :)), la pubblichi dove vuoi, la tua app ha uno scanner ed un player musicale.



[Che poi Paperinik farebbe prima: ruberebbe direttamente i sorgenti]
 

Paperinik

Member
Licensed User
Così? Non dovrebbe essere difficile. Tu crei la pagina web (quella dedicata a Lucio Battisti :)), la pubblichi dove vuoi, la tua app ha uno scanner ed un player musicale.
no!!!!!!
pensa che mi stavo attrezzando per fare il disegno!!! :p
Ecco qua la mia di opera d'arte

Schema app.jpg


Così si capisce???

Che poi la mia app non deve solo riprodurre una musica, ma accendere delle luci tramite arduino collegato con la seriale e fare altre cose...
Vabbe, il resto l'ho già sviluppato mi manca solo la parte web.



Quindi su ardurino hai un server web, altrimenti non è così. Se al posto di Arduino+suo server web vuoi un Android+suo server web:
https://www.b4x.com/android/forum/threads/embed-an-http-server-in-your-android-application.25984/
Credo che questa sia l'unica soluzione...



[Che poi Paperinik farebbe prima: ruberebbe direttamente i sorgenti]
Questa invece non l'ho capita...🤔
 
Top