102ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby/* 202ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * Copyright (C) 2011 The Android Open Source Project 302ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * 402ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * Licensed under the Apache License, Version 2.0 (the "License"); 502ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * you may not use this file except in compliance with the License. 602ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * You may obtain a copy of the License at 702ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * 802ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * http://www.apache.org/licenses/LICENSE-2.0 902ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * 1002ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * Unless required by applicable law or agreed to in writing, software 1102ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * distributed under the License is distributed on an "AS IS" BASIS, 1202ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1302ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * See the License for the specific language governing permissions and 1402ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * limitations under the License. 1502ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby */ 1602ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby 1702ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambypackage com.android.example.imsframework; 1802ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby 1902ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambyimport android.content.BroadcastReceiver; 2002ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambyimport android.content.Context; 2102ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambyimport android.content.Intent; 2202ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambyimport android.util.Log; 2302ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby 2402ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambypublic class ImsFrameworkReceiver extends BroadcastReceiver { 2502ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby private static final String TAG = "ImsFrameworkReceiver"; 2602ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby 2702ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby @Override 2802ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby public void onReceive(Context context, Intent intent) { 2902ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby String action = intent.getAction(); 3002ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby if (Intent.ACTION_BOOT_COMPLETED.equals(action)) { 3102ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby Log.d(TAG, "starting service for ACTION_BOOT_COMPLETED"); 3202ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby intent = new Intent(intent); 3302ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby intent.setClass(context, ImsFrameworkService.class); 3402ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby if (context.startService(intent) == null) { 3502ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby Log.e(TAG, "Can't start service"); 3602ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby } 3702ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby } else if (Intent.ACTION_SHUTDOWN.equals(action)) { 3802ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby Log.d(TAG, "received ACTION_SHUTDOWN, shutting down IMS"); 3902ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby // System is shutting down immediately: perform cleanup here 4002ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby } else { 4102ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby Log.e(TAG, "Received unknown intent: " + action); 4202ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby } 4302ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby } 4402ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby} 45