package testcode.android;
import android.app.Activity;
import android.content.Intent;
import android.support.v4.content.LocalBroadcastManager;
import android.os.Bundle;
public class BroadcastIntentActivity extends Activity {
@Override
protected void onCreate(Bundle b) {
super.onCreate(b);
String user = "";
String email = "";
String newSessionId = "";
Intent i = new Intent();
i.setAction("com.insecure.action.UserConnected");
i.putExtra("username", user);
i.putExtra("email", email);
i.putExtra("session", newSessionId);
sendBroadcast(i);
sendBroadcast(i, null); //More signatures
sendBroadcastAsUser(i, null);
sendBroadcastAsUser(i,null,null);
sendOrderedBroadcast(i,null);
sendOrderedBroadcast(i,null,null,null,0,null,null);
sendOrderedBroadcastAsUser(i,null,null,null,null,0,null,null);
/* These calls are safe.
*
* https://developer.android.com/reference/android/support/v4/content/LocalBroadcastManager.html
* > "You know that the data you are broadcasting won't leave your app, so don't need to worry about leaking private data."
*/
LocalBroadcastManager.getInstance(this).sendBroadcast(i);
// This class extends the Android LocalBroadcastManager and is used to test the InterfaceUtils.isSubtype condition.
CustomLocalBroadcastManager.getInstance(this).sendBroadcast(i);
}
}