Android 静态注册 (包括8.0以上)

Android 静态注册

  • Android7.0 及以下版本
    • Android 8.0 及以上版本

Android7.0 及以下版本

本例子的ACTION 仅支持Android7.0 及以下版本

/**

  • 第一步,写一个子类继承BroadcastReceiver
    */
    public class BootReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
    Log.d(“BootReceiver”,“开机完成”+intent.getAction());
    Toast.makeText(context,“开机完成”,Toast.LENGTH_SHORT).show();
    }
    }
    第二步,在xml里面注册广播

    
        
        
            
        

    

第四步,有些Action需要添加权限


Android 8.0 及以上版本

需要定向发送广播,并且一些权限被禁用,为了保护隐私

	 Intent intent = new Intent(Intent.ACTION_BATTERY_CHANGED);
    intent.setComponent(new ComponentName(this.getPackageName(), 	
    "com.example.broadcasttest.MainActivity"));
    sendBroadcast(intent);

静态注册:
不需要启动app ,开机即监听。
因此耗用资源大。
而且Android8.0以后比较麻烦 不建议

你可能感兴趣的:(android)