1. Are you ready for the Galaxy S20? Here is everything we know so far!

Return Arduino Console in Android Studio APP

Discussion in 'Android Development' started by shyriu42, Jan 12, 2021.

  1. shyriu42

    shyriu42 Lurker
    Thread Starter

    Hello I tried to create an android application to drive led strips, I got an Android studio project that I modified to achieve my goals. Which works pretty well. I would like to be able to display what the console of an arduino nano returns to me in a textView.
    Code (Javascript):
    1. TextView textViewData=findViewById(R.id.TextViewData);
    2. textViewData.setText(Reception);
    but all my trying to include code with InputStream inputStream; do not work, the application crashes or freezes.
    Could someone help me because I have no knowledge of Java I managed to do this with intuition and probably a lot of luck.

    thanks in advance.



    Code (Javascript):
    1. package com.pegase.sapin;
    2. import android.os.Bundle;
    3. import android.support.v7.app.AppCompatActivity;
    4. import android.view.Menu;
    5. import android.view.MenuItem;
    6. import android.bluetooth.BluetoothSocket;
    7. import android.content.Intent;
    8. import android.view.View;
    9. import android.widget.Button;
    10. import android.widget.TextView;
    11. import android.widget.Toast;
    12. import android.app.ProgressDialog;
    13. import android.bluetooth.BluetoothAdapter;
    14. import android.bluetooth.BluetoothDevice;
    15. import android.os.AsyncTask;
    16. import android.widget.SeekBar;
    17. import android.widget.ToggleButton;
    18. import android.widget.EditText;
    19. import android.widget.SeekBar.OnSeekBarChangeListener;
    20. import java.io.InputStream;
    21. import java.io.OutputStream;
    22. import java.io.IOException;
    23. import java.util.UUID;
    24. public class SapinControl extends AppCompatActivity {
    25.     SeekBar Volume;
    26.     SeekBar Ring1VitesseSeekBar;
    27.     SeekBar Ring2VitesseSeekBar;
    28.     SeekBar Ring3VitesseSeekBar;
    29.     SeekBar Ring4VitesseSeekBar;
    30.     SeekBar Ring1LumiereSeekBar;
    31.     SeekBar Ring2LumiereSeekBar;
    32.     SeekBar Ring3LumiereSeekBar;
    33.     SeekBar Ring4LumiereSeekBar;
    34.     EditText editText;
    35.     Button sendButton;
    36.     Button btn, btn2, btn3, btn4, btn5, btn6, btn7, btn8, btn9, btn10, btn11, btn12, btn13, btn14, btn15, btn16, btn17, btn18, btn19, btn20, btn21, btn22, btn23, btn24, btnDis;
    37.     ToggleButton simpleToggleButton1, simpleToggleButton2, simpleToggleButton3, simpleToggleButton4;
    38.     String address = null;
    39.     private ProgressDialog progress;
    40.     BluetoothAdapter myBluetooth = null;
    41.     BluetoothSocket btSocket = null;
    42.     private boolean isBtConnected = false;
    43.     //SPP UUID. Look for it
    44.     static final UUID myUUID = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");
    45.     @Override
    46.     protected void onCreate(Bundle savedInstanceState) {
    47.         super.onCreate(savedInstanceState);
    48.         Intent newint = getIntent();
    49.         address = newint.getStringExtra(DeviceList.EXTRA_ADDRESS); //receive the address of the bluetooth device
    50.         //view of the ledControl
    51.         setContentView(R.layout.activity_sapin_control);
    52.         //call the widgtes
    53.         btn = (Button) findViewById(R.id.Button);
    54.         btn2 = (Button) findViewById(R.id.Button2);
    55.         btn3 = (Button) findViewById(R.id.Button3);
    56.         btn4 = (Button) findViewById(R.id.Button4);
    57.         btn5 = (Button) findViewById(R.id.Button5);
    58.         btn6 = (Button) findViewById(R.id.Button6);
    59.         btn7 = (Button) findViewById(R.id.Button7);
    60.         btn8 = (Button) findViewById(R.id.Button8);
    61.         btn9 = (Button) findViewById(R.id.Button9);
    62.         btn10 = (Button) findViewById(R.id.Button10);
    63.         btn11 = (Button) findViewById(R.id.Button11);
    64.         btn12 = (Button) findViewById(R.id.Button12);
    65.         btn13 = (Button) findViewById(R.id.Button13);
    66.         btn14 = (Button) findViewById(R.id.Button14);
    67.         btn15 = (Button) findViewById(R.id.Button15);
    68.         btn16 = (Button) findViewById(R.id.Button16);
    69.         btn17 = (Button) findViewById(R.id.Button17);
    70.         btn18 = (Button) findViewById(R.id.Button18);
    71.         btn19 = (Button) findViewById(R.id.Button19);
    72.         btn20 = (Button) findViewById(R.id.Button20);
    73.         btn21 = (Button) findViewById(R.id.Button21);
    74.         btn22 = (Button) findViewById(R.id.Button22);
    75.         btn23 = (Button) findViewById(R.id.Button23);
    76.         btn24 = (Button) findViewById(R.id.Button24);
    77.         btnDis = (Button) findViewById(R.id.Button30);
    78.         // initiate toggle button
    79.         //toggle button W   wheelcolor
    80.         simpleToggleButton1 = (ToggleButton) findViewById(R.id.simpleToggleButton1);
    81.         simpleToggleButton2 = (ToggleButton) findViewById(R.id.simpleToggleButton2);
    82.         simpleToggleButton3 = (ToggleButton) findViewById(R.id.simpleToggleButton3);
    83.         simpleToggleButton4 = (ToggleButton) findViewById(R.id.simpleToggleButton4);
    84.         //Vitesse et lumiere
    85.         Ring1VitesseSeekBar = (SeekBar) findViewById(R.id.Ring1SpeedSeekBar);
    86.         Ring2VitesseSeekBar = (SeekBar) findViewById(R.id.Ring2SpeedSeekBar);
    87.         Ring3VitesseSeekBar = (SeekBar) findViewById(R.id.Ring3SpeedSeekBar);
    88.         Ring4VitesseSeekBar = (SeekBar) findViewById(R.id.Ring4SpeedSeekBar);
    89.         Ring1LumiereSeekBar = (SeekBar) findViewById(R.id.Ring1BrightSeekBar);
    90.         Ring2LumiereSeekBar = (SeekBar) findViewById(R.id.Ring2BrightSeekBar);
    91.         Ring3LumiereSeekBar = (SeekBar) findViewById(R.id.Ring3BrightSeekBar);
    92.         Ring4LumiereSeekBar = (SeekBar) findViewById(R.id.Ring4BrightSeekBar);
    93.         //Volume MP3
    94.         Volume = (SeekBar) findViewById(R.id.VolumeseekBar);
    95.         new ConnectBT().execute(); //Call the class to connect
    96.         //commands to be sent to bluetooth
    97.         btn.setOnClickListener(new View.OnClickListener() {
    98.             @Override
    99.             public void onClick(View v) {
    100.                 String message = "P 1 1" + "\r\n";
    101.                 SendMessage(message);
    102.             }
    103.         });
    104.         btn2.setOnClickListener(new View.OnClickListener() {
    105.             @Override
    106.             public void onClick(View v) {
    107.                 String message = "P 1 2" + "\r\n";
    108.                 SendMessage(message);
    109.             }
    110.         });
    111.         btn3.setOnClickListener(new View.OnClickListener() {
    112.             @Override
    113.             public void onClick(View v) {
    114.                 String message = "P 1 3" + "\r\n";
    115.                 SendMessage(message);
    116.             }
    117.         });
    118.         btn4.setOnClickListener(new View.OnClickListener() {
    119.             @Override
    120.             public void onClick(View v) {
    121.                 String message = "P 1 4" + "\r\n";
    122.                 SendMessage(message);
    123.             }
    124.         });
    125.         btn5.setOnClickListener(new View.OnClickListener() {
    126.             @Override
    127.             public void onClick(View v) {
    128.                 String message = "P 1 5" + "\r\n";
    129.                 SendMessage(message);
    130.             }
    131.         });
    132.         btn6.setOnClickListener(new View.OnClickListener() {
    133.             @Override
    134.             public void onClick(View v) {
    135.                 String message = "P 2 1" + "\r\n";
    136.                 SendMessage(message);
    137.             }
    138.         });
    139.         btn7.setOnClickListener(new View.OnClickListener() {
    140.             @Override
    141.             public void onClick(View v) {
    142.                 String message = "P 2 2" + "\r\n";
    143.                 SendMessage(message);
    144.             }
    145.         });
    146.         btn8.setOnClickListener(new View.OnClickListener() {
    147.             @Override
    148.             public void onClick(View v) {
    149.                 String message = "P 2 3" + "\r\n";
    150.                 SendMessage(message);
    151.             }
    152.         });
    153.         btn9.setOnClickListener(new View.OnClickListener() {
    154.             @Override
    155.             public void onClick(View v) {
    156.                 String message = "P 2 4" + "\r\n";
    157.                 SendMessage(message);
    158.             }
    159.         });
    160.         btn10.setOnClickListener(new View.OnClickListener() {
    161.             @Override
    162.             public void onClick(View v) {
    163.                 String message = "P 2 5" + "\r\n";
    164.                 SendMessage(message);
    165.             }
    166.         });
    167.         btn11.setOnClickListener(new View.OnClickListener() {
    168.             @Override
    169.             public void onClick(View v) {
    170.                 String message = "P 3 1" + "\r\n";
    171.                 SendMessage(message);
    172.             }
    173.         });
    174.         btn12.setOnClickListener(new View.OnClickListener() {
    175.             @Override
    176.             public void onClick(View v) {
    177.                 String message = "P 3 2" + "\r\n";
    178.                 SendMessage(message);
    179.             }
    180.         });
    181.         btn13.setOnClickListener(new View.OnClickListener() {
    182.             @Override
    183.             public void onClick(View v) {
    184.                 String message = "P 3 3" + "\r\n";
    185.                 SendMessage(message);
    186.             }
    187.         });
    188.         btn14.setOnClickListener(new View.OnClickListener() {
    189.             @Override
    190.             public void onClick(View v) {
    191.                 String message = "P 3 4" + "\r\n";
    192.                 SendMessage(message);
    193.             }
    194.         });
    195.         btn15.setOnClickListener(new View.OnClickListener() {
    196.             @Override
    197.             public void onClick(View v) {
    198.                 String message = "P 3 5" + "\r\n";
    199.                 SendMessage(message);
    200.             }
    201.         });
    202.         btn16.setOnClickListener(new View.OnClickListener() {
    203.             @Override
    204.             public void onClick(View v) {
    205.                 String message = "P 4 1" + "\r\n";
    206.                 SendMessage(message);
    207.             }
    208.         });
    209.         btn17.setOnClickListener(new View.OnClickListener() {
    210.             @Override
    211.             public void onClick(View v) {
    212.                 String message = "P 4 2" + "\r\n";
    213.                 SendMessage(message);
    214.             }
    215.         });
    216.         btn18.setOnClickListener(new View.OnClickListener() {
    217.             @Override
    218.             public void onClick(View v) {
    219.                 String message = "P 4 3" + "\r\n";
    220.                 SendMessage(message);
    221.             }
    222.         });
    223.         btn19.setOnClickListener(new View.OnClickListener() {
    224.             @Override
    225.             public void onClick(View v) {
    226.                 String message = "P 4 4" + "\r\n";
    227.                 SendMessage(message);
    228.             }
    229.         });
    230.         btn20.setOnClickListener(new View.OnClickListener() {
    231.             @Override
    232.             public void onClick(View v) {
    233.                 String message = "P 4 5" + "\r\n";
    234.                 SendMessage(message);
    235.             }
    236.         });
    237.         btn21.setOnClickListener(new View.OnClickListener() {
    238.             @Override
    239.             public void onClick(View v) {
    240.                 String message = "ON" + "\r\n";
    241.                 SendMessage(message);
    242.             }
    243.         });
    244.         btn22.setOnClickListener(new View.OnClickListener() {
    245.             @Override
    246.             public void onClick(View v) {
    247.                 String message = "OFF" + "\r\n";
    248.                 SendMessage(message);
    249.             }
    250.         });
    251.         btn23.setOnClickListener(new View.OnClickListener() {
    252.             @Override
    253.             public void onClick(View v) {
    254.                 String message = "D" + "\r\n";
    255.                 SendMessage(message);
    256.             }
    257.         });
    258.         btn24.setOnClickListener(new View.OnClickListener() {
    259.             @Override
    260.             public void onClick(View v) {
    261.                 String message = "E" + "\r\n";
    262.                 SendMessage(message);
    263.             }
    264.         });
    265.         sendButton = (Button) findViewById(R.id.simpleToggleButton1);
    266.         sendButton.setOnClickListener(new View.OnClickListener() {
    267.             @Override
    268.             public void onClick(View view) {
    269.                 String message = "W 1 " + simpleToggleButton1.getText() + "\r\n";
    270.                 //Toast.makeText(getApplicationContext(), status, Toast.LENGTH_SHORT).show(); // display the current state of toggle button's
    271.                 SendMessage(message);
    272.             }
    273.         });
    274.         sendButton = (Button) findViewById(R.id.simpleToggleButton2);
    275.         sendButton.setOnClickListener(new View.OnClickListener() {
    276.             @Override
    277.             public void onClick(View view) {
    278.                 String message = "W 2 " + simpleToggleButton2.getText() + "\r\n";
    279.                 //Toast.makeText(getApplicationContext(), status, Toast.LENGTH_SHORT).show(); // display the current state of toggle button's
    280.                 SendMessage(message);
    281.             }
    282.         });
    283.         sendButton = (Button) findViewById(R.id.simpleToggleButton3);
    284.         sendButton.setOnClickListener(new View.OnClickListener() {
    285.             @Override
    286.             public void onClick(View view) {
    287.                 String message = "W 3 " + simpleToggleButton3.getText() + "\r\n";
    288.                 //Toast.makeText(getApplicationContext(), status, Toast.LENGTH_SHORT).show(); // display the current state of toggle button's
    289.                 SendMessage(message);
    290.             }
    291.         });
    292.         sendButton = (Button) findViewById(R.id.simpleToggleButton4);
    293.         sendButton.setOnClickListener(new View.OnClickListener() {
    294.             @Override
    295.             public void onClick(View view) {
    296.                 String message = "W 4 " + simpleToggleButton4.getText() + "\r\n";
    297.                 //Toast.makeText(getApplicationContext(), status, Toast.LENGTH_SHORT).show(); // display the current state of toggle button's
    298.                 SendMessage(message);
    299.             }
    300.         });
    301.         //Progression seekbar vitesse
    302.         Ring1VitesseSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
    303.             int progress = 0;
    304.             // Notification that the user has started a touch gesture.
    305.             public void onStartTrackingTouch(SeekBar Ring1SpeedSeekBar) {
    306.             }
    307.             // When Progress value changed.
    308.             @Override
    309.             public void onProgressChanged(SeekBar seekBar, int progressSpeed1, boolean fromUser) {
    310.             }
    311.             // Notification that the user has finished a touch gesture
    312.             @Override
    313.             public void onStopTrackingTouch(SeekBar seekBar) {
    314.                 int progress = (int) ((-0.004 * (seekBar.getProgress() * seekBar.getProgress()) + (seekBar.getProgress() * 2.18)) - 45);
    315.                 progress = seekBar.getMax() - progress;
    316.                 String message = "S 1 " + progress + "\r\n";
    317.                 SendMessage(message);
    318.                 //afficher la valeur a cote de la tirette
    319.                 TextView textviewspeed1 = findViewById(R.id.TextviewSpeed1);
    320.                 textviewspeed1.setText(String.valueOf(progress));
    321.             }
    322.         });
    323.         Ring2VitesseSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
    324.             int progress = 0;
    325.             // Notification that the user has started a touch gesture.
    326.             public void onStartTrackingTouch(SeekBar Ring2SpeedSeekBar) {
    327.             }
    328.             // When Progress value changed.
    329.             @Override
    330.             public void onProgressChanged(SeekBar seekBar, int progressSpeed2, boolean fromUser) {
    331.             }
    332.             // Notification that the user has finished a touch gesture
    333.             @Override
    334.             public void onStopTrackingTouch(SeekBar seekBar) {
    335.                 int progress = (int) ((-0.004 * (seekBar.getProgress() * seekBar.getProgress()) + (seekBar.getProgress() * 2.18)) - 45);
    336.                 progress = seekBar.getMax() - progress;
    337.                 String message = "S 2 " + progress + "\r\n";
    338.                 SendMessage(message);
    339.                 //afficher la valeur a cote de la tirette
    340.                 TextView textviewspeed2 = findViewById(R.id.TextviewSpeed2);
    341.                 textviewspeed2.setText(String.valueOf(progress));
    342.             }
    343.         });
    344.         Ring3VitesseSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
    345.             int progress = 0;
    346.             // Notification that the user has started a touch gesture.
    347.             public void onStartTrackingTouch(SeekBar Ring3SpeedSeekBar) {
    348.             }
    349.             // When Progress value changed.
    350.             @Override
    351.             public void onProgressChanged(SeekBar seekBar, int progressSpeed3, boolean fromUser) {
    352.             }
    353.             // Notification that the user has finished a touch gesture
    354.             @Override
    355.             public void onStopTrackingTouch(SeekBar seekBar) {
    356.                 int progress = (int) ((-0.004 * (seekBar.getProgress() * seekBar.getProgress()) + (seekBar.getProgress() * 2.18)) - 45);
    357.                 progress = seekBar.getMax() - progress;
    358.                 String message = "S 3 " + progress + "\r\n";
    359.                 SendMessage(message);
    360.                 //afficher la valeur a cote de la tirette
    361.                 TextView textviewspeed3 = findViewById(R.id.TextviewSpeed3);
    362.                 textviewspeed3.setText(String.valueOf(progress));
    363.             }
    364.         });
    365.         Ring4VitesseSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
    366.             int progress = 0;
    367.             // Notification that the user has started a touch gesture.
    368.             public void onStartTrackingTouch(SeekBar Ring4SpeedSeekBar) {
    369.             }
    370.             // When Progress value changed.
    371.             @Override
    372.             public void onProgressChanged(SeekBar seekBar, int progressSpeed4, boolean fromUser) {
    373.             }
    374.             // Notification that the user has finished a touch gesture
    375.             @Override
    376.             public void onStopTrackingTouch(SeekBar seekBar) {
    377.                 int progress = (int) ((-0.004 * (seekBar.getProgress() * seekBar.getProgress()) + (seekBar.getProgress() * 2.18)) - 45);
    378.                 progress = seekBar.getMax() - progress;
    379.                 String message = "S 4 " + progress + "\r\n";
    380.                 SendMessage(message);
    381.                 //afficher la valeur a cote de la tirette
    382.                 TextView textviewspeed4 = findViewById(R.id.TextviewSpeed4);
    383.                 textviewspeed4.setText(String.valueOf(progress));
    384.             }
    385.         });
    386.         //Progression seekbar Lumiere
    387.         Ring1LumiereSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
    388.             int progress = 0;
    389.             // Notification that the user has started a touch gesture.
    390.             public void onStartTrackingTouch(SeekBar Ring1SpeedSeekBar) {
    391.             }
    392.             // When Progress value changed.
    393.             @Override
    394.             public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    395.                 //progress = progressLum1;
    396.             }
    397.             // Notification that the user has finished a touch gesture
    398.             @Override
    399.             public void onStopTrackingTouch(SeekBar seekBar) {
    400.                 int progress = seekBar.getProgress();
    401.                 String message = "B 1 " + progress + "\r\n";
    402.                 SendMessage(message);
    403.                 //afficher la valeur a cote de la tirette
    404.                 TextView textviewlum1 = findViewById(R.id.TextviewLum1);
    405.                 textviewlum1.setText(String.valueOf(progress));
    406.             }
    407.         });
    408.         Ring2LumiereSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
    409.             int progress = 0;
    410.             // Notification that the user has started a touch gesture.
    411.             public void onStartTrackingTouch(SeekBar Ring2SpeedSeekBar) {
    412.             }
    413.             // When Progress value changed.
    414.             @Override
    415.             public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    416.             }
    417.             // Notification that the user has finished a touch gesture
    418.             @Override
    419.             public void onStopTrackingTouch(SeekBar seekBar) {
    420.                 int progress = seekBar.getProgress();
    421.                 String message = "B 2 " + progress + "\r\n";
    422.                 SendMessage(message);
    423.                 //afficher la valeur a cote de la tirette
    424.                 TextView textviewlum2 = findViewById(R.id.TextviewLum2);
    425.                 textviewlum2.setText(String.valueOf(progress));
    426.             }
    427.         });
    428.         Ring3LumiereSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
    429.             int progress = 0;
    430.             // Notification that the user has started a touch gesture.
    431.             public void onStartTrackingTouch(SeekBar Ring3SpeedSeekBar) {
    432.             }
    433.             // When Progress value changed.
    434.             @Override
    435.             public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    436.             }
    437.             // Notification that the user has finished a touch gesture
    438.             @Override
    439.             public void onStopTrackingTouch(SeekBar seekBar) {
    440.                 int progress = seekBar.getProgress();
    441.                 String message = "B 3 " + progress + "\r\n";
    442.                 SendMessage(message);
    443.                 //afficher la valeur a cote de la tirette
    444.                 TextView textviewlum3 = findViewById(R.id.TextviewLum3);
    445.                 textviewlum3.setText(String.valueOf(progress));
    446.             }
    447.         });
    448.         Ring4LumiereSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
    449.             int progress = 0;
    450.             // Notification that the user has started a touch gesture.
    451.             public void onStartTrackingTouch(SeekBar Ring4SpeedSeekBar) {
    452.             }
    453.             // When Progress value changed.
    454.             @Override
    455.             public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    456.             }
    457.             // Notification that the user has finished a touch gesture
    458.             @Override
    459.             public void onStopTrackingTouch(SeekBar seekBar) {
    460.                 int progress = seekBar.getProgress();
    461.                 String message = "B 4 " + progress + "\r\n";
    462.                 SendMessage(message);
    463.                 //afficher la valeur a cote de la tirette
    464.                 TextView textviewlum4 = findViewById(R.id.TextviewLum4);
    465.                 textviewlum4.setText(String.valueOf(progress));
    466.             }
    467.         });
    468.         //Volume seekbar
    469.         Volume.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
    470.             int progress = 0;
    471.             // Notification that the user has started a touch gesture.
    472.             public void onStartTrackingTouch(SeekBar seekBar) {
    473.             }
    474.             // When Progress value changed.
    475.             @Override
    476.             public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    477.             }
    478.             // Notification that the user has finished a touch gesture
    479.             @Override
    480.             public void onStopTrackingTouch(SeekBar seekBar) {
    481.                 int progress = seekBar.getProgress();
    482.                 progress = (int) ((9 * Math.log(progress)));
    483.                 String message = "V " + progress + "\r\n";
    484.                 SendMessage(message);
    485.                 //afficher la valeur a cote de la tirette
    486.                 TextView textviewvol = findViewById(R.id.TextviewVol);
    487.                 textviewvol.setText(String.valueOf(progress));
    488.             }
    489.         });
    490.         btnDis.setOnClickListener(new View.OnClickListener() {
    491.             @Override
    492.             public void onClick(View v) {
    493.                 Disconnect(); //close connection
    494.             }
    495.         });
    496.     }
    497.     private void Disconnect() {
    498.         if (btSocket != null) //If the btSocket is busy
    499.         {
    500.             try {
    501.                 btSocket.close(); //close connection
    502.             } catch (IOException e) {
    503.                 msg("Error");
    504.             }
    505.         }
    506.         finish(); //return to the first layout
    507.     }
    508.     private void SendMessage(String key) {
    509.         if (btSocket != null) {
    510.             try {
    511.                 btSocket.getOutputStream().write(key.getBytes());
    512.             } catch (IOException e) {
    513.                 msg("Error");
    514.             }
    515.         }
    516.     }
    517.     // fast way to call Toast
    518.     private void msg(String s) {
    519.         Toast.makeText(getApplicationContext(), s, Toast.LENGTH_LONG).show();
    520.     }
    521.     private class ConnectBT extends AsyncTask<Void, Void, Void>  // UI thread
    522.     {
    523.         private boolean ConnectSuccess = true; //if it's here, it's almost connected
    524.         @Override
    525.         protected void onPreExecute() {
    526.             progress = ProgressDialog.show(SapinControl.this, "Connecting...", "Please wait!!!");  //show a progress dialog
    527.         }
    528.         @Override
    529.         protected Void doInBackground(Void... devices) //while the progress dialog is shown, the connection is done in background
    530.         {
    531.             try {
    532.                 if (btSocket == null || !isBtConnected) {
    533.                     myBluetooth = BluetoothAdapter.getDefaultAdapter();//get the mobile bluetooth device
    534.                     BluetoothDevice dispositivo = myBluetooth.getRemoteDevice(address);//connects to the device's address and checks if it's available
    535.                     btSocket = dispositivo.createInsecureRfcommSocketToServiceRecord(myUUID);//create a RFCOMM (SPP) connection
    536.                     BluetoothAdapter.getDefaultAdapter().cancelDiscovery();
    537.                     btSocket.connect();//start connection
    538.                 }
    539.             } catch (IOException e) {
    540.                 ConnectSuccess = false;//if the try failed, you can check the exception here
    541.             }
    542.             return null;
    543.         }
    544.         @Override
    545.         protected void onPostExecute(Void result) //after the doInBackground, it checks if everything went fine
    546.         {
    547.             super.onPostExecute(result);
    548.             if (!ConnectSuccess) {
    549.                 msg("Connection Failed. Is it a SPP Bluetooth? Try again.");
    550.                 finish();
    551.             } else {
    552.                 msg("Connected.");
    553.                 isBtConnected = true;
    554.             }
    555.             progress.dismiss();
    556.         }
    557.     }
    558. }
     



    1. Download the Forums for Android™ app!


      Download

       
  2. shyriu42

    shyriu42 Lurker
    Thread Starter

    hello nobody can help me ?
     
Loading...
Similar Threads - Return Arduino Console
  1. Michael Knight
    Replies:
    1
    Views:
    534
  2. App Update
    Replies:
    0
    Views:
    172
  3. Nirhan
    Replies:
    2
    Views:
    209
  4. ScttLee184
    Replies:
    10
    Views:
    702
  5. Re_D1234
    Replies:
    0
    Views:
    863
  6. MiniBoatin
    Replies:
    8
    Views:
    1,381
  7. beirou
    Replies:
    1
    Views:
    309
  8. notableuser
    Replies:
    10
    Views:
    1,124
  9. Raksha Agrawal
    Replies:
    0
    Views:
    741
  10. Tdjohnson7700
    Replies:
    22
    Views:
    7,680

Share This Page

Loading...