آموزش روشن کردن حالت هواپیما در برنامه نویسی اندروید
سلام دوستان در این سری از آموزش برنامه نویسی اندروید به آموزش روشن کردن حالت هواپیما در برنامه نویسی اندروید می پردازیم همان طور که می دانید حالت هواپیما یا AirPlane Mode باعث می شود تمامی اتصالات گوشی اعم از وای فای , دیتا , gps غیر فعال می شود در ادامه با ما همراه باشید.
ابتدا وارد فایل AndroidManifest.xml شده و دسترسی زیر را اضافه کنید.
1 | <uses-permission android:name="android.permission.WRITE_SETTINGS" /> |
بعد از اضافه کردن دسترسی سپس در layout خود دو دکمه قرار دهید ( نام layout در اینجا برابر با activity_main.xml است ) همانند زیر
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <Button android:id="@+id/ModeON" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="34dp" android:onClick="airPlanemodeON" android:text="ON" /> <Button android:id="@+id/ModeOFF" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/buttonStop" android:layout_centerHorizontal="true" android:layout_marginTop="116dp" android:onClick="airPlanemodeOFF" android:text="OFF" /> </RelativeLayout> |
سپس در بخش اکتیویتی آن که در اینحا نام آن برابر با MainActivity.java است کدهای زیر را در آن قرار دهید.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.provider.Settings; import android.view.View; import android.widget.Toast; public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @SuppressWarnings("deprecation") public void airPlanemodeON(View v) { boolean isEnabled = Settings.System.getInt(this.getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0) == 1; if (isEnabled == false) { modifyAirplanemode(true); Toast.makeText(getApplicationContext(), "Airplane Mode ON", Toast.LENGTH_LONG).show(); } } public void airPlanemodeOFF(View v) { boolean isEnabled = Settings.System.getInt(this.getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0) == 1; if (isEnabled == true) { modifyAirplanemode(false); Toast.makeText(getApplicationContext(), "Airplane Mode OFF", Toast.LENGTH_LONG).show(); } } public void modifyAirplanemode(boolean mode) { Settings.System.putInt(getContentResolver(), Settings.System.AIRPLANE_MODE_ON, mode ? 1 : 0); Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED); intent.putExtra("state", !mode); sendBroadcast(intent); } } |
کد بالا در صورتی که خاموش باشد روشن می شود در صورت کلیک بروی دکمه off حالت هواپیما خاموش می شود ما باید حالت ارسال intent را شبیه سازی کنیم و این کار با استفاده از void ی به نام modifyAirplanemode انجام می شود مقدار ورودی آن یک مقدار Boolean است که باید true برای روشن کردن و false برای خاموش کردن باشد .
این آموزش هم به پایان رسید.
موفق و پیروز باشید.
سلام چطوری میتونیم پاکت دیتا رو در برنامه نویسی فعال کنیم
منظور از pocket data چیست ؟ می خواهید داده تلفن همراه (data) را روشن کنید ؟
سلام این واسه an6.01 کار نمیکند و خطای پرمیشن secure settings میگیره و در منیفست و در runtime permision هم باز خطا میگیره طریقه گرفتن این نوع پرمیشن چطوریه ممنون