aboutsummaryrefslogtreecommitdiff
path: root/src/main/AndroidManifest.xml
blob: e2764da8d96eb4cbc2937ebc623747055cc98960 (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
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools"
          package="com.menny.android.anysoftkeyboard">

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

    <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 and fake-touch devices -->
    <uses-feature android:name="android.hardware.faketouch"/>
    <uses-feature android:required="false" android:name="android.hardware.touchscreen"/>

    <application
        android:name=".AnyApplication"
        android:allowBackup="true"
        android:fullBackupContent="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"
        android:theme="@style/Theme.AskApp"
        tools:ignore="GoogleAppIndexingWarning,UnusedAttribute">

        <!-- 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>

        <!-- ui activities -->
        <!-- settings ui activities -->
        <!-- this is just a proxy activity, 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.AskApp"
            android:name="com.menny.android.anysoftkeyboard.LauncherSettingsActivity"
            android:icon="@drawable/ic_launcher_settings"
            android:launchMode="singleTop"
            android:label="@string/ime_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>

                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <activity
            android:theme="@style/Theme.AskApp"
            android:name="com.anysoftkeyboard.ui.settings.MainSettingsActivity"
            android:icon="@drawable/ic_launcher_settings"
            android:launchMode="singleTask"
            android:windowSoftInputMode="adjustPan"
            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:launchMode="singleTop"
            android:theme="@style/Theme.AskApp.Popup">
        </activity>
        <!-- ui when a crash happens -->
        <activity
            android:theme="@style/Theme.AskApp.NoTitle"
            android:name="com.anysoftkeyboard.ui.SendBugReportUiActivity"
            android:icon="@drawable/ic_launcher"
            android:label="@string/ime_name">
        </activity>
        <!-- for voice -->
        <service android:name="com.google.android.voiceime.ServiceHelper"/>

        <activity
            android:name="com.google.android.voiceime.ActivityHelper"
            android:theme="@android:style/Theme.Translucent.NoTitleBar"
            android:excludeFromRecents="true"
            android:windowSoftInputMode="stateAlwaysHidden"
            android:finishOnTaskLaunch="true"
            android:documentLaunchMode="never"
            android:clearTaskOnLaunch="true"
            android:launchMode="singleInstance"
            android:configChanges="keyboard|keyboardHidden|navigation|orientation"/>
        <activity
            android:name="com.anysoftkeyboard.ui.VoiceInputNotInstalledActivity"
            android:theme="@android:style/Theme.Translucent.NoTitleBar"
            android:icon="@drawable/ic_launcher"
            android:label="@string/ime_name"/>
    </application>

</manifest>