帮助我..下面代码中的JSON事情有问题。无法解析到php文件..安卓应用程序与phpmyadmin @ MySQL服务器链接....使用php文件。这使用TextView发送数据。数据从其他页面传递。并在下面的textview中保存它。但是数据想要发送。 JSON不起作用,我创建的应用程序停止并检测到故障应用程序。我的PHP文件没有问题,但在这段代码中,我不知道什么问题..它没有达到尝试功能我认为..只是需要帮助我从这个应用程序插入数据到MySQL服务器使用PHP文件。
@Override
protected void onPreExecute() {
super.onPreExecute();
pDialog = new ProgressDialog(MainActivity3.this);
pDialog.setMessage("Sending Aduan....");
pDialog.setIndeterminate(false);
pDialog.setCancelable(true);
pDialog.show();
}
protected String doInBackground(String... args) {
String nama = txtView1.getText().toString();
String alamat = txtView2.getText().toString();
String no_ic = txtView3.getText().toString();
String mobile = txtView4.getText().toString();
String telefon = txtView5.getText().toString();
String email = txtView6.getText().toString();
String kenyataan = txtView7.getText().toString();
String pelaksana = txtView8.getText().toString();
String lokasi = txtView9.getText().toString();
String daerah = txtView10.getText().toString();
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("nama", nama));
params.add(new BasicNameValuePair("alamat", alamat));
params.add(new BasicNameValuePair("no_ic", no_ic));
params.add(new BasicNameValuePair("mobile", mobile));
params.add(new BasicNameValuePair("telefon", telefon));
params.add(new BasicNameValuePair("email", email));
params.add(new BasicNameValuePair("kenyataan", kenyataan));
params.add(new BasicNameValuePair("pelaksana", pelaksana));
params.add(new BasicNameValuePair("daerah", daerah));
params.add(new BasicNameValuePair("lokasi", lokasi));
JSONObject json = jsonParser.makeHttpRequest(url_create_aduan,"POST", params);
Log.e("Create Response", json.toString());
try {
int success = json.getInt(TAG_SUCCESS);
if (success == 1) {
Intent i = new Intent(getApplicationContext(),Rujukan.class);
startActivity(i);
finish();
} else {
}
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
protected void onPostExecute(String file_url) {
pDialog.dismiss();
}
}
答案 0 :(得分:0)
问题:
您正尝试使用doInBackground
的{{1}}方法执行与UI相关的任务。
解决方案:
因为无法从UI线程访问UI元素,所以将所有项目从AsyncTask
移至doInBackground
和onPreExecute
,如下所示:
onPostExecute