Android开机启动检测和连接wifi检测
生活随笔
收集整理的這篇文章主要介紹了
Android开机启动检测和连接wifi检测
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Android啟動時,會發出一個系統廣播 ACTION_BOOT_COMPLETED,它的字符串常量表示為 “android.intent.action.BOOT_COMPLETED”
開機自啟動程序,只需要“捕捉”到這個消息再啟動你的程序即可,我們要做的是接收這個消息,并實現一個BroadcastReceiver;
網絡狀態發生變化時會發出一個系統廣播CONNECTIVITY_ACTION,值為"android.net.conn.CONNECTIVITY_CHANGE",
對網絡做一判斷,即可實現開機時有可用網絡以及網絡狀態變化且網絡可用時自動運行程序 。
代碼如下:
/*** 開機啟動檢測和連接wifi檢測* */ public class BootBroadcastReceiver extends BroadcastReceiver { static final String ACTION = "android.intent.action.BOOT_COMPLETED";//boot static final String NetChange = "android.net.conn.CONNECTIVITY_CHANGE";//the net change private static final String TAG = "BootBroadcastReceiver";@Override public void onReceive(Context context, Intent intent) { ConnectivityManager connectivityManager = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE);NetworkInfo wifiInfo = connectivityManager .getNetworkInfo(ConnectivityManager.TYPE_WIFI);Log.d(TAG, intent.getAction()); if((intent.getAction().equals(ACTION) && wifiInfo.isConnected()) ||(intent.getAction().equals(NetChange) && wifiInfo.isConnected())){Intent startIntent = new Intent(context,MainActivity.class); startIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(startIntent); }else{ Log.d(TAG, "no net ,do not start app"); } } }
總結
以上是生活随笔為你收集整理的Android开机启动检测和连接wifi检测的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎样调整计算机显示屏窗口,怎么调整电脑窗
- 下一篇: 【优化调度】基于粒子群算法求解梯级水电站