Android: ¿Cuál es la diferencia entre setFlags y addFlags para intentar

¿Cuál es la diferencia entre setFlags y addFlags para bash? ¿Podría alguien explicarlo por favor? Ayuda apreciada

Cuando usas setFlags estás reemplazando las banderas antiguas … cuando usas addFlags estás agregando nuevas banderas. Recuerda, una bandera es solo un entero que es potencia de dos … en binario, las banderas se ven así: 1, 10, 100, 1000, etc. … (que en este caso son 1, 2, 4, 8) . Entonces, lo que addFlags hace es addFlags el número entero que pasa usando | operador.

 // example... // value of flags: 1 intent.setFlags(2|4); // now flags have this value: 110 intent.addFlags(8); // now flags have this value: 1110 
 intent.setFlags(int num); 

Este indicador de configuración controla cómo manejar el Intent.setflag depende principalmente del tipo de componente que ejecuta Intent. Devuelve el mismo objeto de intención para encadenar llamadas múltiples en una única statement.

 intent.addFlags(int num); 

Esto ayuda a agregar indicadores adicionales a un bash particular con los valores existentes. Esto también devuelve el mismo objeto de intención para encadenar llamadas múltiples en una sola statement.

  public Intent addFlags(int flags) { mFlags |= flags; return this; } public Intent setFlags(int flags) { mFlags = flags; return this; } 

Acabo de encontrar esto del código fuente, para referencia.