Sto provando a creare uno script di accesso per la mia applicazione Android, lo script invierà la mia email e password al server PHP, verificare l'accesso e quindi creare una sessione PHP in modo che il utente rimane connesso. Questo è il mio codice,Utilizzo di sessioni PHP con la mia applicazione Android per accedere
HttpPost httppost = new HttpPost("http://server.com/login.php");
// Create a new HttpClient and Post Header
HttpClient httpclient = new DefaultHttpClient();
public String login() {
String userID = "";
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("email", "[email protected]"));
nameValuePairs.add(new BasicNameValuePair("password", "admin"));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
userID = EntityUtils.toString(response.getEntity());
//Log.v("Login response", "" + userID);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
}
return userID;
}
Questo script invia correttamente i dati al mio server e il mio PHP registra con successo l'utente. Ho inserito "HttpClient httpclient = new DefaultHttpClient();" al di fuori del mio metodo di accesso principale. Ciò ha contribuito a memorizzare la sessione finché non richiama un'altra classe, quindi ripristina nuovamente la sessione. Quindi mi chiedo come posso modificare il codice in modo che "httpclient" sia in qualche modo memorizzato in modo da poter mantenere la sessione e rimanere connesso al mio server. Grazie!
Penso che si può salvare il sessionId in un 'SharedPreferences' e ogni volta che è necessario inviare una richiesta solo ottenere da lì – monim