public void mOnClick(View v) { // 로그인 버튼을 눌렀을 때의 동작 정의
// 아이디와 패스워드 입력 값 불러오기
TextView ID = (TextView) findViewById(R.id.EditId);
TextView PW = (TextView) findViewById(R.id.EditPW);
String id = ID.getText().toString();
String pw = PW.getText().toString();
String URL = "---" + "/" + id + "/" + pw + "/"
+ "---.txt";
DownloadThread dThread = new DownloadThread(URL, mSdPath
+ "/passkeeper/auth/---.txt");
dThread.start();
try {
FileInputStream fis = new FileInputStream(mSdPath
+ "/passkeeper/auth/---.txt");
byte[] data = new byte[fis.available()];
while (fis.read(data) != -1) {
;
}
if (new String(data).equals(---)) {
Intent intent = new Intent(this, PasswordListActivity.class);
startActivity(intent);
Toast.makeText(LoginActivity.this, "로그인을 성공했습니다.",
Toast.LENGTH_LONG).show();
}
fis.close();
} catch (FileNotFoundException e) {
Toast.makeText(LoginActivity.this, "인증 과정에서 오류가 발생했습니다.",
Toast.LENGTH_LONG).show();
} catch (Exception e) {
;
}
}
텍스트뷰에 ID와 비밀번호를 입력하면 그에 따른 URL에서 인증 정보가 들어있는 텍스트 파일을 다운로드하고,
파일의 값을 읽어 일치하면 다음 액티비티로 넘어가는 앱입니다.
파일이 미리 다운로드되어있는 경우(두번째 실행 등의) 한번만 눌러도 잘 실행되는데(로그인버튼을)
파일이 없어서 다운로드후 일치여부를 확인할 때는 꼭 버튼을 두번 눌러야 다음액티비티로 넘어갑니다.
처리속도가 느린 것이 아니고 두번을 눌러야먄 되더군요... 왜 그런지 도저히 모르겠습니다ㅠㅠ