add "startservice" option to am command-line utility

Allows starting Services in addition to Activities.

Change-Id: Ib078115f6200faa8907b35909af2f64b0c563b38
diff --git a/cmds/am/src/com/android/commands/am/Am.java b/cmds/am/src/com/android/commands/am/Am.java
index d640de1..b6c9de4 100644
--- a/cmds/am/src/com/android/commands/am/Am.java
+++ b/cmds/am/src/com/android/commands/am/Am.java
@@ -88,6 +88,8 @@
 
         if (op.equals("start")) {
             runStart();
+        } else if (op.equals("startservice")) {
+            runStartService();
         } else if (op.equals("instrument")) {
             runInstrument();
         } else if (op.equals("broadcast")) {
@@ -183,6 +185,15 @@
         return intent;
     }
 
+    private void runStartService() throws Exception {
+        Intent intent = makeIntent();
+        System.out.println("Starting service: " + intent);
+        ComponentName cn = mAm.startService(null, intent, intent.getType());
+        if (cn == null) {
+            System.err.println("Error: Not found; no service started.");
+        }
+    }
+
     private void runStart() throws Exception {
         Intent intent = makeIntent();
         System.out.println("Starting: " + intent);
@@ -496,6 +507,8 @@
                 "    start an Activity: am start [-D] <INTENT>\n" +
                 "        -D: enable debugging\n" +
                 "\n" +
+                "    start a Service: am startservice <INTENT>\n" +
+                "\n" +
                 "    send a broadcast Intent: am broadcast <INTENT>\n" +
                 "\n" +
                 "    start an Instrumentation: am instrument [flags] <COMPONENT>\n" +