Android – Bluetooth
Bluetooth является способом отправки или получения данных между двумя разными устройствами. Платформа Android включает поддержку структуры Bluetooth, которая позволяет устройству обмениваться данными по беспроводной связи с другими устройствами Bluetooth.
Android предоставляет Bluetooth API для выполнения этих различных операций.
- Сканирование для других устройств Bluetooth
- Получить список сопряженных устройств
- Подключение к другим устройствам через обнаружение услуг
Сканирование для других устройств Bluetooth
Получить список сопряженных устройств
Подключение к другим устройствам через обнаружение услуг
Android предоставляет класс BluetoothAdapter для связи с Bluetooth. Создайте объект этого вызова, вызвав статический метод getDefaultAdapter (). Его синтаксис приведен ниже.
private BluetoothAdapter BA; BA = BluetoothAdapter.getDefaultAdapter();
Чтобы включить Bluetooth вашего устройства, вызовите намерение со следующей константой Bluetooth ACTION_REQUEST_ENABLE. Его синтаксис есть.
Intent turnOn = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(turnOn, 0);
Помимо этой константы есть и другие константы, предоставляемые API, которые поддерживают различные задачи. Они перечислены ниже.
ACTION_REQUEST_DISCOVERABLE
Эта константа используется для включения Bluetooth
Эта константа будет уведомлять, что состояние Bluetooth было изменено
Эта константа используется для получения информации о каждом обнаруженном устройстве
ACTION_REQUEST_DISCOVERABLE
Эта константа используется для включения Bluetooth
Эта константа будет уведомлять, что состояние Bluetooth было изменено
Эта константа используется для получения информации о каждом обнаруженном устройстве
После включения Bluetooth вы можете получить список сопряженных устройств, вызвав метод getBondedDevices (). Возвращает набор устройств Bluetooth. Его синтаксис есть.
private SetBluetoothDevice>pairedDevices; pairedDevices = BA.getBondedDevices();
Помимо перехваченных устройств, в API есть и другие методы, которые дают больше контроля над Blueetooth. Они перечислены ниже.
Этот метод включает адаптер, если не включен
Этот метод возвращает true, если адаптер включен
Этот метод отключает адаптер
Этот метод возвращает имя адаптера Bluetooth
Этот метод изменяет имя Bluetooth
Этот метод возвращает текущее состояние адаптера Bluetooth.
Этот метод запускает процесс обнаружения Bluetooth на 120 секунд.
Этот метод включает адаптер, если не включен
Этот метод возвращает true, если адаптер включен
Этот метод отключает адаптер
Этот метод возвращает имя адаптера Bluetooth
Этот метод изменяет имя Bluetooth
Этот метод возвращает текущее состояние адаптера Bluetooth.
Этот метод запускает процесс обнаружения Bluetooth на 120 секунд.
пример
В этом примере демонстрируется класс BluetoothAdapter для управления Bluetooth и отображения списка сопряженных устройств с помощью Bluetooth.
Чтобы поэкспериментировать с этим примером, вам нужно запустить его на реальном устройстве.
меры | Описание |
---|---|
1 | Вы будете использовать Android studio для создания приложения Android пакета com.example.sairamkrishna.myapplication. |
2 | Измените файл src / MainActivity.java, чтобы добавить код |
3 | Измените XML-файл макета. Res / layout / activity_main.xml добавьте любой компонент GUI, если это необходимо. |
4 | Измените AndroidManifest.xml, чтобы добавить необходимые разрешения. |
5 | Запустите приложение и выберите работающее устройство Android, установите на него приложение и проверьте результаты. |
Вот содержание src / MainActivity.java
package com.example.sairamkrishna.myapplication; import android.app.Activity; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.ListView; import android.widget.Toast; import java.util.ArrayList; import java.util.Set; public class MainActivity extends Activity Button b1,b2,b3,b4; private BluetoothAdapter BA; private SetBluetoothDevice>pairedDevices; ListView lv; @Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); b1 = (Button) findViewById(R.id.button); b2=(Button)findViewById(R.id.button2); b3=(Button)findViewById(R.id.button3); b4=(Button)findViewById(R.id.button4); BA = BluetoothAdapter.getDefaultAdapter(); lv = (ListView)findViewById(R.id.listView); > public void on(View v) if (!BA.isEnabled()) Intent turnOn = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(turnOn, 0); Toast.makeText(getApplicationContext(), "Turned on",Toast.LENGTH_LONG).show(); > else Toast.makeText(getApplicationContext(), "Already on", Toast.LENGTH_LONG).show(); > > public void off(View v) BA.disable(); Toast.makeText(getApplicationContext(), "Turned off" ,Toast.LENGTH_LONG).show(); > public void visible(View v) Intent getVisible = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE); startActivityForResult(getVisible, 0); > public void list(View v) pairedDevices = BA.getBondedDevices(); ArrayList list = new ArrayList(); for(BluetoothDevice bt : pairedDevices) list.add(bt.getName()); Toast.makeText(getApplicationContext(), "Showing Paired Devices",Toast.LENGTH_SHORT).show(); final ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1, list); lv.setAdapter(adapter); > >
Вот содержание activity_main.xml
Здесь abc указывает на логотип учебного пункта.
xml version="1.0" encoding="utf-8"?> 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" tools:context=".MainActivity" android:transitionGroup="true"> android:text="Bluetooth Example" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textview" android:textSize="35dp" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" /> android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Tutorials point" android:id="@+id/textView" android:layout_below="@+id/textview" android:layout_centerHorizontal="true" android:textColor="#ff7aff24" android:textSize="35dp" /> android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/imageView" android:src="@drawable/abc" android:layout_below="@+id/textView" android:layout_centerHorizontal="true" android:theme="@style/Base.TextAppearance.AppCompat" /> android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Turn On" android:id="@+id/button" android:layout_below="@+id/imageView" android:layout_toStartOf="@+id/imageView" android:layout_toLeftOf="@+id/imageView" android:clickable="true" android:onClick="on" /> android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Get visible" android:onClick="visible" android:id="@+id/button2" android:layout_alignBottom="@+id/button" android:layout_centerHorizontal="true" /> android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="List devices" android:onClick="list" android:id="@+id/button3" android:layout_below="@+id/imageView" android:layout_toRightOf="@+id/imageView" android:layout_toEndOf="@+id/imageView" /> android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="turn off" android:onClick="off" android:id="@+id/button4" android:layout_below="@+id/button" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" /> android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/listView" android:layout_alignParentBottom="true" android:layout_alignLeft="@+id/button" android:layout_alignStart="@+id/button" android:layout_below="@+id/textView2" /> android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Paired devices:" android:id="@+id/textView2" android:textColor="#ff34ff06" android:textSize="25dp" android:layout_below="@+id/button4" android:layout_alignLeft="@+id/listView" android:layout_alignStart="@+id/listView" />
Вот содержимое Strings.xml
Вот содержание AndroidManifest.xml
Давайте попробуем запустить ваше приложение. Я предполагаю, что вы подключили свое фактическое мобильное устройство Android к компьютеру. Чтобы запустить приложение из студии Android, откройте один из файлов деятельности вашего проекта и нажмите «Выполнить». значок на панели инструментов. Если ваш Bluetooth не будет включен, он попросит вашего разрешения для включения Bluetooth.
Теперь просто нажмите кнопку Get Visible, чтобы включить видимость. Появится следующий экран с вашим разрешением включить обнаружение на 120 секунд.
Теперь просто выберите опцию Список устройств. Он отобразит список сопряженных устройств в виде списка. В моем случае у меня только одно сопряженное устройство. Это показано ниже.
Теперь просто нажмите кнопку выключения, чтобы отключить Bluetooth. При отключении Bluetooth появится следующее сообщение, указывающее на успешное отключение Bluetooth.