无需在Android Studio中打开浏览器即可点击URL

时间:2017-02-17 09:59:45

标签: android iot ethernet

我看了很多地方,尝试了很多东西,但似乎没什么似乎对我有用。有人可以帮我这里。我有一个简单的网址,我想打不到在手机上打开浏览器。我点击一个按钮,该网址需要被点击,而不会打开浏览器。我不关心该页面上的内容我只想加载它。我基本上需要它为我的arduino和以太网盾IOT项目,其中我用我的Android手机控制我的设备。

以下是我正在做的事情的片段。 apk生成没有错误,但网址没有被点击。

谢谢你

public void led1on(View view){
      try {
        URL u = new URL("http://172.17.27.173/?2");
        HttpURLConnection http = (HttpURLConnection) u.openConnection();
        http.connect();
    }catch (Exception e){
        e.getMessage();
        e.printStackTrace();
    }
}

3 个答案:

答案 0 :(得分:3)

您可以将其称为Web服务,但不对结果执行任何操作。例如:

AsyncHttpClient client = new AsyncHttpClient();
client.get("http://172.17.27.173/yourpage", params, new AsyncHttpResponseHandler() {
    @Override
    public void onSuccess(String response) { // 200 OK
        // Do nothing
    }
    @Override
    public void onFailure(int statusCode, Throwable error, String content) { // Response not 200
    {
        // Some troubleshooting, etc.
    }
});

为了了解如何使用上述代码,您可以在这里看一下解释如何使用Android代码: http://loopj.com/android-async-http/

也可以使用其他一些库,例如Apache Http客户端: https://hc.apache.org/

try {
        DefaultHttpClient httpClient = new DefaultHttpClient();
        HttpPost httpPost = new HttpPost(url);

        HttpResponse httpResponse = httpClient.execute(httpPost);
        HttpEntity httpEntity = httpResponse.getEntity();
        myContent = httpEntity.getContent();

    } catch ...

答案 1 :(得分:0)

使用此方法在您的应用中打开网址

  

您可以像调用api一样调用此url,它会调用url而不显示任何内容。或者制作一个api(网络服务)并从应用程序中点击,然后在api端调用你的网址。

答案 2 :(得分:-1)

可以按照以下最简单的方式完成。

switchON.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String webID = "Your url to turn ON device";
            Intent bIntent = new Intent();
            bIntent.setAction(Intent.ACTION_VIEW);
            bIntent.addCategory(Intent.CATEGORY_BROWSABLE);
            bIntent.setData(Uri.parse(webID));
            startActivity(bIntent);
        }
    });