2017-02-17 16 views
0

私は多くの場所を見てきましたが、何かを試しましたが、何とか私のために働くようには見えません。誰でもここで私を助けてくれますか?私は携帯電話でブラウザを開くことなくヒットしたい簡単なURLを持っています。私はボタンをクリックしており、ブラウザは開かずにURLをヒットする必要があります。私はそのページに何があるのか​​心配していないだけです。私は基本的に私のarduino cumイーサネットシールドIOTプロジェクトのためにそれを必要とします、私は私のAndroid携帯電話で私のアプライアンスを制御しています。Androidスタジオでブラウザを開かずにURLを入力してください

ここでは、私がやっていることの抜粋です。 apkはエラーなしで生成されていますが、URLは何とかヒットしません。

ありがとう

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(); 
    } 
} 
+0

マニフェストに「インターネット」権限がありますか?このメソッドを 'AyncTask'または' Thread'の中で呼び出していますか? –

+0

**何も動作しないように見える** - それはどういう意味ですか?エラー/例外は何ですか? –

+0

はい私はインターネットのアクセス許可を追加しました。私はただボタンを押していて、onClickを追加してこの関数を参照しました。私はそれを正しく実装することを願っています。 –

答えて

0

アプリケーション内でURLを開くには、このメソッドを使用します

あなたはそれが任意のディスプレイなしのURLを呼び出して、あなたのAPI呼び出しのように、このURLを呼び出すことができます。または、api(Webサービス)を作成し、アプリケーションからヒットし、api endでURLを呼び出します。

+0

うんんん、あなたが言ったことを読むことができる場所からのリンクに私をリダイレクトしてもらえますか、それとも私が正しく理解できるように、同じコードを少し書くことさえできますか?ありがとう –

1

これを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 ... 
+0

私はこれを信じて、AsyncHttpClientの依存関係を追加する必要があります。うーん私は多くのアンドロイドスタジオの周りに私の頭をラップしていない。どうやってここで私を助けてくれるの? –

+0

ありがとう、それは私の目的を解決しました。私はこの質問の中で私が欲しいものを達成しました。 –

+0

問題ありません。私はコードの使い方についてさらに説明しました。 – Mehdi

-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); 
     } 
    }); 
+0

なぜdownvote?その働き。私はそれを試した。 –

関連する問題