Dificuldades ao consumir recursos do web service Php+MySQL num App Android

13/12/2018

3

Olá a todos!
Sou iniciante em desenvolvimento de aplicações móveis, e tenho que apresentar um projecto web e um App que consome os recursos da minha aplicação web... acompanhei uma serie de videos que ensina a construir o App, mas quando executo, meu App para. Preciso de ajuda por favor... abaixo está o código que estou usando:

package com.example.evandro.pdc_plusao;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import org.json.JSONArray;

import java.io.DataOutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Scanner;

public class Login extends AppCompatActivity {
private TextView bt_login;
private EditText input_username, input_senha;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);

input_username = (EditText)findViewById(R.id.input_username_login);
input_senha = (EditText)findViewById(R.id.input_senha_login);




bt_login = (TextView)findViewById(R.id.bt_login);
bt_login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Thread tr = new Thread(){
@Override
public void run() {
final String res = enviarPost(input_username.getText().toString());
runOnUiThread(new Runnable() {
@Override
public void run() {
int r = objJSON(res);
if (r > 0){
Intent intent = new Intent(Login.this, Index.class);
startActivity(intent);
}else {
Toast.makeText(getApplicationContext(), "Credênciais incorreta", Toast.LENGTH_SHORT).show();
}
}
});
}
};
tr.start();
}
});
}

public String enviarPost(String username){
String parametros = "nome_utilizador="+username;
String resposta = "";
try {
URL url = new URL("http://192.168.1.2/pplus/getagente");
HttpURLConnection connection = (HttpURLConnection)url.openConnection();

connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Length", ""+Integer.toString(parametros.getBytes().length));

connection.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(connection.getOutputStream());
wr.writeBytes(parametros);
wr.close();

Scanner inStream = new Scanner(connection.getInputStream());

while (inStream.hasNextLine()){
resposta += (inStream.nextLine());
}
}catch (Exception e){}
return resposta.toString();
}
public int objJSON(String resposta){
try {
JSONArray json = new JSONArray(resposta);
if (json.length() > 0)
return 1;
}catch (Exception e){}
return 0;
}
}

Pelo que agradeço.
Responder