サーブレットに接続することになっているAndroidアプリに単一のアクティビティがあります.2つのEditTextフィールドを作成し、editText_name.getText().toStringメソッドを介して2つの入力を取得します.しかし、アプリは入力をキャッチして出力することができませんLog.My コード スニペットは次のとおりです。
public class ServletActivity extends Activity {
Button button;
TextView outputText;
//public String URL = "http://10.0.2.2:8080/MyHL7Server /getPatientDetails?patientID";
public String PatientDataURL = "http://192.168.161.129:8080/MyHL7Server/getPatientDetails?patientID";
public String SensorListURL="http://192.168.161.129:8080/MyHL7Server/getSensorDetails?CenterID";
public String PatientInfo=new String();
public String SensorList=new String();
public String PatientIdInput=new String();
public String CenterIdInput=new String();
private ProgressDialog progressMessage;
int patientDataFlag,sensorDataFlag=0;
EditText PatientIdInputField;
EditText CenterIdInputField;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_servlet);
//final Button ConnectServerButton=(Button)findViewById(R.id.button2);
button = (Button) findViewById(R.id.button);
outputText = (TextView) findViewById(R.id.textView3);
PatientIdInputField=(EditText)findViewById(R.id.editText1);
CenterIdInputField=(EditText)findViewById(R.id.editText2);
PatientIdInput=PatientIdInputField.getText().toString();
CenterIdInput=CenterIdInputField.getText().toString();
Log.e("PatientIdInput is",PatientIdInput);
Log.e("CenterIdInput is",CenterIdInput);
System.out.println("Inside Servlet Activity");
Log.e("Testing","Servlet Activity");
;
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Log.e("Patient Id Input",PatientIdInput);
Log.e("CenterId Input",CenterIdInput);
PatientDataURL.concat("=").concat(PatientIdInput);
Log.e("Debug PatientDataURL created",PatientDataURL);
Log.e("Debug","Calling GetPatientDataTask");
GetPatientDataTask patientTask = new GetPatientDataTask();
patientTask.execute(new String[] { PatientDataURL });
Log.e("PatientData",PatientInfo);
Toast.makeText(getApplicationContext(),
"Patient data is : "+PatientInfo, Toast.LENGTH_LONG).show();
System.out.println("Patient Data Obtained "+PatientInfo);
}
});
}
アプリは AsyncTask を介してサーブレットに接続できますが、入力を行っても userinput フィールドが null のままであることに懸念があります。
誰でもこの問題に光を当てることができますか? AndroidManifest.xml ファイルで何か変更する必要がありますか?
どんな助けでも大歓迎です。