به نام خدا
سلام به همراهان همیار اندروید
در این جلسه میخام بهتون آموزش بدم که چطوری از بلوتوث
در نرم افزار خودتون استفاده کنید یعنی در اصل آموزش ببینید که چطوری
از درون برنامه خودتون بلوتوث دستگاه را روشن و خاموش کنید
قدم اول
ما برای روشن و خاموش کردن bluetooth نیاز به دوتا باتن داریم یکی برای روشن کردن
و دیگری برای خاموش کردن بلوتوث ، خب حالا میریم سراغ نوشتن کد XML در لایوت مورد نظر
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<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:gravity="center"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView android:text="HamyarAndroid.com"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp">
</TextView>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="TURN_ON" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="28dp"
android:text="TURN_OFF" />
</LinearLayout>
همونطور که میبینید در کد بالا دوتا Button ایجاد کردم که تصویرش رو میتونید در عکس پایین ببینید
قدم دوم
برنامه ما نیاز داره که به بلوتوث دستگاه برای روشن و خاموش کردنش دسترسی پیدا کنه
این دسترسی رو ازطریق اضافه کردن کد پایین به پروژه ایجاد می کنیم
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
دوتا uses-permition که در بالا می بینید رو باید به قسمت Manifest پروژمون اضافه کنیم
طبق کد پایین اضافه کنید
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.hamyarandroid.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:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
خط 6 و 7 در کد بالا رو اضافه کردیم و دسترسی ایجاد شد
قدم سوم
در این مرحله میریم سراغ نوشتن کدهای جاوا
کدهای پایین رو در کلاس جاوای مورد نظر مینویسیم و در آخر خط به خط اونها رو براتون توضیح میدم
MainActivity.java
package com.hamyarandroid.myapplication;
import androidx.appcompat.app.AppCompatActivity;
import android.bluetooth.BluetoothAdapter;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity
{
private static final int REQUEST_ENABLE_BT = 0;
Button button1,button2;
BluetoothAdapter BAdapter;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1 = findViewById(R.id.button1);
button2 = findViewById(R.id.button2);
BAdapter = BluetoothAdapter.getDefaultAdapter();
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v)
{
if (!BAdapter.isEnabled())
{
Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
}
Toast.makeText(MainActivity.this,"بلوتوث روشن شد",Toast.LENGTH_SHORT).show();
}
});
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
BAdapter.disable();
Toast.makeText(MainActivity.this,"بلوتوث خاموش شد",Toast.LENGTH_SHORT).show();
}
});
}
}
خط 18
REQUEST_ENABLE_BT یک کد هستش که توسط این کد از OnActivityResult یک درخواست می کنیم
و این کد یک عدد دلخواه است
خط 18
باتن ها رو معرفی کردیم
خط 20
یک Adapter پیش فرض داریم که اسمش رو گذاشتیم BAdapter
خط های 28 تا 30
ویوها را کانفیگ کردیم و Adapter پیش فرض سیستم رو صدا زدیم
خط های 33 تا 44
به باتن خاصیت کلیک خوری دادیم و گفتیم بعد از کلیک خوردن عملیات روشن شدن بلوتوث را انجام بده
خط های 37 تا 41
اگر درون Adapter بلوتوث برابر با روشن نبود توسط خط های 39 و 40 بلوتوث را روشن کن
خط 42
پیام بلوتوث روشن شد را در پایین صفحه به نمایش در می آورد
خط های 47 تا 53
خاصیت کلیک خوری به باتن دادیم و متد درون خودش رو اجرا میکنه که شامل خاموش کردن بلوتوث در خط 50
و نوشتن "بلوتوث خاموش شد " در پایین صفحه توسط کد در خط 51
تصاویر خروجی برنامه رو می تونید در پایین ببینید
وقتی وارد برنامه میشین و برای بار اول میخاین بلوتوث رو روشن کنین سیستم از شما اجازه میگیره طبق عکس پایین
در دفعات بعدی تا زمانی که درون برنامه هستین دیگه بهتون پیام نمیده و بلوتوث رو روشن و خاموش میکنه
زمانی که دکمه خاموش رو میزنیم
امیدوارم که این آموزش مورد استفادتون قرار بگیره
تا آموزش بعدی خدانگهدارتون