下面列出了android.content.Context#startActivities ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Override
public void execute(Context context, ContentProviderClient contentProviderClient, RowDataSnapshot<TaskContract.Instances> rowSnapshot, Uri taskUri) throws RemoteException, OperationApplicationException
{
// TODO: check if it's still a good idea to build a custom stack
// Creates an explicit intent for an Activity in your app
Intent resultIntent = new Intent(Intent.ACTION_VIEW);
resultIntent.setData(taskUri);
// The stack builder object will contain an artificial back stack for the
// started Activity.
// This ensures that navigating backward from the Activity leads out of
// your application to the Home screen.
TaskStackBuilder stackBuilder = TaskStackBuilder.create(context);
// Adds the Intent that starts the Activity to the top of the stack
stackBuilder.addNextIntent(resultIntent);
context.startActivities(stackBuilder.getIntents());
}
private void reStartActivity(Intent intent, Context context) {
Intent[] intents = new Intent[2];
Intent mainIntent = new Intent(context, MainActivity.class);
mainIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intents[0] = mainIntent;
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intents[1] = intent;
context.startActivities(intents);
}
private void reStartActivity(Intent intent, Context context) {
Intent[] intents = new Intent[2];
Intent mainIntent = new Intent(context, MainActivity.class);
mainIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intents[0] = mainIntent;
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intents[1] = intent;
context.startActivities(intents);
}
/**
* 注意,为何要这样跳转,首先需要先跳转首页,然后在跳转到指定页面,那么回来的时候始终是首页Main页面
* @param intent intent
* @param context 上下文
*/
public void reStartActivity(Intent intent, Context context) {
Intent[] intents = new Intent[2];
Intent mainIntent = new Intent(context, MainActivity.class);
mainIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intents[0] = mainIntent;
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intents[1] = intent;
context.startActivities(intents);
}
private static void startActivities(final Intent[] intents,
final Context context,
@Nullable final Bundle options) {
if (!(context instanceof Activity)) {
for (Intent intent : intents) {
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
}
}
if (options != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
context.startActivities(intents, options);
} else {
context.startActivities(intents);
}
}
@Override
public void onReceive(Context context, Intent intent) {
// 判断app进程是否存活
if (SystemUtils.isAppAlive(context, "net.coollet.infzmreader")) {
Log.i("NotificationReceiver", "the app process is alive");
Intent mainIntent = new Intent(context, MainActivity.class);
mainIntent.putExtra("ID", intent.getIntExtra("ID", 0));
mainIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Intent detailIntent = new Intent(context,
MainActivity.class);
detailIntent.putExtra("ID", intent.getIntExtra("ID", 0));
Intent[] intents = { mainIntent, detailIntent };
context.startActivities(intents);
} else {
Log.i("NotificationReceiver", "the app process is dead");
Intent launchIntent = context.getPackageManager()
.getLaunchIntentForPackage("net.coollet.infzmreader");
launchIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
| Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
launchIntent.putExtra("ID", intent.getIntExtra("ID", 0));
context.startActivity(launchIntent);
}
}
static void a(Context context, Intent aintent[])
{
context.startActivities(aintent);
}
public static void a(Context context, Intent aintent[], Bundle bundle)
{
context.startActivities(aintent, bundle);
}
static void startActivities(Context context, Intent[] intents) {
context.startActivities(intents);
}
public static void startActivities(Context context, Intent[] intents, Bundle options) {
context.startActivities(intents, options);
}
static void startActivities(Context context, Intent[] intents) {
context.startActivities(intents);
}
public static void startActivities(Context context, Intent[] intents, Bundle options) {
context.startActivities(intents, options);
}
static void startActivities(Context context, Intent[] intents) {
context.startActivities(intents);
}
public static void startActivities(Context context, Intent[] intents, Bundle options) {
context.startActivities(intents, options);
}
static void startActivities(Context context, Intent[] intents) {
context.startActivities(intents);
}
public static void startActivities(Context context, Intent[] intents, Bundle options) {
context.startActivities(intents, options);
}