Android App To Command Arduino+Esp8266 Spider Web Connected Led

Posted on

It’s a Android app connect to Arduino Due + ESP8266 WiFi module spider web server (in my simply about other spider web log arduino-er), command the Due on-board LED. Android accept to bring together the AP of ESP8266 earlier post command.


com.example.arduinoesp.MainActivity

package com.example.arduinoesp;  import android.os.AsyncTask; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView;  import org.apache.http.HttpResponse; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient;  import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.URI; import java.net.URISyntaxException;   populace bird MainActivity extends ActionBarActivity {      EditText editIp;     Button btnOn, btnOff;     TextView textInfo1, textInfo2;      @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);         editIp = (EditText)findViewById(R.id.ip);         btnOn = (Button)findViewById(R.id.bon);         btnOff = (Button)findViewById(R.id.boff);         textInfo1 = (TextView)findViewById(R.id.info1);         textInfo2 = (TextView)findViewById(R.id.info2);          btnOn.setOnClickListener(btnOnOffClickListener);         btnOff.setOnClickListener(btnOnOffClickListener);     }      View.OnClickListener btnOnOffClickListener = novel View.OnClickListener(){         @Override         populace void onClick(View v) {             String onoff;             if(v==btnOn){                 onoff="1";             }else{                 onoff="0";             }              btnOn.setEnabled(false);             btnOff.setEnabled(false);              String serverIP = editIp.getText().toString()+":80";              TaskEsp taskEsp = novel TaskEsp(serverIP);             taskEsp.execute(onoff);          }     };      someone bird TaskEsp extends AsyncTask<String, Void, String> {          String server;          TaskEsp(String server){             this.server = server;         }          @Override         protected String doInBackground(String... params) {              String val = params[0];             concluding String p = "http://"+server+"?led="+val;              runOnUiThread(new Runnable(){                 @Override                 populace void run() {                     textInfo1.setText(p);                 }             });              String serverResponse = "";             HttpClient httpclient = novel DefaultHttpClient();             motility {                 HttpGet httpGet = novel HttpGet();                 httpGet.setURI(new URI(p));                 HttpResponse httpResponse = httpclient.execute(httpGet);                  InputStream inputStream = null;                 inputStream = httpResponse.getEntity().getContent();                 BufferedReader bufferedReader =                         novel BufferedReader(new InputStreamReader(inputStream));                 serverResponse = bufferedReader.readLine();                  inputStream.close();             } select grip of (URISyntaxException e) {                 e.printStackTrace();                 serverResponse = e.getMessage();             } select grip of (ClientProtocolException e) {                 e.printStackTrace();                 serverResponse = e.getMessage();             } select grip of (IOException e) {                 e.printStackTrace();                 serverResponse = e.getMessage();             }              supply serverResponse;         }          @Override         protected void onPostExecute(String s) {             textInfo2.setText(s);             btnOn.setEnabled(true);             btnOff.setEnabled(true);         }     }  }  

layout/activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:tools="http://schemas.android.com/tools"     android:layout_width="match_parent"     android:layout_height="match_parent"     android:paddingLeft="@dimen/activity_horizontal_margin"     android:paddingRight="@dimen/activity_horizontal_margin"     android:paddingTop="@dimen/activity_vertical_margin"     android:paddingBottom="@dimen/activity_vertical_margin"     android:orientation="vertical"     tools:context=".MainActivity">      <TextView         android:layout_width="wrap_content"         android:layout_height="wrap_content"         android:layout_gravity="center_horizontal"         android:autoLink="web"         android:text="https://rootandroid.org//"         android:textStyle="bold" />      <EditText         android:id="@+id/ip"         android:layout_width="match_parent"         android:layout_height="wrap_content"         android:text="192.168.4.1" />      <Button         android:id="@+id/bon"         android:layout_width="match_parent"         android:layout_height="wrap_content"         android:text="LED ON" />      <Button         android:id="@+id/boff"         android:layout_width="match_parent"         android:layout_height="wrap_content"         android:text="LED OFF" />     <TextView         android:id="@+id/info1"         android:layout_width="match_parent"         android:layout_height="wrap_content"         android:textStyle="italic"/>     <TextView         android:id="@+id/info2"         android:layout_width="match_parent"         android:layout_height="wrap_content"         android:textStyle="bold"/> </LinearLayout>  

Make certain to add together uses-permission of “android.permission.INTERNET” inwards src/main/AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"     package="com.example.arduinoesp" >      <uses-permission android:name="android.permission.INTERNET" />      <application         android:allowBackup="true"         android:icon="@mipmap/ic_launcher"         android:label="@string/app_name"         android:theme="@style/AppTheme" >         <activity             android:name=".MainActivity"             android:label="@string/app_name" >             <intent-filter>                 <action android:name="android.intent.action.MAIN" />                  <category android:name="android.intent.category.LAUNCHER" />             </intent-filter>         </activity>     </application>  </manifest>  

   populace bird MainActivity extends ActionBarActivity  Android App to command Arduino+ESP8266 spider web connected LEDDownload the files (Android Studio Format).