@Implementation
  protected void publishProgress(final Progress... values) {
    ShadowApplication.getInstance()
        .getForegroundThreadScheduler()
        .post(
            new Runnable() {
              @Override
              public void run() {
                getBridge().onProgressUpdate(values);
              }
            });
  }
@Implementation
  protected void publishProgress(final Progress... values) {
    ShadowApplication.getInstance()
        .getForegroundThreadScheduler()
        .post(
            new Runnable() {
              @Override
              public void run() {
                getBridge().onProgressUpdate(values);
              }
            });
  }
@ Implementation protected void publishProgress ( final Progress ... values ) { ShadowApplication . getInstance ( ) . getForegroundThreadScheduler ( ) . post ( new Runnable ( ) { @ Override public void run ( ) { getBridge ( ) . onProgressUpdate ( values ) ; } } ) ; }
Enqueue a call to {@link AsyncTask#onProgressUpdate(Object[])} on UI looper (or run it
immediately if the looper it is not paused).

@param values The progress values to update the UI with.
@see AsyncTask#publishProgress(Object[])
Enqueue a call to { @link AsyncTask#onProgressUpdate ( Object [] ) } on UI looper ( or run it immediately if the looper it is not paused ) .