Thursday 7 June 2012

LoginActivity.java


package com.qualcomm.QCARSamples.ImageTargets;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;

import oauth.signpost.http.HttpResponse;

import org.apache.http.HttpEntity;
import org.apache.http.HttpEntityEnclosingRequest;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpEntityEnclosingRequestBase;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.Toast;

public class LoginActivity extends Activity {
String URL = MainURL.URL + "login";
List<NameValuePair> pairs;
HttpClient client;
HttpPost post;
HttpResponse response;
EditText email, password;
String result;
JSONArray jArray;
String responseBody;
String[] items;
ProgressDialog dialog;
String[] u_id;
CheckBox remember;
SharedPreferences abc;
SharedPreferences.Editor editor;
public static final String PREFS = "Preferences";
String email_pref = null, password_pref = null;

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
email = (EditText) findViewById(R.id.email);
password = (EditText) findViewById(R.id.password);
remember = (CheckBox) findViewById(R.id.check_remember);
password.setText(null);
this.abc = getSharedPreferences(PREFS, 0);

email_pref = abc.getString("email", null);
password_pref = abc.getString("password", null);
email.setText(email_pref);
password.setText(password_pref);


//abc = this.getSharedPreferences("myPrefs", MODE_WORLD_WRITEABLE);
int height = getWindowManager().getDefaultDisplay().getHeight();
// ImageView logo = (ImageView) findViewById(R.id.logo);
// logo.setLayoutParams(new
// RelativeLayout.LayoutParams(getWindowManager()
// .getDefaultDisplay().getWidth(), height / 3));
Button signin = (Button) this.findViewById(R.id.signin);
Button signup = (Button) this.findViewById(R.id.signup);
signup.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(LoginActivity.this,
RegistrationActivity.class);
startActivity(intent);

}
});
signin.setOnClickListener(new OnClickListener() {
public void onClick(View v) {

if ((email.getText().length() == 0)
|| (password.getText().length() == 0)) {
Toast.makeText(getApplicationContext(),
"Email and Password is not Correct", 4000).show();
} else {
doLogin();

}
}
});

}

public void doLogin() {
dialog = ProgressDialog.show(this, "", "Loading Data ...Please Wait",
true);
double TIMEOUT_MILLISEC = 1234567890;

HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams,
(int) TIMEOUT_MILLISEC);
HttpConnectionParams.setSoTimeout(httpParams, (int) TIMEOUT_MILLISEC);
//
HttpParams p = new BasicHttpParams();
// p.setParameter("name", pvo.getName());
p.setParameter("email", email.getText().toString());
p.setParameter("password", password.getText().toString());

p.setParameter("key", "c89a7662dae613ea3d20d334339b6dff");
p.setParameter("Login", "Login");

// Instantiate an HttpClient
HttpClient httpclient = new DefaultHttpClient(p);

HttpPost httppost = new HttpPost(URL);

List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(4);
nameValuePairs.add(new BasicNameValuePair("email", email.getText()
.toString()));
nameValuePairs.add(new BasicNameValuePair("password", password
.getText().toString()));
nameValuePairs.add(new BasicNameValuePair("key",
"c89a7662dae613ea3d20d334339b6dff"));
nameValuePairs.add(new BasicNameValuePair("Login", "Login"));

try {
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
} catch (UnsupportedEncodingException e) { // TODO Auto-generated catch
;
}

ResponseHandler<String> responseHandler = new BasicResponseHandler();
try {
responseBody = httpclient.execute(httppost, responseHandler);
Log.e("aaaaaaaaaaaaaaaaaaaaaaaaa+++", responseBody.toString());
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
// int start = responseBody.indexOf("{");
// int end = responseBody.length();
// String result = responseBody.substring(start, end);
// // Toast.makeText(getApplicationContext(), result, 9000).show();
// String result1 = "[" + result.toString().trim() + "]";
//
int start = responseBody.indexOf("status");
int end = responseBody.length();
String result = responseBody.substring(start, end);
// Toast.makeText(getApplicationContext(), result, 9000).show();
String result1 = "[{" + '"' + result.toString().trim() + "]";

try {
jArray = new JSONArray(result1.toString());
} catch (JSONException e) {
Log.e("log_tag", "Error parsing data " + e.toString());
}

try {
items = new String[jArray.length()];
u_id = new String[1];

for (int i = 0; i < jArray.length(); i++) {

items[i] = jArray.getJSONObject(i).getString("status")
.toString();
Log.e("item", items[i]);
}
// Toast.makeText(getApplicationContext(), items[0],
// 4000).show();
} catch (JSONException e) {
Log.e("log_tag", "Error parsing data " + e.toString());
}
if (items[0].equalsIgnoreCase("OK")) {
if ((dialog.isShowing()))
dialog.dismiss();
try {
u_id[0] = jArray.getJSONObject(0).getString("u_id");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Constants.u_id=u_id[0];
Intent intent = new Intent(LoginActivity.this,
fbtwitterActivity.class);
intent.putExtra("u_id", u_id[0]);
startActivity(intent);

} else {
if ((dialog.isShowing()))
dialog.dismiss();
Toast.makeText(getApplicationContext(),
"enter proper username and password", 4000).show();
}
} catch (NullPointerException e) {
if ((dialog.isShowing()))
dialog.dismiss();
Toast.makeText(getApplicationContext(), "try after some time", 4000)
.show();
}
if (remember.isChecked() == true) {
this.abc = getSharedPreferences(PREFS, 0);
editor = abc.edit();
editor.putString("email", email.getText().toString());
editor.putString("password", password.getText()
.toString());
editor.commit();
}
}
}

No comments:

Post a Comment