public static bool AmStartActivity(this ICakeContext context, string adbIntentArguments, AmStartOptions options = null, AdbToolSettings settings = null) { var t = GetAdbTool(context); return(t.StartActivity(adbIntentArguments, options, settings)); }
public bool StartActivity(string adbIntentArguments, AmStartOptions options = null, AdbToolSettings settings = null) { if (settings == null) { settings = new AdbToolSettings(); } if (options == null) { options = new AmStartOptions(); } // start [options] intent var builder = new ProcessArgumentBuilder(); AddSerial(settings.Serial, builder); builder.Append("shell"); builder.Append("am"); builder.Append("start"); if (options.EnableDebugging) { builder.Append("-D"); } if (options.WaitForLaunch) { builder.Append("-W"); } if (options.ProfileToFile != null) { if (options.ProfileUntilIdle) { builder.Append("-P"); } else { builder.Append("--start"); } builder.AppendQuoted(options.ProfileToFile.MakeAbsolute(environment).FullPath); } if (options.RepeatLaunch.HasValue && options.RepeatLaunch.Value > 0) { builder.Append("-R"); builder.Append(options.RepeatLaunch.Value.ToString()); } if (options.ForceStopTarget) { builder.Append("-S"); } if (options.EnableOpenGLTrace) { builder.Append("--opengl-trace"); } if (!string.IsNullOrEmpty(options.RunAsUserId)) { builder.Append("--user"); builder.Append(options.RunAsUserId); } builder.Append(adbIntentArguments); var output = new List <string>(); RunAdb(settings, builder, out output); return(output.Any(l => l.StartsWith("Starting:", StringComparison.OrdinalIgnoreCase))); }