blob: 2d0dc4afb5a7d0be25a2b45c8495eb8e9aa95ad9 [file] [log] [blame]
Ken Wakasa1a9ef012012-07-06 20:29:08 +09001<?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
Doug Zongker4fc01932010-01-27 14:32:42 -080017<manifest xmlns:android="http://schemas.android.com/apk/res/android"
Ben Komalofde61492011-09-23 15:10:13 -070018 coreApp="true"
Yohei Yukawa41f89ae2018-07-25 17:08:47 -070019 package="com.android.inputmethod.latin"
20 android:versionCode="28">
Jeff Hamiltone11e2832010-02-12 18:55:34 -060021
Yohei Yukawa69ceec92018-11-13 13:49:23 -080022 <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="23" />
23
Tadashi G. Takaokacb0beaf2013-02-14 15:01:53 +090024 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Jean Chalard0cc05442013-03-15 19:00:51 +090025 <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
Satoshi Kataoka492557e2013-05-01 15:52:08 +090026 <uses-permission android:name="android.permission.GET_ACCOUNTS" />
27 <uses-permission android:name="android.permission.READ_CONTACTS" />
28 <uses-permission android:name="android.permission.READ_PROFILE" />
Sandeep Siddharthad0a14422014-09-25 10:30:31 -070029 <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
30 <uses-permission android:name="android.permission.READ_SYNC_STATS" />
Satoshi Kataoka492557e2013-05-01 15:52:08 +090031 <uses-permission android:name="android.permission.READ_USER_DICTIONARY" />
32 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
Sandeep Siddharthad0a14422014-09-25 10:30:31 -070033 <uses-permission android:name="android.permission.USE_CREDENTIALS" />
Satoshi Kataoka492557e2013-05-01 15:52:08 +090034 <uses-permission android:name="android.permission.VIBRATE" />
35 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Sandeep Siddharthad0a14422014-09-25 10:30:31 -070036 <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
Satoshi Kataoka492557e2013-05-01 15:52:08 +090037 <uses-permission android:name="android.permission.WRITE_USER_DICTIONARY" />
The Android Open Source Project923bf412009-03-13 15:11:42 -070038
Yohei Yukawafdfc55d2017-09-01 00:22:21 -070039 <!-- A signature-protected permission to ask AOSP Keyboard to close the software keyboard.
40 To use this, add the following line into calling application's AndroidManifest.xml
41 <pre>
42 {@code
43 <uses-permission android:name="com.android.inputmethod.latin.HIDE_SOFT_INPUT"/>
44 }
45 </pre>
46 then call {@link android.content.Context#sendBroadcast(Intent)} as follows:
47 <pre>
48 {@code
49 sendBroadcast(new Intent("com.android.inputmethod.latin.HIDE_SOFT_INPUT")
50 .setPackage("com.android.inputmethod.latin"));
51 }
52 </pre> -->
53 <permission android:name="com.android.inputmethod.latin.HIDE_SOFT_INPUT"
54 android:protectionLevel="signature" />
55
Tadashi G. Takaoka842e2452013-04-26 14:01:41 +090056 <application android:label="@string/english_ime_name"
Ken Wakasa2fa36932013-12-13 17:09:16 +090057 android:icon="@drawable/ic_launcher_keyboard"
Jean Chalardb11339b2014-01-08 16:52:04 +090058 android:supportsRtl="true"
Jeff Sharkey8d658032015-11-18 11:14:18 -070059 android:allowBackup="true"
Jeff Sharkeya9298f82016-03-17 11:06:41 -060060 android:defaultToDeviceProtectedStorage="true"
61 android:directBootAware="true">
Jeff Hamilton43d34da2009-05-08 18:57:10 -070062
Sandeep Siddharthad4aec652014-09-22 16:45:05 -070063 <!-- Services -->
The Android Open Source Project923bf412009-03-13 15:11:42 -070064 <service android:name="LatinIME"
Tadashi G. Takaoka842e2452013-04-26 14:01:41 +090065 android:label="@string/english_ime_name"
The Android Open Source Project923bf412009-03-13 15:11:42 -070066 android:permission="android.permission.BIND_INPUT_METHOD">
67 <intent-filter>
68 <action android:name="android.view.InputMethod" />
69 </intent-filter>
70 <meta-data android:name="android.view.im" android:resource="@xml/method" />
71 </service>
Doug Zongker4fc01932010-01-27 14:32:42 -080072
satokc2b6a352011-08-08 19:16:20 +090073 <service android:name=".spellcheck.AndroidSpellCheckerService"
Tadashi G. Takaoka842e2452013-04-26 14:01:41 +090074 android:label="@string/spell_checker_service_name"
satokc2b6a352011-08-08 19:16:20 +090075 android:permission="android.permission.BIND_TEXT_SERVICE">
76 <intent-filter>
77 <action android:name="android.service.textservice.SpellCheckerService" />
78 </intent-filter>
Ken Wakasaa7d2fc62013-07-22 12:43:37 +090079 <meta-data android:name="android.view.textservice.scs"
80 android:resource="@xml/spellchecker" />
satokc2b6a352011-08-08 19:16:20 +090081 </service>
Jean Chalard31fd54c2011-08-12 17:18:32 +090082
Sandeep Siddharthad4aec652014-09-22 16:45:05 -070083 <service android:name="com.android.inputmethod.dictionarypack.DictionaryService"
84 android:label="@string/dictionary_service_name">
85 </service>
86
87 <!-- Activities -->
Tadashi G. Takaokacb0beaf2013-02-14 15:01:53 +090088 <activity android:name=".setup.SetupActivity"
Tadashi G. Takaoka9b46ddc2014-04-04 14:14:47 +090089 android:theme="@style/platformActivityTheme"
Tadashi G. Takaoka842e2452013-04-26 14:01:41 +090090 android:label="@string/english_ime_name"
Ken Wakasa2fa36932013-12-13 17:09:16 +090091 android:icon="@drawable/ic_launcher_keyboard"
Tadashi G. Takaoka2b5c9722013-05-09 13:14:18 +090092 android:launchMode="singleTask"
93 android:noHistory="true">
Tadashi G. Takaokacb0beaf2013-02-14 15:01:53 +090094 <intent-filter>
95 <action android:name="android.intent.action.MAIN" />
Tadashi G. Takaoka1ffdaaf2013-02-26 17:56:54 +090096 <category android:name="android.intent.category.LAUNCHER" />
Tadashi G. Takaokacb0beaf2013-02-14 15:01:53 +090097 </intent-filter>
98 </activity>
99
Mohammadinamul Sheik60415862015-07-15 13:32:50 -0700100 <activity
101 android:name=".permissions.PermissionsActivity"
102 android:theme="@android:style/Theme.Translucent.NoTitleBar"
103 android:exported="false"
104 android:taskAffinity="" >
105 </activity>
106
Tadashi G. Takaoka2b5c9722013-05-09 13:14:18 +0900107 <activity android:name=".setup.SetupWizardActivity"
Tadashi G. Takaoka9b46ddc2014-04-04 14:14:47 +0900108 android:theme="@style/platformActivityTheme"
Tadashi G. Takaoka2b5c9722013-05-09 13:14:18 +0900109 android:label="@string/english_ime_name"
110 android:clearTaskOnLaunch="true">
111 <intent-filter>
112 <action android:name="android.intent.action.MAIN" />
113 </intent-filter>
114 </activity>
115
Ken Wakasaa7d2fc62013-07-22 12:43:37 +0900116 <activity android:name=".settings.SettingsActivity"
Tadashi G. Takaokade1ab732014-07-17 19:23:35 -0700117 android:theme="@style/platformSettingsTheme"
Tadashi G. Takaoka477ee882014-10-06 15:36:34 +0900118 android:label="@string/english_ime_settings">
The Android Open Source Project923bf412009-03-13 15:11:42 -0700119 <intent-filter>
Tadashi G. Takaokacb0beaf2013-02-14 15:01:53 +0900120 <action android:name="android.intent.action.MAIN" />
The Android Open Source Project923bf412009-03-13 15:11:42 -0700121 </intent-filter>
Amith Yamasani36fcf252009-10-12 13:48:35 -0700122 </activity>
123
Ken Wakasaa7d2fc62013-07-22 12:43:37 +0900124 <activity android:name=".spellcheck.SpellCheckerSettingsActivity"
Tadashi G. Takaokade1ab732014-07-17 19:23:35 -0700125 android:theme="@style/platformSettingsTheme"
Tadashi G. Takaoka842e2452013-04-26 14:01:41 +0900126 android:label="@string/android_spell_checker_settings">
Jean Chalard31fd54c2011-08-12 17:18:32 +0900127 <intent-filter>
Tadashi G. Takaokacb0beaf2013-02-14 15:01:53 +0900128 <action android:name="android.intent.action.MAIN" />
Jean Chalard31fd54c2011-08-12 17:18:32 +0900129 </intent-filter>
130 </activity>
131
Jean Chalard0cc05442013-03-15 19:00:51 +0900132 <activity android:name="com.android.inputmethod.dictionarypack.DictionarySettingsActivity"
Tadashi G. Takaokade1ab732014-07-17 19:23:35 -0700133 android:theme="@style/platformSettingsTheme"
Ken Wakasaa7d2fc62013-07-22 12:43:37 +0900134 android:label="@string/dictionary_settings_title"
Ken Wakasaa7d2fc62013-07-22 12:43:37 +0900135 android:uiOptions="splitActionBarWhenNarrow">
Jean Chalard0cc05442013-03-15 19:00:51 +0900136 <intent-filter>
137 <action android:name="android.intent.action.MAIN"/>
138 </intent-filter>
139 </activity>
140
141 <activity android:name="com.android.inputmethod.dictionarypack.DownloadOverMeteredDialog"
Tadashi G. Takaoka9b46ddc2014-04-04 14:14:47 +0900142 android:theme="@style/platformActivityTheme"
143 android:label="@string/dictionary_install_over_metered_network_prompt">
Jean Chalard0cc05442013-03-15 19:00:51 +0900144 <intent-filter>
145 <action android:name="android.intent.action.MAIN"/>
146 </intent-filter>
147 </activity>
Sandeep Siddhartha84185142014-09-16 15:53:32 -0700148
149 <!-- Unexported activity used for tests. -->
150 <activity android:name=".settings.TestFragmentActivity"
151 android:exported="false" />
Sandeep Siddharthad4aec652014-09-22 16:45:05 -0700152
153 <!-- Broadcast receivers -->
154 <receiver android:name="SystemBroadcastReceiver">
155 <intent-filter>
156 <action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
157 <action android:name="android.intent.action.BOOT_COMPLETED" />
158 <action android:name="android.intent.action.USER_INITIALIZE" />
159 <action android:name="android.intent.action.LOCALE_CHANGED" />
160 </intent-filter>
161 </receiver>
162
Dan Zivkovic6c1c3372015-03-19 15:36:51 -0700163 <receiver android:name="DictionaryPackInstallBroadcastReceiver" android:exported="false">
Sandeep Siddharthad4aec652014-09-22 16:45:05 -0700164 <intent-filter>
165 <action android:name="com.android.inputmethod.dictionarypack.aosp.UNKNOWN_CLIENT" />
166 </intent-filter>
167 </receiver>
168
Sandeep Siddharthad4aec652014-09-22 16:45:05 -0700169 <receiver android:name="com.android.inputmethod.dictionarypack.EventHandler">
170 <intent-filter>
171 <action android:name="android.intent.action.DOWNLOAD_COMPLETE" />
172 <action android:name="android.intent.action.DATE_CHANGED" />
173 <action android:name="com.android.inputmethod.dictionarypack.aosp.UPDATE_NOW" />
Mohammadinamul Sheik3bc3bc72015-03-24 14:56:54 -0700174 <action android:name="com.android.inputmethod.dictionarypack.aosp.INIT_AND_UPDATE_NOW" />
Sandeep Siddharthad4aec652014-09-22 16:45:05 -0700175 </intent-filter>
176 </receiver>
177
178 <!-- Broadcast receiver for AccountManager#LOGIN_ACCOUNTS_CHANGED_ACTION. -->
Dan Zivkovic6c1c3372015-03-19 15:36:51 -0700179 <receiver android:name=".accounts.AccountsChangedReceiver">
Sandeep Siddharthad4aec652014-09-22 16:45:05 -0700180 <intent-filter>
181 <action android:name="android.accounts.LOGIN_ACCOUNTS_CHANGED" />
182 </intent-filter>
183 </receiver>
184
185 <!-- Content providers -->
186 <provider android:name="com.android.inputmethod.dictionarypack.DictionaryProvider"
187 android:grantUriPermissions="true"
188 android:exported="false"
189 android:authorities="@string/authority"
190 android:multiprocess="false"
191 android:label="@string/dictionary_provider_name">
192 </provider>
The Android Open Source Project923bf412009-03-13 15:11:42 -0700193 </application>
194</manifest>