aboutsummaryrefslogtreecommitdiff
path: root/src/main/AndroidManifest.xml
blob: 452bbfe53de4d0bac1ae1af5a5d3c93ba624d923 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.menny.android.anysoftkeyboard"
    android:versionCode="114"
    android:versionName="20131101">

    <supports-screens
        android:anyDensity="true"
        android:largeScreens="true"
        android:normalScreens="true"
        android:smallScreens="true"
        android:xlargeScreens="true"/>
    <!-- http://d.android.com/guide/practices/screens_support.html read about legacy. -->

    <uses-sdk
        android:minSdkVersion="7"
        android:targetSdkVersion="18">
    </uses-sdk>

    <uses-permission android:name="android.permission.VIBRATE"/>
    <!-- required for the user dictionary (long press a word in the suggestions bar) -->
    <uses-permission android:name="android.permission.READ_USER_DICTIONARY"/>
    <uses-permission android:name="android.permission.WRITE_USER_DICTIONARY"/>
    <!-- REQUIRED FOR THE CONTACTS DICTIONARY -->
    <uses-permission android:name="android.permission.READ_CONTACTS"/>
    <!-- REQUIRED BACKUP TO/RESTORE FROM SDCARD -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

    <!-- currently, only support touch screens -->
    <uses-configuration android:reqTouchScreen="finger"/>
    <uses-configuration android:reqTouchScreen="stylus"/>

    <application
        android:name=".AnyApplication"
        android:allowBackup="true"
        android:backupAgent="com.anysoftkeyboard.backup.AnyBackupAgent"
        android:hardwareAccelerated="true"
        android:icon="@drawable/ic_launcher"
        android:installLocation="internalOnly"
        android:label="@string/ime_name"
        android:restoreAnyVersion="true">

        <!-- used to backup the settings and SQL to the cloud -->
        <meta-data
            android:name="com.google.android.backup.api_key"
            android:value="AEdPqrEAAAAILlrSpiqigog3iJt3BwYxzNXMUzqgGV_dJ1EPDQ"/>

        <!-- this is the IME with the pointer to the settings ui (xml/method) -->
        <service
            android:name=".SoftKeyboard"
            android:permission="android.permission.BIND_INPUT_METHOD">
            <intent-filter>
                <action android:name="android.view.InputMethod"/>
            </intent-filter>

            <meta-data
                android:name="android.view.im"
                android:resource="@xml/method"/>
        </service>
        <!--
        Not ready for prime-time
        <service android:name="com.anysoftkeyboard.spellcheck.AnySpellCheckerService"
                 android:label="@string/spell_checker_service_name"
                 android:permission="android.permission.BIND_TEXT_SERVICE">
            <intent-filter>
                <action android:name="android.service.textservice.SpellCheckerService" />
            </intent-filter>
            <meta-data android:name="android.view.textservice.scs" android:resource="@xml/spellchecker" />
        </service>
        -->

        <!-- ui activities -->
        <!-- settings ui activities -->
        <!-- this is ajust a proxy activit, it does nothing but direct to the actual setting ativity
        I use this, so I can 'disable' this activity at runtime, and so remove ASK from the launcher's icons -->
        <activity android:theme="@style/Theme.AppCompat.Light"
            android:name="com.menny.android.anysoftkeyboard.LauncherSettingsActivity"
            android:icon="@drawable/ic_launcher_settings"
            android:label="@null">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>

                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <activity android:theme="@style/Theme.AppCompat.Light"
            android:name="com.anysoftkeyboard.ui.settings.MainSettingsActivity"
            android:icon="@drawable/ic_launcher_settings"
            android:launchMode="singleTop"
            android:label="@string/ime_name">
        </activity>

        <activity
            android:name="com.anysoftkeyboard.ui.tutorials.TestersNoticeActivity"
            android:icon="@drawable/ic_launcher"
            android:label="@string/testers_version"
            android:theme="@style/Popup">
        </activity>
        <!-- ui when a crash happens -->
        <activity
            android:name="com.anysoftkeyboard.ui.SendBugReportUiActivity"
            android:icon="@drawable/ic_launcher"
            android:label="@string/ime_name"
            android:theme="@style/Popup">
        </activity>
        <!--
         <activity android:name="com.anysoftkeyboard.ui.settings.SpellCheckerSettingsActivity"
                  android:label="@string/spell_checker_settings"
                  android:icon="@drawable/ic_launcher_settings">
        </activity>
        -->
        <!-- for voice -->
        <activity
            android:name="com.anysoftkeyboard.voice.VoiceInputNotInstalledActivity"
            android:icon="@drawable/ic_launcher"
            android:label="@string/ime_name"
            android:theme="@style/Popup.NoTitle"/>

        <service android:name="com.anysoftkeyboard.voice.ServiceHelper"/>

        <activity
            android:name="com.anysoftkeyboard.voice.ActivityHelper"
            android:configChanges="keyboard|keyboardHidden|navigation|orientation"
            android:excludeFromRecents="true"
            android:finishOnTaskLaunch="true"
            android:icon="@drawable/ic_launcher"
            android:theme="@android:style/Theme.Translucent.NoTitleBar"
            android:windowSoftInputMode="stateAlwaysHidden"/>
    </application>

</manifest>