2017-08-26 50 views
0

我想在android中发出http请求。为什么不能在android中进行http请求?

try { 
    URL u = new URL("http://www.google.com"); 
    HttpURLConnection c = (HttpURLConnection)u.openConnection(); 
    c.connect(); 
} 
catch (Exception e) { 
    Log.v(TAG, "Error is " + e.getMessage()); 
} 

这是我的代码,当我在这里检查日志时是“错误为空”。 注意!我使用权限:android.permission INTERNET和android.permission.ACCESS_NETWORK_STATE。 我认为我没有错误,但我的应用程序无法提出请求。

有谁知道什么可能是问题?

+0

我已经看过每一个帖子,但问题仍然没有解决。 我在Netbeans中编写了桌面应用程序,我的代码在这里工作得很好! – Mathew

+0

您是否尝试添加断点来查看异常情况?你检查过文件吗? –

+0

如果我注释行“c.connect();”我不会有错,但这不是好的方法。 我不明白什么是问题。 – Mathew

回答

0

尝试使用此代码:

public class MainActivity extends AppCompatActivity implements View.OnClickListener { 

    private Button btn; 
    @Override 
    protected void onCreate(@Nullable Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     btn=(Button)findViewById(R.id.button); 
     btn.setOnClickListener(this); 

    } 
    public void onClick(View v) { 

     new MyAsyncTask().execute("lol"); 
    } 
    private class MyAsyncTask extends AsyncTask<String, Integer, Double> { 


     @Override 
     protected Double doInBackground(String... params) { 
      // TODO Auto-generated method stub 


      try { 
       URL u = new URL("http://www.sahdeepsingh.com"); 
       HttpURLConnection c = (HttpURLConnection)u.openConnection(); 
       c.connect(); 

      } 
      catch (Exception e) { 
       Log.v("TAG", "Error is " + e.getMessage()); 
      } 
      return null; 
     } 
    } 
} 

,你会看到连接的android箴言报。

+0

我试过,但没有奏效。 – Mathew

+1

@Mathew你使用异步方法吗? –

+0

我是Android新手,所以我没有任何答案。 你能解释一下如何使用这种方法吗? – Mathew

相关问题