Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class MainActivity extends ActionBarActivity {
- protected EditText username;
- private EditText password;
- protected String enteredUsername;
- private final String serverUrl = "http://192.168.0.103/androidlogin/index.php";
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- username = (EditText)findViewById(R.id.username_field);
- password = (EditText)findViewById(R.id.password_field);
- Button loginButton = (Button)findViewById(R.id.login);
- Button registerButton = (Button)findViewById(R.id.register_button);
- loginButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- enteredUsername = username.getText().toString();
- String enteredPassword = password.getText().toString();
- if(enteredUsername.equals("") || enteredPassword.equals("")){
- Toast.makeText(MainActivity.this, "Username or password must be filled", Toast.LENGTH_LONG).show();
- return;
- }
- if(enteredUsername.length() <= 1 || enteredPassword.length() <= 1){
- Toast.makeText(MainActivity.this, "Username or password length must be greater than one", Toast.LENGTH_LONG).show();
- return;
- }
- // request authentication with remote server4
- AsyncDataClass asyncRequestObject = new AsyncDataClass();
- asyncRequestObject.execute(serverUrl, enteredUsername, enteredPassword);
- }
- });
- registerButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Intent intent = new Intent(MainActivity.this, RegisterActivity.class);
- startActivity(intent);
- }
- });
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- // Inflate the menu; this adds items to the action bar if it is present.
- getMenuInflater().inflate(R.menu.menu_main, menu);
- return true;
- }
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- // Handle action bar item clicks here. The action bar will
- // automatically handle clicks on the Home/Up button, so long
- // as you specify a parent activity in AndroidManifest.xml.
- int id = item.getItemId();
- //noinspection SimplifiableIfStatement
- if (id == R.id.action_settings) {
- return true;
- }
- return super.onOptionsItemSelected(item);
- }
- private class AsyncDataClass extends AsyncTask<String, Void, String> {
- @Override
- protected String doInBackground(String... params) {
- HttpParams httpParameters = new BasicHttpParams();
- HttpConnectionParams.setConnectionTimeout(httpParameters, 5000);
- HttpConnectionParams.setSoTimeout(httpParameters, 5000);
- HttpClient httpClient = new DefaultHttpClient(httpParameters);
- HttpPost httpPost = new HttpPost(params[0]);
- String jsonResult = "";
- try {
- List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
- nameValuePairs.add(new BasicNameValuePair("username", params[1]));
- nameValuePairs.add(new BasicNameValuePair("password", params[2]));
- httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
- HttpResponse response = httpClient.execute(httpPost);
- jsonResult = inputStreamToString(response.getEntity().getContent()).toString();
- } catch (ClientProtocolException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }
- return jsonResult;
- }
- @Override
- protected void onPreExecute() {
- super.onPreExecute();
- }
- @Override
- protected void onPostExecute(String result) {
- super.onPostExecute(result);
- System.out.println("Resulted Value: " + result);
- if(result.equals("") || result == null){
- Toast.makeText(MainActivity.this, "Server connection failed", Toast.LENGTH_LONG).show();
- return;
- }
- int jsonResult = returnParsedJsonObject(result);
- if(jsonResult == 0){
- Toast.makeText(MainActivity.this, "Invalid username or password", Toast.LENGTH_LONG).show();
- return;
- }
- if(jsonResult == 1){
- Intent intent = new Intent(MainActivity.this, LoginActivity.class);
- intent.putExtra("USERNAME", enteredUsername);
- intent.putExtra("MESSAGE", "You have been successfully login");
- startActivity(intent);
- }
- }
- private StringBuilder inputStreamToString(InputStream is) {
- String rLine = "";
- StringBuilder answer = new StringBuilder();
- BufferedReader br = new BufferedReader(new InputStreamReader(is));
- try {
- while ((rLine = br.readLine()) != null) {
- answer.append(rLine);
- }
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return answer;
- }
- }
- private int returnParsedJsonObject(String result){
- JSONObject resultObject = null;
- int returnedResult = 0;
- try {
- resultObject = new JSONObject(result);
- returnedResult = resultObject.getInt("success");
- } catch (JSONException e) {
- e.printStackTrace();
- }
- return returnedResult;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement