آموزشهای پراکنده از دنیای برنامه نویسی اندروید
در بعضی مواقع نیاز می شود برنامه خود یا بخشی از برنامه خود را وقتی گوشی کاربر روشن شد اجرا کنید.
امروز روش انجام این کار را آموزش خواهیم داد.
1- اکتیویتی مورد نظر را با طراحی خودتان ایجاد کنید.
2- یک کلاس با اسم BootReceiver ایجاد کنید و از BroadcastReceiver مشتق کنید و در تابع onReceive کارهایی که میخواهید انجام شود را تعریف کنید.مثلا در این مثال اجرا MainActivity تعریف شده است.
بشکل زیر
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class BootReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
Intent i = new Intent(context, MainActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
3- اعمال تغییرات در منیفست برنامه برای افزودن دسترسی و معرفی رسیور جدید به برنامه.
به شکل زیر
با افزودن دستور زیر جهت دسترسی
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
و با افزودن تگ های زیر به تگ های application برای معرفی رسیور.
<receiver
android:name=".BootReceiver"
android:enabled="true"
android:permission="android.permission.RECEIVE_BOOT_COMPLETED" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>