Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso
Basato su piattaforma Qualcomm Snapdragon X Plus a 8 core, il nuovo Microsoft Surface Pro 12 è un notebook 2 in 1 molto compatto che punta sulla facilità di trasporto, sulla flessibilità d'uso nelle differenti configurazioni, sul funzionamento senza ventola e sull'ampia autonomia lontano dalla presa di corrente
Recensione REDMAGIC Astra Gaming Tablet: che spettacolo di tablet!
Recensione REDMAGIC Astra Gaming Tablet: che spettacolo di tablet!
Il REDMAGIC Astra Gaming Tablet rappresenta una rivoluzione nel gaming portatile, combinando un display OLED da 9,06 pollici a 165Hz con il potente Snapdragon 8 Elite e un innovativo sistema di raffreddamento Liquid Metal 2.0 in un form factor compatto da 370 grammi. Si posiziona come il tablet gaming più completo della categoria, offrendo un'esperienza di gioco senza compromessi in mobilità.
Dopo un mese, e 50 foto, cosa abbiamo capito della nuova Nintendo Switch 2
Dopo un mese, e 50 foto, cosa abbiamo capito della nuova Nintendo Switch 2
Dopo un mese di utilizzo intensivo e l'analisi di oltre 50 scatti, l'articolo offre una panoramica approfondita di Nintendo Switch 2. Vengono esaminate le caratteristiche che la definiscono, con un focus sulle nuove funzionalità e un riepilogo dettagliato delle specifiche tecniche che ne determinano le prestazioni
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-12-2014, 16:30   #1
I-Gamer
Senior Member
 
Iscritto dal: Jan 2010
Messaggi: 1084
[JAVA-ANDROID] Login Pagina WEB

Ciao a tutti!
Vorrei sapere se è possibile effettuare il login ad una pagina tramite applicazione android che va a "completare i campi".
Dovrebbe:
*se il login va a buon passare ad un'activity fine che visualizza la pagina a cui ci si è loggati
*fare un toast se non sono corretti i dati di login

Non posso lavorare sul server del sito in quanto è un servizio, né conosco che tipo di autenticazione usa.
So solo che mi interfaccio su una pagina [.php].

Grazie per l'aiuto!
__________________
Ho concluso positivamente con: Nicole Ridgway, Alphacyngni, ICER, gtv3000, holydio,MaxN, albert78, GTO286, subrahmanyam, Commanders, MarcoTechnofolle, master3000, nuvolona,xqtm,bruciato e altri
I-Gamer è offline   Rispondi citando il messaggio o parte di esso
Old 09-12-2014, 16:09   #2
sharkkk
Member
 
L'Avatar di sharkkk
 
Iscritto dal: Oct 2013
Messaggi: 158
Si può fare, ma dovresti conoscere a priori la struttura della pagina che contiene la form di login.
Se così fosse basta prendere i parametri da passare ad un ipotetico endpoint php.
Ad esempio http://www.hwupgrade.it/login.php?user=tuouser&pass=tuapassword , e funziona.


Se invece non conosci la struttura della pagina a priori, devi fare il parse di tutta la pagina, trovare la form,...ma a questo punto mi sorgono delle domande:
- se la form è in javascript per esempio?
- se ci sono più form all'interno della pagina come distingui la form giusta?
sharkkk è offline   Rispondi citando il messaggio o parte di esso
Old 09-12-2014, 17:45   #3
I-Gamer
Senior Member
 
Iscritto dal: Jan 2010
Messaggi: 1084
Quote:
Originariamente inviato da sharkkk Guarda i messaggi
Si può fare, ma dovresti conoscere a priori la struttura della pagina che contiene la form di login.
Se così fosse basta prendere i parametri da passare ad un ipotetico endpoint php.
Ad esempio http://www.hwupgrade.it/login.php?user=tuouser&pass=tuapassword , e funziona.


Se invece non conosci la struttura della pagina a priori, devi fare il parse di tutta la pagina, trovare la form,...ma a questo punto mi sorgono delle domande:
- se la form è in javascript per esempio?
- se ci sono più form all'interno della pagina come distingui la form giusta?
Innanzitutto grazie per la risposta!
Ispezionando la pagina ho visto che questo è il form:
<form id="formlogin" method="post" action="login.php">
Poi ci sono 3 campi da compilare:
<input type="hidden" name="custcode" value="asd" size="15">
<input type="hidden" name="login" value="yourUsername" size="15">
<input class="input_account idesk-force-focus" type="password" autocomplete="off" placeholder=" Password" name="password" value="" tabindex="3" style="width:95%;border-radius: 5px; border: 1px solid #aaaaaa; color: #ff0000; height: 30px; font-size: 16px; padding-left: 4px;">
E poi il bottone per inviare la richiesta:
<input type="submit" value="Conferma" class="btn_confirm">

Conoscendo in questo modo la struttura della pagina, si riesce a fare qualcosa?

Grazie ancora per l'aiuto!

EDIT: Ho provato a compilare l'URL come hai detto te con i "name" dei campi e i valori del mio account e funziona...
Come sarebbe il codice per inoltrare la richiesta alla pagina quindi?
E per ricevere la risposta nel caso non andasse il login (user/pssw sbagliati...)?

Grazie!!!
__________________
Ho concluso positivamente con: Nicole Ridgway, Alphacyngni, ICER, gtv3000, holydio,MaxN, albert78, GTO286, subrahmanyam, Commanders, MarcoTechnofolle, master3000, nuvolona,xqtm,bruciato e altri

Ultima modifica di I-Gamer : 09-12-2014 alle 17:51.
I-Gamer è offline   Rispondi citando il messaggio o parte di esso
Old 09-12-2014, 21:37   #4
sharkkk
Member
 
L'Avatar di sharkkk
 
Iscritto dal: Oct 2013
Messaggi: 158
certo che puoi, attraverso il DOM.

Il problema qual'e? che sviluppare un automatismo che fa il parse di una pagina (non conosciuta a priori) per trovare la form di login è un'incognita.

Cioè il tuo obbiettivo è quello di trovare la form di login, quindi i tag <form..> ... </form>, ma se il sito è fatto in flash quei tag non li vedrai mai, stessa cosa se la form è fatta in javascript.

Ora se il tuo obbiettivo è fare una cosa statica, dove tu hai una lista di siti prestabiliti su cui vuoi fare questa cosa, si può fare, ma non c'e da scrivere tanto codice, perche puoi fare uno switch, dove a seconda del servizio scelto, tu costruisci la stringa es. http://www.hwupgrade.it/login.php?us...ss=tuapassword e lo ridirezioni li (visto che conoscendo il sito a priori puoi costruire tu la stringa ad occhio, leggendo tu il codice html).

Se il tuo obbiettivo è una cosa dinamica, e quindi vuoi gestire tutti i possibili siti, allora c'e da scrivere un po di codice javascript e scorrendo il DOM capire dove si trova la form, trovare quella giusta, estrapolare i dati giusti.

Per gestire un login errato non saprei, è una bella domanda, avrei delle idee ma non so quanto "belle" sarebbero.
Dipende comunque dall'implementazione, lato server, del caso di login fallito.
C'e chi ti ridireziona in un'altra pagina, c'e chi ti da la notifica sulla pagina stessa (AJAX), ecc..



Ma la tua applicazione vuole essere una cosa che funziona universalmente o per un range di siti predefiniti?
sharkkk è offline   Rispondi citando il messaggio o parte di esso
Old 09-12-2014, 22:22   #5
I-Gamer
Senior Member
 
Iscritto dal: Jan 2010
Messaggi: 1084
Quote:
Originariamente inviato da sharkkk Guarda i messaggi
certo che puoi, attraverso il DOM.

Il problema qual'e? che sviluppare un automatismo che fa il parse di una pagina (non conosciuta a priori) per trovare la form di login è un'incognita.

Cioè il tuo obbiettivo è quello di trovare la form di login, quindi i tag <form..> ... </form>, ma se il sito è fatto in flash quei tag non li vedrai mai, stessa cosa se la form è fatta in javascript.

Ora se il tuo obbiettivo è fare una cosa statica, dove tu hai una lista di siti prestabiliti su cui vuoi fare questa cosa, si può fare, ma non c'e da scrivere tanto codice, perche puoi fare uno switch, dove a seconda del servizio scelto, tu costruisci la stringa es. http://www.hwupgrade.it/login.php?us...ss=tuapassword e lo ridirezioni li (visto che conoscendo il sito a priori puoi costruire tu la stringa ad occhio, leggendo tu il codice html).

Se il tuo obbiettivo è una cosa dinamica, e quindi vuoi gestire tutti i possibili siti, allora c'e da scrivere un po di codice javascript e scorrendo il DOM capire dove si trova la form, trovare quella giusta, estrapolare i dati giusti.

Per gestire un login errato non saprei, è una bella domanda, avrei delle idee ma non so quanto "belle" sarebbero.
Dipende comunque dall'implementazione, lato server, del caso di login fallito.
C'e chi ti ridireziona in un'altra pagina, c'e chi ti da la notifica sulla pagina stessa (AJAX), ecc..



Ma la tua applicazione vuole essere una cosa che funziona universalmente o per un range di siti predefiniti?
La mia applicazione deve funzionare per un unico sito web...

Quello che mi piacerebbe fare è salvare i dati di login in un account che crei sul dispositivo.
Esempio:
ACCOUNT 1
Username = user
Password = pssw

Ed associare un metodo di sblocco di android (pin, scorrimento, riconoscimento facciale) in modo che per accedere all'account non bisgona scrivere nè user nè password ma utilizzare questi metodi che sono più intuitivi.

Grazie ancora

Buona serata!
__________________
Ho concluso positivamente con: Nicole Ridgway, Alphacyngni, ICER, gtv3000, holydio,MaxN, albert78, GTO286, subrahmanyam, Commanders, MarcoTechnofolle, master3000, nuvolona,xqtm,bruciato e altri

Ultima modifica di I-Gamer : 09-12-2014 alle 23:04.
I-Gamer è offline   Rispondi citando il messaggio o parte di esso
Old 10-12-2014, 09:39   #6
Daniels118
Senior Member
 
L'Avatar di Daniels118
 
Iscritto dal: Jan 2014
Messaggi: 852
Il form che hai individuato esegue una post, ciò significa che non puoi passare i parametri tramite l'url. Per fare una post ci sono due possibilità:
1) Utilizzare le classi dedicate al protocollo http;
2) precompilare un form html e farlo sottomettere tramite il browser integrato.
Il primo metodo te lo sconsiglio perché poi sarebbe necessario iniettare i cookies di risposta all'interno del browser integrato, che è una cosa fattibile ma esageratamente complessa per il caso in questione.
Il secondo metodo è abbastanza semplice, basta che inserisci i dati di autenticazione nel form e lo fai caricare al browser integrato, poi tramite javascript lo sottometti (puoi inserire il codice javascript direttamente nell'html). Quando dico "inserisci i dati di autenticazione nel form" intendo dire che nell'applicazione scrivi una cosa tipo:
Codice:
String data = "<html>
  ...
  <form name='form1' method='post' action='http://.../login.php'>
    <input type='hidden' name='login" value='yourUsername' value='" +variabile_username +  "'>
    <input type='password' name='password' value='" +variabile_password + "'>
    ...
  </form>
  <script>
    //sottometti form1
  </script>
</html>";
Per caricarlo nel browser utilizzi WebView.loadDataWithBaseURL.
Ho volutamente omesso delle istruzioni per evidenziare i punti salienti.
Daniels118 è offline   Rispondi citando il messaggio o parte di esso
Old 13-12-2014, 18:34   #7
I-Gamer
Senior Member
 
Iscritto dal: Jan 2010
Messaggi: 1084
Grazie ragazzi,

sono riuscito a fare un'applicazione che sulla prima activity prende i dati di login e quando viene premuto il bottone di login spedisce i dati nella seconda activity con i quali fa il login nel sito (tramite URL) che viene visualizzato tramite webview!

@Daniels118 dato che con alcuni parametri non funziona mi potresti spiegare come funziona meglio il secondo metodo di cui parli?

Grazie!
__________________
Ho concluso positivamente con: Nicole Ridgway, Alphacyngni, ICER, gtv3000, holydio,MaxN, albert78, GTO286, subrahmanyam, Commanders, MarcoTechnofolle, master3000, nuvolona,xqtm,bruciato e altri

Ultima modifica di I-Gamer : 14-12-2014 alle 00:23.
I-Gamer è offline   Rispondi citando il messaggio o parte di esso
Old 14-12-2014, 09:22   #8
Daniels118
Senior Member
 
L'Avatar di Daniels118
 
Iscritto dal: Jan 2014
Messaggi: 852
Si tratta di caricare un form precompilato nel browser (webview) e sottometterlo, cos'è che non ti è chiaro?
Daniels118 è offline   Rispondi citando il messaggio o parte di esso
Old 15-12-2014, 22:45   #9
I-Gamer
Senior Member
 
Iscritto dal: Jan 2010
Messaggi: 1084
Quote:
Originariamente inviato da Daniels118 Guarda i messaggi
Si tratta di caricare un form precompilato nel browser (webview) e sottometterlo, cos'è che non ti è chiaro?
Niente, tutto ok

Grazie ancora a tutti!
__________________
Ho concluso positivamente con: Nicole Ridgway, Alphacyngni, ICER, gtv3000, holydio,MaxN, albert78, GTO286, subrahmanyam, Commanders, MarcoTechnofolle, master3000, nuvolona,xqtm,bruciato e altri
I-Gamer è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso Microsoft Surface Pro 12 è il 2 in 1 pi&u...
Recensione REDMAGIC Astra Gaming Tablet: che spettacolo di tablet! Recensione REDMAGIC Astra Gaming Tablet: che spe...
Dopo un mese, e 50 foto, cosa abbiamo capito della nuova Nintendo Switch 2 Dopo un mese, e 50 foto, cosa abbiamo capito del...
Gigabyte Aero X16 Copilot+ PC: tanta potenza non solo per l'IA Gigabyte Aero X16 Copilot+ PC: tanta potenza non...
vivo X200 FE: il top di gamma si è fatto tascabile? vivo X200 FE: il top di gamma si è fatto ...
Più o meno 300€ in tasca e voglia...
Boom di Linux: supera il 5% negli USA me...
Potere, violenza, sesso e avidità...
Gli effetti collaterali dei dazi di Trum...
ChatGPT Agent, la rivoluzione di Op...
Il motore elettrico a flusso assiale di ...
YouTube sta per cambiare faccia: in arri...
A breve Slack parlerà anche il ge...
RTX 5080 e altre GeForce in forte sconto...
Gabe Newell è in pensione, ma lav...
2 ASUS Vivobook in offerta: Ryzen o Core...
Dopo la Model YL, ecco la Tesla Model 3+...
Oral-B, c'è un kit da 2 spazzolini elet...
AirPods Pro 2 tornano a 199€, giù...
Jon Prosser nei guai con Apple! L'a...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 11:22.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v