Android: reiniciar la aplicación después de la actualización - ACTION_PACKAGE_REPLACED

Mi aplicación que no está en Play Store verifica en la web Si hay una versión nueva, descárguela e iníciela. Después de la instalación, me gustaría reiniciar la aplicación y utilizar unaBroadcastRecevier conACTION_PACKAGE_REPLACED. Este es el código:

Emisión:

public void onReceive(Context context, Intent intent) {
  if(intent.getAction().equals(Intent.ACTION_PACKAGE_REPLACED)){
    ApplicationInfo app = new ApplicationInfo();
    if(app.packageName.equals("it.android.downloadapk")){
      Intent LaunchIntent = context.getPackageManager().getLaunchIntentForPackage(app.packageName);
      context.startActivity(LaunchIntent);                    
    }
  }
}

Manifiesto:

<receiver android:name="it.android.downloadapk.Broadcast">
  <intent-filter>
    <action android:name="android.intent.action.ACTION_PACKAGE_REPLACED"></action>
    <data android:scheme="package" android:path="it.android.downloadapk" /> 
  </intent-filter>
</receiver>

El problema es que cuando instalo una nueva apk, parece que no se inicia Broadcast, ¿por qué?

Respuestas a la pregunta(2)

Su respuesta a la pregunta