1b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik/*
2b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik * Copyright (C) 2011 The Android Open Source Project
3b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik *
4b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik * Licensed under the Apache License, Version 2.0 (the "License");
5b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik * you may not use this file except in compliance with the License.
6b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik * You may obtain a copy of the License at
7b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik *
8b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik *      http://www.apache.org/licenses/LICENSE-2.0
9b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik *
10b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik * Unless required by applicable law or agreed to in writing, software
11b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik * distributed under the License is distributed on an "AS IS" BASIS,
12b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik * See the License for the specific language governing permissions and
14b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik * limitations under the License.
15b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik */
16b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik
17b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craikpackage com.android.frameworkperf;
18b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik
19b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craikimport android.app.Notification;
20b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craikimport android.app.PendingIntent;
21b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craikimport android.app.Service;
22b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craikimport android.content.Intent;
23b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craikimport android.os.IBinder;
24b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik
25b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craikpublic class SchedulerService extends Service {
269f0fa995c57cedf4e4a707955e55e17ea9116ffeChris Craik
279f0fa995c57cedf4e4a707955e55e17ea9116ffeChris Craik    @Override
289f0fa995c57cedf4e4a707955e55e17ea9116ffeChris Craik    public int onStartCommand(Intent intent, int flags, int startId) {
299f0fa995c57cedf4e4a707955e55e17ea9116ffeChris Craik        Notification status = new Notification.Builder(this)
309f0fa995c57cedf4e4a707955e55e17ea9116ffeChris Craik                .setSmallIcon(R.drawable.stat_happy)
319f0fa995c57cedf4e4a707955e55e17ea9116ffeChris Craik                .setWhen(System.currentTimeMillis())
329f0fa995c57cedf4e4a707955e55e17ea9116ffeChris Craik                .setContentTitle("Scheduler Test running")
339f0fa995c57cedf4e4a707955e55e17ea9116ffeChris Craik                .setContentText("Scheduler Test running")
349f0fa995c57cedf4e4a707955e55e17ea9116ffeChris Craik                .setContentIntent(PendingIntent.getActivity(this, 0,
35b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik                        new Intent(this, FrameworkPerfActivity.class)
36b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik                                .setAction(Intent.ACTION_MAIN)
37b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik                                .addCategory(Intent.CATEGORY_LAUNCHER)
38b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik                                .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK), 0))
39b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik                .setOngoing(true)
40b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik                .build();
419f0fa995c57cedf4e4a707955e55e17ea9116ffeChris Craik        startForeground(1, status);
42b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik        return START_STICKY;
43b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik    }
444cbf5efdc25d6b9e4ac2e72b87cb74b6823d68ddChris Craik
45b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik    @Override
46b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik    public IBinder onBind(Intent intent) {
47b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik        // TODO Auto-generated method stub
48b3dba557f679f0bf4b1e4bb2e2b0b4ad44f514b0Chris Craik        return null;
49    }
50
51}
52