java - httppost 导致应用程序崩溃

标签 java android android-studio

我正在尝试通过 android studio 中的 java 将发布请求发送到我的 PHP 页面

首先我尝试了 httppost,但按下该键后应用程序崩溃了

然后我读到我必须使用新线程,我这样做了,但仍然

应用程序崩溃

代码如下:

 public void send () {
    final String name,phone,fb;
    EditText one,two,three;
    one=(EditText) findViewById(R.id.editText);
    two=(EditText) findViewById(R.id.editText2);
    three=(EditText) findViewById(R.id.editText3);
    name=one.getText().toString();
    phone=two.getText().toString();
    fb=three.getText().toString();
    Thread T=new Thread(new Runnable() {
        @Override
        public void run() {
            HttpClient httpclient = new DefaultHttpClient();
            HttpPost httppost = new HttpPost("http://test.com/test.php");
            try {
                List <NameValuePair> nameValuePairs= new ArrayList<NameValuePair>(2);
                nameValuePairs.add(new BasicNameValuePair("name",name));
                nameValuePairs.add(new BasicNameValuePair("number",phone));
                nameValuePairs.add(new BasicNameValuePair("fbname",fb));
                httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                HttpResponse response= httpclient.execute(httppost);

            } catch (ClientProtocolException e) {
                // TODO Auto-generated catch block
            } catch (IOException e) {
                // TODO Auto-generated catch block
            }
        }
    });
    T.start();
}

日志:http://pastebin.com/KQ9Y3rrG

最佳答案

确保您拥有在 list 文件中设置的与互联网通信的权限。否则,它将抛出 SecurityException 并破坏您的应用。

<uses-permission android:name="android.permission.INTERNET" /> 

除此之外,我在您的日志中看不到任何可能导致异常的内容。

更新

检查用户提供的代码后,问题出在 onClick 事件本应触发 send() 方法,但在不知不觉中定义了它所需的 View v 参数。

解决方案(对于这个问题,这并不意味着它会让 httppost 工作)很简单,就是将参数添加到方法的定义中:

public void send (View v) {

关于java - httppost 导致应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29859439/

相关文章:

java - 如何将Java对象发送到java中的两个mxml文件之间?

java - 检查 MethodDeclaration 是否类似于 IMethod

android - Proguard 返回错误代码 1。请参阅控制台

android - android sdk 位置不能位于文件系统根目录

更新到 v 3.0 后 Android Studio 构建错误

java - JSF 页面在多次重新加载时卡住

java - 数据库记录被其他应用程序更改后,hibernate 查询无法获得正确的结果

android - 了解 View.drawableStateChanged

android - 如何在没有 'onLocationChange' 方法的情况下知道 GPS 位置

android - OpenGL ES 2.0 方法的 Javadoc 注释源文件