Android 将发布数据发送到服务器

标签 android post

这可能是 Sending POST data in Android 的重复项

我使用此代码使用 android 将发布数据发送到服务器

public void postData() {
        // Create a new HttpClient and Post Header
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://www.mysite.com/android.php");

        try {
            // Add your data
            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
            nameValuePairs.add(new BasicNameValuePair("id", "12345"));
            nameValuePairs.add(new BasicNameValuePair("stringdata", "Hi"));
            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

            // Execute HTTP Post Request
            HttpResponse response = httpclient.execute(httppost);

        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
        } catch (IOException e) {
            // TODO Auto-generated catch block
        }
    } 

但是当我运行这个应用程序时它显示了这个错误

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.senddata/com.example.senddata.MainActivity}: android.os.NetworkOnMainThreadException

有什么问题吗?谁能帮忙?

最佳答案

尝试在 setContentView() 下面的 mainactivityactivity 中使用以下代码来避免 networkOnmainThread 异常..

if (android.os.Build.VERSION.SDK_INT > 9) {
                StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
                StrictMode.setThreadPolicy(policy);
            }

但是,在不阻塞主线程的情况下使用 AsyncTask 在后台线程中执行大量操作会很棒!

并引用此链接...

AsyncTask Android example

关于Android 将发布数据发送到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18425942/

相关文章:

android - 启动画面 react native 后的白屏

php - 如何在 php 中使用 post 请求保留文件名和扩展名?

html - 如何防止在表单发布后打开新窗口/标签

Android 应用内购买 : getPurchases returns empty response

android - 从android上传文件到wcf

android - 在 KSOAP2 请求中对 Android 中的 .NET web 服务进行身份验证

java - 单击“在 Eclipse 中运行”,但没有任何反应

post - 通过 HTTP POST 的 Paypal 付款 - 在移动网站上

mongodb - 使用 Eve REST API for MongoDB 时如何存储 native 时间戳类型数据?

php - 代理后面的 curl 发布文件返回错误