• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2007 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.example.android.apis.app;
18 
19 // Need the following import to get access to the app resources, since this
20 // class is in a sub-package.
21 import android.app.Activity;
22 import android.content.Intent;
23 import android.os.Bundle;
24 import android.os.Process;
25 import android.view.View;
26 import android.view.View.OnClickListener;
27 import android.widget.Button;
28 
29 import com.example.android.apis.R;
30 
31 /**
32  * Example of explicitly starting the {@link ServiceStartArguments}.
33  */
34 public class ServiceStartArgumentsController extends Activity {
35     @Override
onCreate(Bundle savedInstanceState)36 	protected void onCreate(Bundle savedInstanceState) {
37         super.onCreate(savedInstanceState);
38 
39         setContentView(R.layout.service_start_arguments_controller);
40 
41         // Watch for button clicks.
42         Button button = (Button)findViewById(R.id.start1);
43         button.setOnClickListener(mStart1Listener);
44         button = (Button)findViewById(R.id.start2);
45         button.setOnClickListener(mStart2Listener);
46         button = (Button)findViewById(R.id.start3);
47         button.setOnClickListener(mStart3Listener);
48         button = (Button)findViewById(R.id.startfail);
49         button.setOnClickListener(mStartFailListener);
50         button = (Button)findViewById(R.id.kill);
51         button.setOnClickListener(mKillListener);
52     }
53 
54     private OnClickListener mStart1Listener = new OnClickListener() {
55         public void onClick(View v) {
56             startService(new Intent(ServiceStartArgumentsController.this,
57                     ServiceStartArguments.class)
58                             .putExtra("name", "One"));
59         }
60     };
61 
62     private OnClickListener mStart2Listener = new OnClickListener() {
63         public void onClick(View v) {
64             startService(new Intent(ServiceStartArgumentsController.this,
65                     ServiceStartArguments.class)
66                             .putExtra("name", "Two"));
67         }
68     };
69 
70     private OnClickListener mStart3Listener = new OnClickListener() {
71         public void onClick(View v) {
72             startService(new Intent(ServiceStartArgumentsController.this,
73                     ServiceStartArguments.class)
74                             .putExtra("name", "Three")
75                             .putExtra("redeliver", true));
76         }
77     };
78 
79     private OnClickListener mStartFailListener = new OnClickListener() {
80         public void onClick(View v) {
81             startService(new Intent(ServiceStartArgumentsController.this,
82                     ServiceStartArguments.class)
83                             .putExtra("name", "Failure")
84                             .putExtra("fail", true));
85         }
86     };
87 
88     private OnClickListener mKillListener = new OnClickListener() {
89         public void onClick(View v) {
90             // This is to simulate the service being killed while it is
91             // running in the background.
92             Process.killProcess(Process.myPid());
93         }
94     };
95 }
96