0
Androidの電話アプリからPHPスクリプトにデータを投稿しようとしています。これは私が使用しているコードです。AndroidアプリからデータをPHPスクリプトに送信
public class Upload extends Activity implements OnClickListener {
EditText joke;
Button upload;
AlertDialog alertDialog = new AlertDialog.Builder(this).create();
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.upload);
}
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.bUpload:
uploadJoke();
break;
}
}
private void uploadJoke() {
// Create a new HttpClient and Post Header
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://xxxx/telejoke.php");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("username", "test"));
nameValuePairs.add(new BasicNameValuePair("joke", joke.getText().toString()));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
} catch (ClientProtocolException e) {
alertDialog.setTitle("Client Protocol Exception");
} catch (IOException e) {
alertDialog.setTitle("IOException");
}
}
}
私は私のアンドロイド携帯電話上でそれを実行しようとすると、しかし、それだけで予期しないエラーでクラッシュします。これで助けていただければ幸いです。
こんにちはmoesef、plzはあなたのエラーログを投稿しますので、私は変更を提案することができます –
あなたはメインスレッドでネットワーク操作を実行しています、新しいスレッドまたはAsyncTaskでネットワーク操作を移動することをお勧めします –
エラーには何かがありますAlertDialogと関連付けるAlertDialogをuploadJokeメソッドの中に移動すると、エラーが発生しますが、データがPHPスクリプトにポストされているとは思えません。 – moesef