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, которые поддерживают различные задачи. Они перечислены ниже.

Sr.No Константа и описание
1
ACTION_REQUEST_DISCOVERABLE

Эта константа используется для включения Bluetooth

2
ACTION_STATE_CHANGED

Эта константа будет уведомлять, что состояние Bluetooth было изменено

3
ACTION_FOUND

Эта константа используется для получения информации о каждом обнаруженном устройстве

ACTION_REQUEST_DISCOVERABLE

Эта константа используется для включения Bluetooth

ACTION_STATE_CHANGED

Эта константа будет уведомлять, что состояние Bluetooth было изменено

ACTION_FOUND

Эта константа используется для получения информации о каждом обнаруженном устройстве

После включения Bluetooth вы можете получить список сопряженных устройств, вызвав метод getBondedDevices (). Возвращает набор устройств Bluetooth. Его синтаксис есть.

private Set<BluetoothDevice>pairedDevices;
pairedDevices = BA.getBondedDevices();
Помимо перехваченных устройств, в API есть и другие методы, которые дают больше контроля над Blueetooth. Они перечислены ниже.

Sr.No Метод и описание
1
включить()

Этот метод включает адаптер, если не включен

2
включен()

Этот метод возвращает true, если адаптер включен

3
отключить ()

Этот метод отключает адаптер

4
GetName ()

Этот метод возвращает имя адаптера Bluetooth

5
setName (имя строки)

Этот метод изменяет имя Bluetooth

6
GetState ()

Этот метод возвращает текущее состояние адаптера Bluetooth.

7
startDiscovery ()

Этот метод запускает процесс обнаружения Bluetooth на 120 секунд.

включить()

Этот метод включает адаптер, если не включен

включен()

Этот метод возвращает true, если адаптер включен

отключить ()

Этот метод отключает адаптер

GetName ()

Этот метод возвращает имя адаптера Bluetooth

setName (имя строки)

Этот метод изменяет имя Bluetooth

GetState ()

Этот метод возвращает текущее состояние адаптера Bluetooth.

startDiscovery ()

Этот метод запускает процесс обнаружения 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 Set<BluetoothDevice>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"?>
<RelativeLayout
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">

<TextView 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" />

<TextView
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" />

<ImageView
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" />

<Button
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" />

<Button
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" />

<Button
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" />

<Button
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" />

<ListView
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" />

<TextView
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" />

</RelativeLayout>
Вот содержимое Strings.xml

<resources>
<string name="app_name">My Application</string>
</resources>
Вот содержание AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.sairamkrishna.myapplication" >
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>

<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>
Давайте попробуем запустить ваше приложение. Я предполагаю, что вы подключили свое фактическое мобильное устройство Android к компьютеру. Чтобы запустить приложение из студии Android, откройте один из файлов деятельности вашего проекта и нажмите «Выполнить». Eclipse Run Icon значок на панели инструментов. Если ваш Bluetooth не будет включен, он попросит вашего разрешения для включения Bluetooth.

Anroid Bluetooth учебник
Теперь просто нажмите кнопку Get Visible, чтобы включить видимость. Появится следующий экран с вашим разрешением включить обнаружение на 120 секунд.

Anroid Bluetooth учебник
Теперь просто выберите опцию Список устройств. Он отобразит список сопряженных устройств в виде списка. В моем случае у меня только одно сопряженное устройство. Это показано ниже.

Anroid Bluetooth учебник
Теперь просто нажмите кнопку выключения, чтобы отключить Bluetooth. При отключении Bluetooth появится следующее сообщение, указывающее на успешное отключение Bluetooth.