/documentation/TextToSpeech_Plugin_Engine_Examples/PicoUnbundled/src/com/svox/pico/unbundled/VoiceDataInstallerReceiver.java
Java | 52 lines | 22 code | 6 blank | 24 comment | 2 complexity | c4e0ae3d781f9aad1bec7ce7cdbaceb8 MD5 | raw file
1/* 2 * Copyright (C) 2009 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 */ 16package com.svox.pico.unbundled; 17 18import android.content.BroadcastReceiver; 19import android.content.Context; 20import android.content.Intent; 21import android.util.Log; 22 23/* 24 * Is notified when the language pack installer is added to the system, and runs the installer. 25 */ 26public class VoiceDataInstallerReceiver extends BroadcastReceiver { 27 28 private final static String TAG = "RunVoiceDataInstaller"; 29 30 private final static String INSTALLER_PACKAGE = "com.svox.langpack.installer"; 31 32 @Override 33 public void onReceive(Context context, Intent intent) { 34 if (Intent.ACTION_PACKAGE_ADDED.equals(intent.getAction()) 35 && INSTALLER_PACKAGE.equals(getPackageName(intent))) { 36 Log.v(TAG, INSTALLER_PACKAGE + " package was added, running installer..."); 37 // the language pack installer has been added to the system 38 // now run the installer 39 Intent runIntent = new Intent("com.svox.langpack.installer.RUN_TTS_DATA_INSTALLER"); 40 runIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 41 context.startActivity(runIntent); 42 } 43 } 44 45 /** 46 * Returns the name of the package that was added from the intent. 47 * @param intent the {@link Intent} 48 */ 49 private static String getPackageName(Intent intent) { 50 return intent.getData().getSchemeSpecificPart(); 51 } 52}