1 <?xml version="1.0" encoding="utf-8"?> 2 <!-- Copyright (C) 2012 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 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 18 coreApp="true" 19 package="com.android.inputmethod.latin"> 20 21 <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" /> 22 23 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 24 <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" /> 25 <uses-permission android:name="android.permission.GET_ACCOUNTS" /> 26 <uses-permission android:name="android.permission.READ_CONTACTS" /> 27 <uses-permission android:name="android.permission.READ_PROFILE" /> 28 <uses-permission android:name="android.permission.READ_USER_DICTIONARY" /> 29 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 30 <uses-permission android:name="android.permission.VIBRATE" /> 31 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 32 <uses-permission android:name="android.permission.WRITE_USER_DICTIONARY" /> 33 34 <application android:label="@string/english_ime_name" 35 android:icon="@drawable/ic_launcher_keyboard" 36 android:killAfterRestore="false" 37 android:supportsRtl="true" 38 android:allowBackup="true"> 39 40 <service android:name="LatinIME" 41 android:label="@string/english_ime_name" 42 android:permission="android.permission.BIND_INPUT_METHOD"> 43 <intent-filter> 44 <action android:name="android.view.InputMethod" /> 45 </intent-filter> 46 <meta-data android:name="android.view.im" android:resource="@xml/method" /> 47 </service> 48 49 <service android:name=".spellcheck.AndroidSpellCheckerService" 50 android:label="@string/spell_checker_service_name" 51 android:permission="android.permission.BIND_TEXT_SERVICE"> 52 <intent-filter> 53 <action android:name="android.service.textservice.SpellCheckerService" /> 54 </intent-filter> 55 <meta-data android:name="android.view.textservice.scs" 56 android:resource="@xml/spellchecker" /> 57 </service> 58 59 <activity android:name=".setup.SetupActivity" 60 android:theme="@style/platformActivityTheme" 61 android:label="@string/english_ime_name" 62 android:icon="@drawable/ic_launcher_keyboard" 63 android:launchMode="singleTask" 64 android:noHistory="true"> 65 <intent-filter> 66 <action android:name="android.intent.action.MAIN" /> 67 <category android:name="android.intent.category.LAUNCHER" /> 68 </intent-filter> 69 </activity> 70 71 <activity android:name=".setup.SetupWizardActivity" 72 android:theme="@style/platformActivityTheme" 73 android:label="@string/english_ime_name" 74 android:clearTaskOnLaunch="true"> 75 <intent-filter> 76 <action android:name="android.intent.action.MAIN" /> 77 </intent-filter> 78 </activity> 79 80 <receiver android:name="SystemBroadcastReceiver"> 81 <intent-filter> 82 <action android:name="android.intent.action.MY_PACKAGE_REPLACED" /> 83 <action android:name="android.intent.action.BOOT_COMPLETED" /> 84 <action android:name="android.intent.action.USER_INITIALIZE" /> 85 <action android:name="android.intent.action.LOCALE_CHANGED" /> 86 </intent-filter> 87 </receiver> 88 89 <activity android:name=".settings.SettingsActivity" 90 android:theme="@style/platformSettingsTheme" 91 android:label="@string/english_ime_settings" 92 android:uiOptions="splitActionBarWhenNarrow"> 93 <intent-filter> 94 <action android:name="android.intent.action.MAIN" /> 95 </intent-filter> 96 </activity> 97 98 <activity android:name=".spellcheck.SpellCheckerSettingsActivity" 99 android:theme="@style/platformSettingsTheme" 100 android:label="@string/android_spell_checker_settings"> 101 <intent-filter> 102 <action android:name="android.intent.action.MAIN" /> 103 </intent-filter> 104 </activity> 105 106 <receiver android:name="SuggestionSpanPickedNotificationReceiver" android:enabled="true"> 107 <intent-filter> 108 <action android:name="android.text.style.SUGGESTION_PICKED" /> 109 </intent-filter> 110 </receiver> 111 112 <receiver android:name=".personalization.DictionaryDecayBroadcastReciever" 113 android:exported="false"> 114 <intent-filter> 115 <action android:name="com.android.inputmethod.latin.personalization.DICT_DECAY" /> 116 </intent-filter> 117 </receiver> 118 119 <receiver android:name=".DictionaryPackInstallBroadcastReceiver" android:exported="false"> 120 <intent-filter> 121 <action android:name="com.android.inputmethod.dictionarypack.aosp.UNKNOWN_CLIENT" /> 122 </intent-filter> 123 </receiver> 124 125 <provider android:name="com.android.inputmethod.dictionarypack.DictionaryProvider" 126 android:grantUriPermissions="true" 127 android:exported="false" 128 android:authorities="@string/authority" 129 android:multiprocess="false" 130 android:label="@string/dictionary_provider_name"> 131 </provider> 132 133 <service android:name="com.android.inputmethod.dictionarypack.DictionaryService" 134 android:label="@string/dictionary_service_name"> 135 </service> 136 137 <receiver android:name="com.android.inputmethod.dictionarypack.EventHandler"> 138 <intent-filter> 139 <action android:name="android.intent.action.DOWNLOAD_COMPLETE" /> 140 <action android:name="android.intent.action.DATE_CHANGED" /> 141 <action android:name="com.android.inputmethod.dictionarypack.aosp.UPDATE_NOW" /> 142 </intent-filter> 143 </receiver> 144 145 <activity android:name="com.android.inputmethod.dictionarypack.DictionarySettingsActivity" 146 android:theme="@style/platformSettingsTheme" 147 android:label="@string/dictionary_settings_title" 148 android:uiOptions="splitActionBarWhenNarrow"> 149 <intent-filter> 150 <action android:name="android.intent.action.MAIN"/> 151 </intent-filter> 152 </activity> 153 154 <activity android:name="com.android.inputmethod.dictionarypack.DownloadOverMeteredDialog" 155 android:theme="@style/platformActivityTheme" 156 android:label="@string/dictionary_install_over_metered_network_prompt"> 157 <intent-filter> 158 <action android:name="android.intent.action.MAIN"/> 159 </intent-filter> 160 </activity> 161 </application> 162 </manifest> 163