私はこのサイトに不慣れで、Android プログラミングも初めてなので、少し辛抱強く待つ必要があります。mysql データベースに接続するアプリを起動しましたが、asynctask が起動せず、アプリがクラスの直前で停止し、その理由が本当にわかりません。それで、私を助けてもらえますか?これは私のコードです:
public class Logar extends Activity {
EditText etUsuario, etSenha;
Button btLogin;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.logar);
etUsuario=(EditText) findViewById(R.id.editUsuario);
etSenha=(EditText) findViewById(R.id.editSenha);
btLogin=(Button) findViewById(R.id.button1);
btLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.i("logar", "entrou no evento");
ArrayList<NameValuePair> parametrosPost = new ArrayList<NameValuePair>();
parametrosPost.add(new BasicNameValuePair("usuario",etUsuario.getText().toString()));
parametrosPost.add(new BasicNameValuePair("senha",etSenha.getText().toString()));
Log.i("logar", "parametrosPost.add");
}
class LoginTask extends AsyncTask<Void,Void,Void>{
ArrayList<NameValuePair> parametrosPost = new ArrayList<NameValuePair>();
String urlPost="http://192.168.1.131/android/logar.php";
String urlGet="http://192.168.1.131/android/logar.php?usuario="+etUsuario.getText().toString()+"&senha="+etSenha.getText().toString();
String respostaRetornada = null;
@Override
protected Void doInBackground(Void... args){
Log.i("logar", "vai entrar no try");
try {
respostaRetornada = ConexaoHttpClient.executaHttpPost(urlPost, parametrosPost);
//respostaRetornada = ConexaoHttpClient.executaHttpGet(urlGet);
String resposta = respostaRetornada.toString();
Log.i("logar", "resposta = "+resposta);
resposta = resposta.replaceAll("\\s+", "");
if (resposta.equals("1"))
startActivity(new Intent(Logar.this,MenuPrincipal.class));
//mensagemExibir("Login", "Usuario Válido PARABÉNS ");
else
mensagemExibir("Login", "Usuario Inválido ????");
}
catch(Exception erro)
{
Log.i("erro", "erro = "+erro);
Toast.makeText(Logar.this, "Erro.: "+erro, Toast.LENGTH_LONG).show();
}
return null;
}
}
public void mensagemExibir(String titulo, String texto)
{
AlertDialog.Builder mensagem = new AlertDialog.Builder(Logar.this);
mensagem.setTitle(titulo);
mensagem.setMessage(texto);
mensagem.setNeutralButton("OK",null);
mensagem.show();
}
});
}
}
私はすべての助けに感謝します。ありがとうございました。