>
olá rafael, voa noite. Tenho um código no android que se conecta com um servidor usando a classe httpclient, porem tenho que usar esse fragmento de código para poder rodar a aplicação sem erro. O código que coloco é o seguinte:
if (android.os.Build.VERSION.SDK_INT > 9) {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}
Olá
Thadeu
Mas poque você deseja utilizar este procedimento?
é o seguinte, eu estou usando o seguinte código:
Minha activity login:
public class LoginActivity extends Activity {
//static final String URL = "URL";
static final String URL = "http://192.168.1.65/android/conexao.php";
EditText edtLogin, edtSenha;
Button btnLogar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
if (android.os.Build.VERSION.SDK_INT > 9) {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}
edtLogin = (EditText)findViewById(R.id.edtLogin);
edtSenha = (EditText)findViewById(R.id.edtSenha);
btnLogar = (Button)findViewById(R.id.btnLogar);
btnLogar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Starta a thread assíncrona a partir do AsyncTask
new LoadingAsync().execute();
}
});
}
private class LoadingAsync extends AsyncTask{
ProgressDialog loading = new ProgressDialog(LoginActivity.this);
/**
* Método chamado antes da thread principal.
* É o primeiro a ser executado.
*/
@Override
protected void onPreExecute() {
// Seta a mensagem de "Carregando..." recuperando-a do arquivo de "strings.xml"
loading.setMessage("Carregando...");
loading.show();
}
@Override
protected String doInBackground(Void... params) {
String login = edtLogin.getText().toString().trim();
String senha = edtSenha.getText().toString().trim();
String retorno = null;
XMLParser objetoXML = new XMLParser();
String xml = objetoXML.validarUsuario(URL, login, senha);
Log.i("login", login);
Log.i("senha", senha);
if(xml.equals("") || xml.equals(null)){
retorno = "não retornou";
}else{
Document doc = objetoXML.getDomElement(xml);
NodeList nl = doc.getElementsByTagName("item");
String codigo = "";
if(nl.getLength() > 0){
Element e = (Element) nl.item(0);
codigo = objetoXML.getValue(e, "codigo");
Intent intent = new Intent(LoginActivity.this, LutasActivity.class);
intent.putExtra("codigo", codigo);
startActivity(intent);
finish();
}else{
retorno = "não retornou";
}
}
return retorno;
}
/**
* Método executado ao final da thread principal
* É nele que são exibidas as mensagens de processamento final.
*/
@Override
protected void onPostExecute(String result) {
if (result != null) {
// Finaliza o loading...
loading.dismiss();
Toast.makeText(LoginActivity.this, "Usuário ou Senha Incorreto!!!", Toast.LENGTH_LONG).show();
}
}
}
}
ele só funciona quando coloco aquele fragmento de código