您好,登錄后才能下訂單哦!
今天幫同學(xué)做一個(gè)動作識別界面,其中用到了手機(jī)的開機(jī)啟動。
一提到開啟自動啟動,我們直接想到了Broadcast
Android系統(tǒng)完成BOOT階段之后,就會發(fā)送一條名為 ACTION_BOOT_COMPLETED 的廣播,我們便可在一個(gè)BroadcastReceiver中捕獲這條廣播,然后啟動我們的Activity或者Service,當(dāng)然要注意的是,我們的application必須具有捕獲該廣播的權(quán)限
//上代碼
//這個(gè)是自己寫的一個(gè)Service用來今天開機(jī),一旦收到了開機(jī)廣播,則啟動MainActivity這個(gè)活動
public class LaunchService extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction().equals("android.intent.action.BOOT_COMPLETED")){
Intent service = new Intent(context, MainActivity.class);
//下面的一條語句必須要添加,否則會報(bào)錯(cuò)。
//這個(gè)問題還沒有解決,至今都不知道為什么
service.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);//
context.startActivity(service);
}
}
}
//這個(gè)是要啟動的Activity
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toast.makeText(MainActivity.this, "開機(jī)已啟動", Toast.LENGTH_LONG).show();
}
}
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。