Compare commits
No commits in common. "master" and "4.903" have entirely different histories.
2
.gitattributes
vendored
@ -1,2 +0,0 @@
|
|||||||
*.sh text eol=lf
|
|
||||||
gradlew text eol=lf
|
|
37
.project
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<projectDescription>
|
||||||
|
<name>k9mail</name>
|
||||||
|
<comment></comment>
|
||||||
|
<projects>
|
||||||
|
<project>k9mail-ActionBarSherlock</project>
|
||||||
|
<project>k9mail-Android-PullToRefresh</project>
|
||||||
|
<project>k9mail-ckChangeLog</project>
|
||||||
|
<project>k9mail-HoloColorPicker</project>
|
||||||
|
</projects>
|
||||||
|
<buildSpec>
|
||||||
|
<buildCommand>
|
||||||
|
<name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>com.android.ide.eclipse.adt.ApkBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
</buildSpec>
|
||||||
|
<natures>
|
||||||
|
<nature>com.android.ide.eclipse.adt.AndroidNature</nature>
|
||||||
|
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||||
|
</natures>
|
||||||
|
</projectDescription>
|
@ -3,6 +3,6 @@ host = https://www.transifex.com
|
|||||||
lang_map = af_ZA: af-rZA, am_ET: am-rET, ar_AE: ar-rAE, ar_BH: ar-rBH, ar_DZ: ar-rDZ, ar_EG: ar-rEG, ar_IQ: ar-rIQ, ar_JO: ar-rJO, ar_KW: ar-rKW, ar_LB: ar-rLB, ar_LY: ar-rLY, ar_MA: ar-rMA, ar_OM: ar-rOM, ar_QA: ar-rQA, ar_SA: ar-rSA, ar_SY: ar-rSY, ar_TN: ar-rTN, ar_YE: ar-rYE, arn_CL: arn-rCL, as_IN: as-rIN, az_AZ: az-rAZ, ba_RU: ba-rRU, be_BY: be-rBY, bg_BG: bg-rBG, bn_BD: bn-rBD, bn_IN: bn-rIN, bo_CN: bo-rCN, br_FR: br-rFR, bs_BA: bs-rBA, ca_ES: ca-rES, co_FR: co-rFR, cs_CZ: cs-rCZ, cy_GB: cy-rGB, da_DK: da-rDK, de_AT: de-rAT, de_CH: de-rCH, de_DE: de-rDE, de_LI: de-rLI, de_LU: de-rLU, dsb_DE: dsb-rDE, dv_MV: dv-rMV, el_GR: el-rGR, en_AU: en-rAU, en_BZ: en-rBZ, en_CA: en-rCA, en_GB: en-rGB, en_IE: en-rIE, en_IN: en-rIN, en_JM: en-rJM, en_MY: en-rMY, en_NZ: en-rNZ, en_PH: en-rPH, en_SG: en-rSG, en_TT: en-rTT, en_US: en-rUS, en_ZA: en-rZA, en_ZW: en-rZW, es_AR: es-rAR, es_BO: es-rBO, es_CL: es-rCL, es_CO: es-rCO, es_CR: es-rCR, es_DO: es-rDO, es_EC: es-rEC, es_ES: es-rES, es_GT: es-rGT, es_HN: es-rHN, es_MX: es-rMX, es_NI: es-rNI, es_PA: es-rPA, es_PE: es-rPE, es_PR: es-rPR, es_PY: es-rPY, es_SV: es-rSV, es_US: es-rUS, es_UY: es-rUY, es_VE: es-rVE, et_EE: et-rEE, eu_ES: eu-rES, fa_IR: fa-rIR, fi_FI: fi-rFI, fil_PH: fil-rPH, fo_FO: fo-rFO, fr_BE: fr-rBE, fr_CA: fr-rCA, fr_CH: fr-rCH, fr_FR: fr-rFR, fr_LU: fr-rLU, fr_MC: fr-rMC, fy_NL: fy-rNL, ga_IE: ga-rIE, gd_GB: gd-rGB, gl_ES: gl-rES, gsw_FR: gsw-rFR, gu_IN: gu-rIN, ha_NG: ha-rNG, hi_IN: hi-rIN, hr_BA: hr-rBA, hr_HR: hr-rHR, hsb_DE: hsb-rDE, hu_HU: hu-rHU, hy_AM: hy-rAM, id_ID: id-rID, ig_NG: ig-rNG, ii_CN: ii-rCN, is_IS: is-rIS, it_CH: it-rCH, it_IT: it-rIT, iu_CA: iu-rCA, ja_JP: ja-rJP, ka_GE: ka-rGE, kk_KZ: kk-rKZ, kl_GL: kl-rGL, km_KH: km-rKH, kn_IN: kn-rIN, ko_KR: ko-rKR, kok_IN: kok-rIN, ky_KG: ky-rKG, lb_LU: lb-rLU, lo_LA: lo-rLA, lt_LT: lt-rLT, lv_LV: lv-rLV, mi_NZ: mi-rNZ, mk_MK: mk-rMK, ml_IN: ml-rIN, mn_CN: mn-rCN, mn_MN: mn-rMN, moh_CA: moh-rCA, mr_IN: mr-rIN, ms_BN: ms-rBN, ms_MY: ms-rMY, mt_MT: mt-rMT, nb_NO: nb-rNO, ne_NP: ne-rNP, nl_BE: nl-rBE, nl_NL: nl-rNL, nn_NO: nn-rNO, nso_ZA: nso-rZA, oc_FR: oc-rFR, or_IN: or-rIN, pa_IN: pa-rIN, pl_PL: pl-rPL, prs_AF: prs-rAF, ps_AF: ps-rAF, pt_BR: pt-rBR, pt_PT: pt-rPT, qut_GT: qut-rGT, quz_BO: quz-rBO, quz_EC: quz-rEC, quz_PE: quz-rPE, rm_CH: rm-rCH, ro_RO: ro-rRO, ru_RU: ru-rRU, rw_RW: rw-rRW, sa_IN: sa-rIN, sah_RU: sah-rRU, se_FI: se-rFI, se_NO: se-rNO, se_SE: se-rSE, si_LK: si-rLK, sk_SK: sk-rSK, sl_SI: sl-rSI, sma_NO: sma-rNO, sma_SE: sma-rSE, smj_NO: smj-rNO, smj_SE: smj-rSE, smn_FI: smn-rFI, sms_FI: sms-rFI, sq_AL: sq-rAL, sr_BA: sr-rBA, sr_CS: sr-rCS, sr_ME: sr-rME, sr_RS: sr-rRS, sv_FI: sv-rFI, sv_SE: sv-rSE, sw_KE: sw-rKE, syr_SY: syr-rSY, ta_IN: ta-rIN, te_IN: te-rIN, tg_TJ: tg-rTJ, th_TH: th-rTH, tk_TM: tk-rTM, tn_ZA: tn-rZA, tr_TR: tr-rTR, tt_RU: tt-rRU, tzm_DZ: tzm-rDZ, ug_CN: ug-rCN, uk_UA: uk-rUA, ur_PK: ur-rPK, uz_UZ: uz-rUZ, vi_VN: vi-rVN, wo_SN: wo-rSN, xh_ZA: xh-rZA, yo_NG: yo-rNG, zh_CN: zh-rCN, zh_HK: zh-rHK, zh_MO: zh-rMO, zh_SG: zh-rSG, zh_TW: zh-rTW, zu_ZA: zu-rZA, no_NO: no-rNO, he_IL: iw-rIL, he: iw
|
lang_map = af_ZA: af-rZA, am_ET: am-rET, ar_AE: ar-rAE, ar_BH: ar-rBH, ar_DZ: ar-rDZ, ar_EG: ar-rEG, ar_IQ: ar-rIQ, ar_JO: ar-rJO, ar_KW: ar-rKW, ar_LB: ar-rLB, ar_LY: ar-rLY, ar_MA: ar-rMA, ar_OM: ar-rOM, ar_QA: ar-rQA, ar_SA: ar-rSA, ar_SY: ar-rSY, ar_TN: ar-rTN, ar_YE: ar-rYE, arn_CL: arn-rCL, as_IN: as-rIN, az_AZ: az-rAZ, ba_RU: ba-rRU, be_BY: be-rBY, bg_BG: bg-rBG, bn_BD: bn-rBD, bn_IN: bn-rIN, bo_CN: bo-rCN, br_FR: br-rFR, bs_BA: bs-rBA, ca_ES: ca-rES, co_FR: co-rFR, cs_CZ: cs-rCZ, cy_GB: cy-rGB, da_DK: da-rDK, de_AT: de-rAT, de_CH: de-rCH, de_DE: de-rDE, de_LI: de-rLI, de_LU: de-rLU, dsb_DE: dsb-rDE, dv_MV: dv-rMV, el_GR: el-rGR, en_AU: en-rAU, en_BZ: en-rBZ, en_CA: en-rCA, en_GB: en-rGB, en_IE: en-rIE, en_IN: en-rIN, en_JM: en-rJM, en_MY: en-rMY, en_NZ: en-rNZ, en_PH: en-rPH, en_SG: en-rSG, en_TT: en-rTT, en_US: en-rUS, en_ZA: en-rZA, en_ZW: en-rZW, es_AR: es-rAR, es_BO: es-rBO, es_CL: es-rCL, es_CO: es-rCO, es_CR: es-rCR, es_DO: es-rDO, es_EC: es-rEC, es_ES: es-rES, es_GT: es-rGT, es_HN: es-rHN, es_MX: es-rMX, es_NI: es-rNI, es_PA: es-rPA, es_PE: es-rPE, es_PR: es-rPR, es_PY: es-rPY, es_SV: es-rSV, es_US: es-rUS, es_UY: es-rUY, es_VE: es-rVE, et_EE: et-rEE, eu_ES: eu-rES, fa_IR: fa-rIR, fi_FI: fi-rFI, fil_PH: fil-rPH, fo_FO: fo-rFO, fr_BE: fr-rBE, fr_CA: fr-rCA, fr_CH: fr-rCH, fr_FR: fr-rFR, fr_LU: fr-rLU, fr_MC: fr-rMC, fy_NL: fy-rNL, ga_IE: ga-rIE, gd_GB: gd-rGB, gl_ES: gl-rES, gsw_FR: gsw-rFR, gu_IN: gu-rIN, ha_NG: ha-rNG, hi_IN: hi-rIN, hr_BA: hr-rBA, hr_HR: hr-rHR, hsb_DE: hsb-rDE, hu_HU: hu-rHU, hy_AM: hy-rAM, id_ID: id-rID, ig_NG: ig-rNG, ii_CN: ii-rCN, is_IS: is-rIS, it_CH: it-rCH, it_IT: it-rIT, iu_CA: iu-rCA, ja_JP: ja-rJP, ka_GE: ka-rGE, kk_KZ: kk-rKZ, kl_GL: kl-rGL, km_KH: km-rKH, kn_IN: kn-rIN, ko_KR: ko-rKR, kok_IN: kok-rIN, ky_KG: ky-rKG, lb_LU: lb-rLU, lo_LA: lo-rLA, lt_LT: lt-rLT, lv_LV: lv-rLV, mi_NZ: mi-rNZ, mk_MK: mk-rMK, ml_IN: ml-rIN, mn_CN: mn-rCN, mn_MN: mn-rMN, moh_CA: moh-rCA, mr_IN: mr-rIN, ms_BN: ms-rBN, ms_MY: ms-rMY, mt_MT: mt-rMT, nb_NO: nb-rNO, ne_NP: ne-rNP, nl_BE: nl-rBE, nl_NL: nl-rNL, nn_NO: nn-rNO, nso_ZA: nso-rZA, oc_FR: oc-rFR, or_IN: or-rIN, pa_IN: pa-rIN, pl_PL: pl-rPL, prs_AF: prs-rAF, ps_AF: ps-rAF, pt_BR: pt-rBR, pt_PT: pt-rPT, qut_GT: qut-rGT, quz_BO: quz-rBO, quz_EC: quz-rEC, quz_PE: quz-rPE, rm_CH: rm-rCH, ro_RO: ro-rRO, ru_RU: ru-rRU, rw_RW: rw-rRW, sa_IN: sa-rIN, sah_RU: sah-rRU, se_FI: se-rFI, se_NO: se-rNO, se_SE: se-rSE, si_LK: si-rLK, sk_SK: sk-rSK, sl_SI: sl-rSI, sma_NO: sma-rNO, sma_SE: sma-rSE, smj_NO: smj-rNO, smj_SE: smj-rSE, smn_FI: smn-rFI, sms_FI: sms-rFI, sq_AL: sq-rAL, sr_BA: sr-rBA, sr_CS: sr-rCS, sr_ME: sr-rME, sr_RS: sr-rRS, sv_FI: sv-rFI, sv_SE: sv-rSE, sw_KE: sw-rKE, syr_SY: syr-rSY, ta_IN: ta-rIN, te_IN: te-rIN, tg_TJ: tg-rTJ, th_TH: th-rTH, tk_TM: tk-rTM, tn_ZA: tn-rZA, tr_TR: tr-rTR, tt_RU: tt-rRU, tzm_DZ: tzm-rDZ, ug_CN: ug-rCN, uk_UA: uk-rUA, ur_PK: ur-rPK, uz_UZ: uz-rUZ, vi_VN: vi-rVN, wo_SN: wo-rSN, xh_ZA: xh-rZA, yo_NG: yo-rNG, zh_CN: zh-rCN, zh_HK: zh-rHK, zh_MO: zh-rMO, zh_SG: zh-rSG, zh_TW: zh-rTW, zu_ZA: zu-rZA, no_NO: no-rNO, he_IL: iw-rIL, he: iw
|
||||||
|
|
||||||
[k9mail.strings]
|
[k9mail.strings]
|
||||||
file_filter = k9mail/src/main/res/values-<lang>/strings.xml
|
file_filter = res/values-<lang>/strings.xml
|
||||||
source_file = k9mail/src/main/res/values/strings.xml
|
source_file = res/values/strings.xml
|
||||||
source_lang = en
|
source_lang = en
|
||||||
|
48
Android.mk
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
LOCAL_PATH:= $(call my-dir)
|
||||||
|
include $(CLEAR_VARS)
|
||||||
|
|
||||||
|
LOCAL_STATIC_JAVA_LIBRARIES += libcore
|
||||||
|
LOCAL_STATIC_JAVA_LIBRARIES += libdom
|
||||||
|
LOCAL_STATIC_JAVA_LIBRARIES += libio
|
||||||
|
LOCAL_STATIC_JAVA_LIBRARIES += libjutf
|
||||||
|
LOCAL_STATIC_JAVA_LIBRARIES += libjzlib
|
||||||
|
LOCAL_STATIC_JAVA_LIBRARIES += libhtmlcleaner
|
||||||
|
LOCAL_STATIC_JAVA_LIBRARIES += android-support-v4
|
||||||
|
|
||||||
|
LOCAL_MODULE_TAGS := eng
|
||||||
|
|
||||||
|
LOCAL_SRC_FILES := $(call all-java-files-under, src)
|
||||||
|
LOCAL_SRC_FILES += $(call all-java-files-under, plugins/ActionBarSherlock/library/src)
|
||||||
|
LOCAL_SRC_FILES += $(call all-java-files-under, plugins/Android-PullToRefresh/library/src)
|
||||||
|
LOCAL_SRC_FILES += $(call all-java-files-under, plugins/ckChangeLog/library/src)
|
||||||
|
LOCAL_SRC_FILES += $(call all-java-files-under, plugins/HoloColorPicker/src)
|
||||||
|
|
||||||
|
res_dir := res plugins/ActionBarSherlock/library/res plugins/Android-PullToRefresh/library/res plugins/ckChangeLog/library/res plugins/HoloColorPicker/res
|
||||||
|
LOCAL_RESOURCE_DIR := $(addprefix $(LOCAL_PATH)/, $(res_dir))
|
||||||
|
|
||||||
|
LOCAL_SDK_VERSION := current
|
||||||
|
|
||||||
|
LOCAL_PACKAGE_NAME := Email
|
||||||
|
|
||||||
|
LOCAL_AAPT_FLAGS := --auto-add-overlay
|
||||||
|
LOCAL_AAPT_FLAGS += --extra-packages de.cketti.library.changelog
|
||||||
|
LOCAL_AAPT_FLAGS += --extra-packages android.support.v4.app
|
||||||
|
LOCAL_AAPT_FLAGS += --extra-packages com.actionbarsherlock
|
||||||
|
LOCAL_AAPT_FLAGS += --extra-packages com.handmark.pulltorefresh.library
|
||||||
|
LOCAL_AAPT_FLAGS += --extra-packages com.larswerkman.colorpicker
|
||||||
|
|
||||||
|
LOCAL_PROGUARD_FLAG_FILES := proguard.cfg
|
||||||
|
|
||||||
|
include $(BUILD_PACKAGE)
|
||||||
|
##################################################
|
||||||
|
include $(CLEAR_VARS)
|
||||||
|
|
||||||
|
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += libcore:libs/apache-mime4j-core-0.7.2.jar
|
||||||
|
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += libdom:libs/apache-mime4j-dom-0.7.2.jar
|
||||||
|
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += libio:libs/commons-io-2.0.1.jar
|
||||||
|
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += libjutf:libs/jutf7-1.0.1-SNAPSHOT.jar
|
||||||
|
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += libjzlib:libs/jzlib-1.0.7.jar
|
||||||
|
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += libhtmlcleaner:libs/htmlcleaner-2.2.jar
|
||||||
|
|
||||||
|
include $(BUILD_MULTI_PREBUILT)
|
||||||
|
|
@ -1,20 +1,19 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<manifest
|
<manifest
|
||||||
package="com.fsck.k9"
|
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:versionCode="23060"
|
android:versionCode="21006"
|
||||||
android:versionName="5.106">
|
android:versionName="4.903" package="com.fsck.k9"
|
||||||
|
>
|
||||||
<uses-feature
|
<uses-sdk
|
||||||
android:name="android.hardware.touchscreen"
|
android:minSdkVersion="15"
|
||||||
android:required="false"/>
|
android:targetSdkVersion="17"
|
||||||
|
/>
|
||||||
<supports-screens
|
<supports-screens
|
||||||
android:anyDensity="true"
|
|
||||||
android:largeScreens="true"
|
android:largeScreens="true"
|
||||||
android:normalScreens="true"
|
android:normalScreens="true"
|
||||||
android:smallScreens="true"/>
|
android:smallScreens="true"
|
||||||
|
android:anyDensity="true"
|
||||||
|
/>
|
||||||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
|
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
|
||||||
<uses-permission android:name="android.permission.READ_CONTACTS"/>
|
<uses-permission android:name="android.permission.READ_CONTACTS"/>
|
||||||
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS"/>
|
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS"/>
|
||||||
@ -26,406 +25,416 @@
|
|||||||
<uses-permission android:name="android.permission.INTERNET"/>
|
<uses-permission android:name="android.permission.INTERNET"/>
|
||||||
<uses-permission android:name="android.permission.VIBRATE"/>
|
<uses-permission android:name="android.permission.VIBRATE"/>
|
||||||
<uses-permission android:name="android.permission.WAKE_LOCK"/>
|
<uses-permission android:name="android.permission.WAKE_LOCK"/>
|
||||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
||||||
|
|
||||||
<permission
|
|
||||||
android:name="${applicationId}.permission.READ_ATTACHMENT"
|
|
||||||
android:description="@string/read_attachment_desc"
|
|
||||||
android:label="@string/read_attachment_label"
|
|
||||||
android:permissionGroup="android.permission-group.MESSAGES"
|
|
||||||
android:protectionLevel="dangerous"/>
|
|
||||||
<uses-permission android:name="${applicationId}.permission.READ_ATTACHMENT"/>
|
|
||||||
|
|
||||||
<permission
|
|
||||||
android:name="${applicationId}.permission.REMOTE_CONTROL"
|
|
||||||
android:description="@string/remote_control_desc"
|
|
||||||
android:label="@string/remote_control_label"
|
|
||||||
android:permissionGroup="android.permission-group.MESSAGES"
|
|
||||||
android:protectionLevel="dangerous"/>
|
|
||||||
<uses-permission android:name="${applicationId}.permission.REMOTE_CONTROL"/>
|
|
||||||
|
|
||||||
<permission
|
|
||||||
android:name="${applicationId}.permission.READ_MESSAGES"
|
|
||||||
android:description="@string/read_messages_desc"
|
|
||||||
android:label="@string/read_messages_label"
|
|
||||||
android:permissionGroup="android.permission-group.MESSAGES"
|
|
||||||
android:protectionLevel="dangerous"/>
|
|
||||||
<uses-permission android:name="${applicationId}.permission.READ_MESSAGES"/>
|
|
||||||
|
|
||||||
<permission
|
|
||||||
android:name="${applicationId}.permission.DELETE_MESSAGES"
|
|
||||||
android:description="@string/delete_messages_desc"
|
|
||||||
android:label="@string/delete_messages_label"
|
|
||||||
android:permissionGroup="android.permission-group.MESSAGES"
|
|
||||||
android:protectionLevel="dangerous"/>
|
|
||||||
<uses-permission android:name="${applicationId}.permission.DELETE_MESSAGES"/>
|
|
||||||
|
|
||||||
|
<uses-permission android:name="org.thialfihar.android.apg.permission.READ_KEY_DETAILS" />
|
||||||
|
|
||||||
|
<permission android:name="com.fsck.k9.permission.READ_ATTACHMENT"
|
||||||
|
android:permissionGroup="android.permission-group.MESSAGES"
|
||||||
|
android:protectionLevel="dangerous"
|
||||||
|
android:label="@string/read_attachment_label"
|
||||||
|
android:description="@string/read_attachment_desc"/>
|
||||||
|
<uses-permission android:name="com.fsck.k9.permission.READ_ATTACHMENT"/>
|
||||||
|
<permission android:name="com.fsck.k9.permission.REMOTE_CONTROL"
|
||||||
|
android:permissionGroup="android.permission-group.MESSAGES"
|
||||||
|
android:protectionLevel="dangerous"
|
||||||
|
android:label="@string/remote_control_label"
|
||||||
|
android:description="@string/remote_control_desc"/>
|
||||||
|
<uses-permission android:name="com.fsck.k9.permission.REMOTE_CONTROL"/>
|
||||||
|
<permission android:name="com.fsck.k9.permission.READ_MESSAGES"
|
||||||
|
android:permissionGroup="android.permission-group.MESSAGES"
|
||||||
|
android:protectionLevel="dangerous"
|
||||||
|
android:label="@string/read_messages_label"
|
||||||
|
android:description="@string/read_messages_desc"/>
|
||||||
|
<uses-permission android:name="com.fsck.k9.permission.READ_MESSAGES"/>
|
||||||
|
<permission android:name="com.fsck.k9.permission.DELETE_MESSAGES"
|
||||||
|
android:permissionGroup="android.permission-group.MESSAGES"
|
||||||
|
android:protectionLevel="dangerous"
|
||||||
|
android:label="@string/delete_messages_label"
|
||||||
|
android:description="@string/delete_messages_desc"/>
|
||||||
|
<uses-permission android:name="com.fsck.k9.permission.DELETE_MESSAGES"/>
|
||||||
|
<uses-feature android:name="android.hardware.touchscreen" android:required="false"/>
|
||||||
<application
|
<application
|
||||||
android:name="K9"
|
|
||||||
android:allowTaskReparenting="false"
|
|
||||||
android:icon="@drawable/icon"
|
android:icon="@drawable/icon"
|
||||||
android:label="@string/app_name"
|
android:label="@string/app_name"
|
||||||
android:theme="@style/Theme.K9.Startup">
|
android:name="K9"
|
||||||
|
android:allowTaskReparenting="false"
|
||||||
<meta-data
|
android:theme="@style/Theme.K9.Startup"
|
||||||
android:name="android.app.default_searchable"
|
>
|
||||||
android:value="com.fsck.k9.activity.Search"/>
|
<meta-data android:name="android.app.default_searchable"
|
||||||
|
android:value=".activity.Search" />
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.Accounts"
|
android:name=".activity.Accounts"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/app_name"
|
|
||||||
android:launchMode="singleTop"
|
android:launchMode="singleTop"
|
||||||
android:uiOptions="splitActionBarWhenNarrow">
|
android:uiOptions="splitActionBarWhenNarrow"
|
||||||
|
android:label="@string/app_name">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.MAIN"/>
|
<action android:name="android.intent.action.MAIN" />
|
||||||
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
<category android:name="android.intent.category.DEFAULT"/>
|
<category android:name="android.intent.category.LAUNCHER" />
|
||||||
<category android:name="android.intent.category.LAUNCHER"/>
|
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.VIEW"/>
|
<action android:name="android.intent.action.VIEW" />
|
||||||
<data android:mimeType="application/x-k9settings"/>
|
<data android:mimeType="application/x-k9settings" />
|
||||||
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
<category android:name="android.intent.category.DEFAULT"/>
|
<category android:name="android.intent.category.BROWSABLE" />
|
||||||
<category android:name="android.intent.category.BROWSABLE"/>
|
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.Prefs"
|
android:name=".activity.setup.Prefs"
|
||||||
android:configChanges="locale"
|
|
||||||
android:excludeFromRecents="true"
|
|
||||||
android:label="@string/prefs_title"
|
android:label="@string/prefs_title"
|
||||||
android:taskAffinity="${applicationId}.activity.setup.Prefs"/>
|
android:configChanges="locale"
|
||||||
|
android:taskAffinity="com.fsck.k9.activity.setup.Prefs"
|
||||||
|
android:excludeFromRecents="true"
|
||||||
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.WelcomeMessage"
|
android:name=".activity.setup.WelcomeMessage"
|
||||||
|
android:label="@string/welcome_message_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/welcome_message_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.FontSizeSettings"
|
android:name=".activity.setup.FontSizeSettings"
|
||||||
|
android:label="@string/font_size_settings_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/font_size_settings_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.AccountSetupBasics"
|
android:name=".activity.setup.AccountSetupBasics"
|
||||||
|
android:label="@string/account_setup_basics_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/account_setup_basics_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.AccountSetupAccountType"
|
android:name=".activity.setup.AccountSetupAccountType"
|
||||||
|
android:label="@string/account_setup_account_type_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/account_setup_account_type_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.AccountSetupIncoming"
|
android:name=".activity.setup.AccountSetupIncoming"
|
||||||
|
android:label="@string/account_setup_incoming_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/account_setup_incoming_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.AccountSetupComposition"
|
android:name=".activity.setup.AccountSetupComposition"
|
||||||
|
android:label="@string/account_settings_composition_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/account_settings_composition_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.AccountSetupOutgoing"
|
android:name=".activity.setup.AccountSetupOutgoing"
|
||||||
|
android:label="@string/account_setup_outgoing_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/account_setup_outgoing_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.AccountSetupOptions"
|
android:name=".activity.setup.AccountSetupOptions"
|
||||||
|
android:label="@string/account_setup_options_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/account_setup_options_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.AccountSetupNames"
|
android:name=".activity.setup.AccountSetupNames"
|
||||||
|
android:label="@string/account_setup_names_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/account_setup_names_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.ChooseFolder"
|
android:name=".activity.ChooseFolder"
|
||||||
android:configChanges="locale"
|
android:theme="@style/Theme.K9Dialog"
|
||||||
android:label="@string/choose_folder_title"
|
android:label="@string/choose_folder_title"
|
||||||
|
android:configChanges="locale"
|
||||||
android:noHistory="true"
|
android:noHistory="true"
|
||||||
android:theme="@style/Theme.K9Dialog"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.ChooseIdentity"
|
android:name=".activity.ChooseIdentity"
|
||||||
android:configChanges="locale"
|
android:theme="@style/Theme.K9Dialog"
|
||||||
android:label="@string/choose_identity_title"
|
android:label="@string/choose_identity_title"
|
||||||
android:theme="@style/Theme.K9Dialog"/>
|
android:configChanges="locale"
|
||||||
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.ManageIdentities"
|
android:name=".activity.ManageIdentities"
|
||||||
|
android:label="@string/manage_identities_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/manage_identities_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.EditIdentity"
|
android:name=".activity.EditIdentity"
|
||||||
|
android:label="@string/edit_identity_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/edit_identity_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.NotificationDeleteConfirmation"
|
android:name=".activity.NotificationDeleteConfirmation"
|
||||||
android:excludeFromRecents="true"
|
android:theme="@android:style/Theme.Translucent.NoTitleBar"
|
||||||
android:launchMode="singleTop"
|
android:launchMode="singleTop"
|
||||||
android:taskAffinity=""
|
android:taskAffinity=""
|
||||||
android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
|
android:excludeFromRecents="true"
|
||||||
|
>
|
||||||
|
</activity>
|
||||||
<!-- XXX Note: this activity is hacked to ignore config changes,
|
<!-- XXX Note: this activity is hacked to ignore config changes,
|
||||||
since it doesn't currently handle them correctly in code. -->
|
since it doesn't currently handle them correctly in code. -->
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.AccountSetupCheckSettings"
|
android:name=".activity.setup.AccountSetupCheckSettings"
|
||||||
|
android:label="@string/account_setup_check_settings_title"
|
||||||
android:configChanges="keyboardHidden|orientation|locale"
|
android:configChanges="keyboardHidden|orientation|locale"
|
||||||
android:label="@string/account_setup_check_settings_title"/>
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.AccountSettings"
|
android:name=".activity.setup.AccountSettings"
|
||||||
|
android:label="@string/account_settings_title_fmt"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/account_settings_title_fmt"/>
|
>
|
||||||
|
</activity>
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.setup.FolderSettings"
|
android:name=".activity.setup.FolderSettings"
|
||||||
android:configChanges="locale"
|
android:theme="@android:style/Theme.Dialog"
|
||||||
android:label="@string/folder_settings_title"
|
android:label="@string/folder_settings_title"
|
||||||
android:theme="@android:style/Theme.Dialog"/>
|
android:configChanges="locale"
|
||||||
|
>
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.FolderList"
|
android:name=".activity.FolderList"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:uiOptions="splitActionBarWhenNarrow">
|
android:uiOptions="splitActionBarWhenNarrow"
|
||||||
|
>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<!-- This action is only to allow an entry point for launcher shortcuts -->
|
<!-- This action is only to allow an entry point for launcher shortcuts -->
|
||||||
<action android:name="android.intent.action.MAIN"/>
|
<action android:name="android.intent.action.MAIN" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.MessageList"
|
android:name=".activity.MessageList"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:launchMode="singleTop"
|
android:launchMode="singleTop"
|
||||||
android:uiOptions="splitActionBarWhenNarrow">
|
android:uiOptions="splitActionBarWhenNarrow"
|
||||||
|
>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<!-- This action is only to allow an entry point for launcher shortcuts -->
|
<!-- This action is only to allow an entry point for launcher shortcuts -->
|
||||||
<action android:name="android.intent.action.MAIN"/>
|
<action android:name="android.intent.action.MAIN" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.VIEW"/>
|
<action android:name="android.intent.action.VIEW" />
|
||||||
<data
|
<data
|
||||||
|
android:scheme="email"
|
||||||
android:host="messages"
|
android:host="messages"
|
||||||
android:scheme="email"/>
|
/>
|
||||||
<category android:name="android.intent.category.DEFAULT"/>
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.MessageCompose"
|
android:name=".activity.MessageCompose"
|
||||||
android:configChanges="locale"
|
android:label="@string/app_name"
|
||||||
android:enabled="false"
|
android:enabled="false"
|
||||||
android:label="@string/app_name">
|
|
||||||
<intent-filter>
|
|
||||||
<action android:name="android.intent.action.SENDTO"/>
|
|
||||||
<data android:scheme="mailto"/>
|
|
||||||
<category android:name="android.intent.category.DEFAULT"/>
|
|
||||||
</intent-filter>
|
|
||||||
<intent-filter>
|
|
||||||
<action android:name="android.intent.action.SEND"/>
|
|
||||||
<data android:mimeType="*/*"/>
|
|
||||||
<category android:name="android.intent.category.DEFAULT"/>
|
|
||||||
</intent-filter>
|
|
||||||
<intent-filter>
|
|
||||||
<action android:name="android.intent.action.SEND_MULTIPLE"/>
|
|
||||||
<data android:mimeType="*/*"/>
|
|
||||||
<category android:name="android.intent.category.DEFAULT"/>
|
|
||||||
</intent-filter>
|
|
||||||
<intent-filter>
|
|
||||||
<action android:name="android.intent.action.VIEW"/>
|
|
||||||
<data android:scheme="mailto"/>
|
|
||||||
|
|
||||||
<category android:name="android.intent.category.DEFAULT"/>
|
|
||||||
<category android:name="android.intent.category.BROWSABLE"/>
|
|
||||||
</intent-filter>
|
|
||||||
</activity>
|
|
||||||
|
|
||||||
<!-- Search Activity - searchable -->
|
|
||||||
<activity
|
|
||||||
android:name=".activity.Search"
|
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/search_action"
|
>
|
||||||
android:uiOptions="splitActionBarWhenNarrow">
|
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.SEARCH"/>
|
<action android:name="android.intent.action.SENDTO" />
|
||||||
<category android:name="android.intent.category.DEFAULT"/>
|
<data android:scheme="mailto" />
|
||||||
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
|
</intent-filter>
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="android.intent.action.SEND" />
|
||||||
|
<data android:mimeType="*/*" />
|
||||||
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
|
</intent-filter>
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="android.intent.action.SEND_MULTIPLE" />
|
||||||
|
<data android:mimeType="*/*" />
|
||||||
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
|
</intent-filter>
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="android.intent.action.VIEW" />
|
||||||
|
<data android:scheme="mailto" />
|
||||||
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
|
<category android:name="android.intent.category.BROWSABLE" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
<meta-data
|
|
||||||
android:name="android.app.searchable"
|
|
||||||
android:resource="@xml/searchable"/>
|
|
||||||
</activity>
|
</activity>
|
||||||
|
<!-- Search Activity - searchable -->
|
||||||
|
<activity android:name=".activity.Search"
|
||||||
|
android:label="@string/search_action"
|
||||||
|
android:configChanges="locale"
|
||||||
|
android:uiOptions="splitActionBarWhenNarrow"
|
||||||
|
>
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="android.intent.action.SEARCH" />
|
||||||
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
|
</intent-filter>
|
||||||
|
<meta-data android:name="android.app.searchable"
|
||||||
|
android:resource="@xml/searchable" />
|
||||||
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.LauncherShortcuts"
|
android:name=".activity.LauncherShortcuts"
|
||||||
|
android:label="@string/shortcuts_title"
|
||||||
android:configChanges="locale"
|
android:configChanges="locale"
|
||||||
android:label="@string/shortcuts_title">
|
>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.CREATE_SHORTCUT"/>
|
<action android:name="android.intent.action.CREATE_SHORTCUT" />
|
||||||
<category android:name="android.intent.category.DEFAULT"/>
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.EmailAddressList"
|
android:name=".activity.AccessibleEmailContentActivity"
|
||||||
android:configChanges="locale"/>
|
>
|
||||||
|
|
||||||
<activity android:name=".activity.UnreadWidgetConfiguration">
|
|
||||||
<intent-filter>
|
|
||||||
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE"/>
|
|
||||||
</intent-filter>
|
|
||||||
</activity>
|
</activity>
|
||||||
|
<activity android:name=".activity.EmailAddressList"
|
||||||
<activity
|
android:configChanges="locale"
|
||||||
android:name=".activity.UpgradeDatabases"
|
>
|
||||||
android:label="@string/upgrade_databases_title"/>
|
</activity>
|
||||||
|
<receiver android:name=".service.BootReceiver"
|
||||||
<receiver
|
android:enabled="true"
|
||||||
android:name=".service.BootReceiver"
|
>
|
||||||
android:enabled="true">
|
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.BOOT_COMPLETED"/>
|
<action android:name="android.intent.action.BOOT_COMPLETED" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.DEVICE_STORAGE_LOW"/>
|
<action android:name="android.intent.action.DEVICE_STORAGE_LOW" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.DEVICE_STORAGE_OK"/>
|
<action android:name="android.intent.action.DEVICE_STORAGE_OK" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
|
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.net.conn.BACKGROUND_DATA_SETTING_CHANGED"/>
|
<action android:name="android.net.conn.BACKGROUND_DATA_SETTING_CHANGED" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="com.android.sync.SYNC_CONN_STATUS_CHANGED"/>
|
<action android:name="com.android.sync.SYNC_CONN_STATUS_CHANGED" />
|
||||||
|
</intent-filter>
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="com.fsck.k9.service.BroadcastReceiver.scheduleIntent"/>
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</receiver>
|
</receiver>
|
||||||
|
<receiver android:name=".service.RemoteControlReceiver"
|
||||||
|
android:enabled="true"
|
||||||
|
android:permission="com.fsck.k9.permission.REMOTE_CONTROL"
|
||||||
|
>
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="com.fsck.k9.K9RemoteControl.set"/>
|
||||||
|
|
||||||
<receiver
|
</intent-filter>
|
||||||
android:name=".service.RemoteControlReceiver"
|
<intent-filter>
|
||||||
android:enabled="true"
|
<action android:name="com.fsck.k9.K9RemoteControl.requestAccounts"/>
|
||||||
android:permission="${applicationId}.permission.REMOTE_CONTROL">
|
|
||||||
<intent-filter>
|
</intent-filter>
|
||||||
<action android:name="${applicationId}.K9RemoteControl.set"/>
|
</receiver>
|
||||||
</intent-filter>
|
<receiver android:name=".service.CoreReceiver"
|
||||||
<intent-filter>
|
android:enabled="true"
|
||||||
<action android:name="${applicationId}.K9RemoteControl.requestAccounts"/>
|
>
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="com.fsck.k9.service.CoreReceiver.wakeLockRelease"/>
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</receiver>
|
</receiver>
|
||||||
|
<receiver android:name=".service.StorageReceiver"
|
||||||
<receiver
|
android:enabled="true"
|
||||||
android:name=".service.CoreReceiver"
|
>
|
||||||
android:exported="false"/>
|
|
||||||
|
|
||||||
<receiver
|
|
||||||
android:name=".service.StorageReceiver"
|
|
||||||
android:enabled="true">
|
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<!--
|
<!--
|
||||||
android.intent.action.MEDIA_MOUNTED
|
android.intent.action.MEDIA_MOUNTED
|
||||||
|
|
||||||
* Broadcast Action: External media is present and mounted at its mount point.
|
* Broadcast Action: External media is present and mounted at its mount point.
|
||||||
* The path to the mount point for the removed media is contained in the Intent.mData field.
|
* The path to the mount point for the removed media is contained in the Intent.mData field.
|
||||||
* The Intent contains an extra with name "read-only" and Boolean value to indicate if the
|
* The Intent contains an extra with name "read-only" and Boolean value to indicate if the
|
||||||
* media was mounted read only.
|
* media was mounted read only.
|
||||||
|
|
||||||
-->
|
-->
|
||||||
<action android:name="android.intent.action.MEDIA_MOUNTED"/>
|
<action android:name="android.intent.action.MEDIA_MOUNTED"/>
|
||||||
<!--
|
<!--
|
||||||
|
|
||||||
MEDIA_EJECT and MEDIA_UNMOUNTED are not defined here: they have to be dynamically registered
|
MEDIA_EJECT and MEDIA_UNMOUNTED are not defined here: they have to be dynamically registered
|
||||||
otherwise it would make K-9 start at the wrong time
|
otherwise it would make K-9 start at the wrong time
|
||||||
|
|
||||||
-->
|
-->
|
||||||
<data android:scheme="file"/>
|
<data android:scheme="file"/>
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</receiver>
|
</receiver>
|
||||||
|
<service
|
||||||
|
android:name=".service.MailService"
|
||||||
|
android:enabled="true"
|
||||||
|
>
|
||||||
|
</service>
|
||||||
|
<service
|
||||||
|
android:name=".service.NotificationActionService"
|
||||||
|
android:enabled="true"
|
||||||
|
>
|
||||||
|
</service>
|
||||||
|
<service
|
||||||
|
android:name=".service.PushService"
|
||||||
|
android:enabled="true"
|
||||||
|
>
|
||||||
|
</service>
|
||||||
|
<service
|
||||||
|
android:name=".service.PollService"
|
||||||
|
android:enabled="true"
|
||||||
|
>
|
||||||
|
</service>
|
||||||
|
<service
|
||||||
|
android:name=".service.RemoteControlService"
|
||||||
|
android:enabled="true"
|
||||||
|
android:permission="com.fsck.k9.permission.REMOTE_CONTROL"
|
||||||
|
>
|
||||||
|
</service>
|
||||||
|
<service
|
||||||
|
android:name=".service.SleepService"
|
||||||
|
android:enabled="true"
|
||||||
|
>
|
||||||
|
</service>
|
||||||
|
<provider
|
||||||
|
android:name=".provider.AttachmentProvider"
|
||||||
|
android:authorities="com.fsck.k9.attachmentprovider"
|
||||||
|
android:multiprocess="true"
|
||||||
|
android:grantUriPermissions="true"
|
||||||
|
android:readPermission="com.fsck.k9.permission.READ_ATTACHMENT"
|
||||||
|
android:exported="true"
|
||||||
|
/>
|
||||||
|
<provider
|
||||||
|
android:name=".provider.MessageProvider"
|
||||||
|
android:authorities="com.fsck.k9.messageprovider"
|
||||||
|
android:multiprocess="true"
|
||||||
|
android:grantUriPermissions="true"
|
||||||
|
android:readPermission="com.fsck.k9.permission.READ_MESSAGES"
|
||||||
|
android:writePermission="com.fsck.k9.permission.DELETE_MESSAGES"
|
||||||
|
android:exported="true"
|
||||||
|
/>
|
||||||
|
<provider
|
||||||
|
android:name=".provider.EmailProvider"
|
||||||
|
android:authorities="com.fsck.k9.provider.email"
|
||||||
|
android:exported="false"
|
||||||
|
/>
|
||||||
|
|
||||||
<receiver
|
<receiver
|
||||||
android:name=".provider.UnreadWidgetProvider"
|
android:name=".provider.UnreadWidgetProvider"
|
||||||
android:icon="@drawable/icon"
|
android:label="@string/unread_widget_label"
|
||||||
android:label="@string/unread_widget_label">
|
android:icon="@drawable/icon">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
|
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
<meta-data
|
<meta-data
|
||||||
android:name="android.appwidget.provider"
|
android:name="android.appwidget.provider"
|
||||||
android:resource="@xml/unread_widget_info"/>
|
android:resource="@xml/unread_widget_info" />
|
||||||
</receiver>
|
</receiver>
|
||||||
|
<activity android:name=".activity.UnreadWidgetConfiguration">
|
||||||
<service
|
<intent-filter>
|
||||||
android:name=".service.MailService"
|
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
|
||||||
android:enabled="true"/>
|
</intent-filter>
|
||||||
|
</activity>
|
||||||
<service
|
<activity
|
||||||
android:name=".service.NotificationActionService"
|
android:name=".activity.UpgradeDatabases"
|
||||||
android:enabled="true"/>
|
android:label="@string/upgrade_databases_title">
|
||||||
|
</activity>
|
||||||
<service
|
|
||||||
android:name=".service.PushService"
|
|
||||||
android:enabled="true"/>
|
|
||||||
|
|
||||||
<service
|
|
||||||
android:name=".service.PollService"
|
|
||||||
android:enabled="true"/>
|
|
||||||
|
|
||||||
<service
|
|
||||||
android:name=".service.RemoteControlService"
|
|
||||||
android:enabled="true"
|
|
||||||
android:permission="${applicationId}.permission.REMOTE_CONTROL"/>
|
|
||||||
|
|
||||||
<service
|
|
||||||
android:name=".service.SleepService"
|
|
||||||
android:enabled="true"/>
|
|
||||||
|
|
||||||
<service
|
<service
|
||||||
android:name=".service.DatabaseUpgradeService"
|
android:name=".service.DatabaseUpgradeService"
|
||||||
android:exported="false"/>
|
android:exported="false">
|
||||||
|
</service>
|
||||||
<provider
|
|
||||||
android:name=".provider.AttachmentProvider"
|
|
||||||
android:authorities="${applicationId}.attachmentprovider"
|
|
||||||
android:exported="true"
|
|
||||||
android:grantUriPermissions="true"
|
|
||||||
android:multiprocess="true"
|
|
||||||
android:readPermission="${applicationId}.permission.READ_ATTACHMENT"/>
|
|
||||||
|
|
||||||
<provider
|
|
||||||
android:name=".provider.MessageProvider"
|
|
||||||
android:authorities="${applicationId}.messageprovider"
|
|
||||||
android:exported="true"
|
|
||||||
android:grantUriPermissions="true"
|
|
||||||
android:multiprocess="true"
|
|
||||||
android:readPermission="${applicationId}.permission.READ_MESSAGES"
|
|
||||||
android:writePermission="${applicationId}.permission.DELETE_MESSAGES"/>
|
|
||||||
|
|
||||||
<provider
|
|
||||||
android:name=".provider.EmailProvider"
|
|
||||||
android:authorities="${applicationId}.provider.email"
|
|
||||||
android:exported="false"/>
|
|
||||||
|
|
||||||
<provider
|
|
||||||
android:name=".provider.K9FileProvider"
|
|
||||||
android:authorities="${applicationId}.fileprovider"
|
|
||||||
android:exported="false"
|
|
||||||
android:grantUriPermissions="true">
|
|
||||||
|
|
||||||
<meta-data
|
|
||||||
android:name="android.support.FILE_PROVIDER_PATHS"
|
|
||||||
android:resource="@xml/allowed_file_provider_paths" />
|
|
||||||
|
|
||||||
</provider>
|
|
||||||
|
|
||||||
</application>
|
</application>
|
||||||
</manifest>
|
</manifest>
|
0
MODULE_LICENSE_APACHE2
Normal file
83
README.md
@ -1,83 +0,0 @@
|
|||||||
# K-9 Mail
|
|
||||||
[![Build Status](https://k9mail.ci.cloudbees.com/job/master/badge/icon)](https://k9mail.ci.cloudbees.com/job/master/)
|
|
||||||
[![Join the chat](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/k9mail/k-9)
|
|
||||||
|
|
||||||
K-9 Mail is an open-source email client for Android.
|
|
||||||
|
|
||||||
|
|
||||||
## Download
|
|
||||||
|
|
||||||
K-9 Mail can be downloaded from a couple of sources:
|
|
||||||
|
|
||||||
- [Google Play](https://play.google.com/store/apps/details?id=com.fsck.k9)
|
|
||||||
- [F-Droid](https://f-droid.org/repository/browse/?fdid=com.fsck.k9)
|
|
||||||
- [Github Releases](https://github.com/k9mail/k-9/releases)
|
|
||||||
- [Amazon Appstore for Android](http://www.amazon.com/dp/B004JK61K0)
|
|
||||||
|
|
||||||
You might also be interested in becoming a [beta tester](https://github.com/k9mail/k-9/wiki/BetaTester)
|
|
||||||
or an [alpha tester](https://github.com/k9mail/k-9/wiki/AlphaTester) to get an early look at new versions.
|
|
||||||
|
|
||||||
|
|
||||||
## Release Notes
|
|
||||||
|
|
||||||
Check out the [Release Notes](https://github.com/k9mail/k-9/wiki/ReleaseNotes) to find out what changed
|
|
||||||
in each version of K-9 Mail.
|
|
||||||
|
|
||||||
|
|
||||||
## Need Help?
|
|
||||||
|
|
||||||
If the app is not behaving like it should, you might find these resources helpful:
|
|
||||||
|
|
||||||
- [User Manual](https://github.com/k9mail/k-9/wiki/Manual)
|
|
||||||
- [Frequently Asked Questions](https://github.com/k9mail/k-9/wiki/FrequentlyAskedQuestions)
|
|
||||||
- [Support Forum/Mailing List](http://groups.google.com/group/k-9-mail)
|
|
||||||
- [Google+ Community](https://plus.google.com/communities/109228641058741937099)
|
|
||||||
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
Interested in helping to translate K-9 Mail? Contribute here:
|
|
||||||
|
|
||||||
https://www.transifex.com/projects/p/k9mail/
|
|
||||||
|
|
||||||
|
|
||||||
## Contributing
|
|
||||||
|
|
||||||
Please fork this repository and contribute back using [pull requests](https://github.com/k9mail/k-9/pulls).
|
|
||||||
|
|
||||||
Any contributions, large or small, major features, bug fixes, unit/integration tests are welcomed and appreciated
|
|
||||||
but will be thoroughly reviewed and discussed.
|
|
||||||
Please make sure you read the [Code Style Guidelines](https://github.com/k9mail/k-9/wiki/CodeStyle).
|
|
||||||
|
|
||||||
|
|
||||||
## Communication
|
|
||||||
|
|
||||||
Aside from discussing changes in [pull requests](https://github.com/k9mail/k-9/pulls) and
|
|
||||||
[issues](https://github.com/k9mail/k-9/issues) we use the following communication services:
|
|
||||||
|
|
||||||
- IRC chat, [#k-9 on the Freenode network](http://webchat.freenode.net/?channels=%23k-9)
|
|
||||||
- [Gitter](https://gitter.im/k9mail/k-9)
|
|
||||||
- [Developer mailing list](https://groups.google.com/forum/#!forum/k-9-dev)
|
|
||||||
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
|
|
||||||
|
|
||||||
## Sponsors
|
|
||||||
|
|
||||||
CloudBees' [FOSS program](https://www.cloudbees.com/resources/foss) allows us to use their DEV@cloud service for free.
|
|
||||||
|
|
||||||
![built on DEV@cloud](https://www.cloudbees.com/sites/default/files/styles/large/public/Button-Built-on-CB-1.png)
|
|
||||||
|
|
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 173 B |
Before Width: | Height: | Size: 130 B After Width: | Height: | Size: 130 B |
Before Width: | Height: | Size: 145 B After Width: | Height: | Size: 145 B |
Before Width: | Height: | Size: 233 B After Width: | Height: | Size: 233 B |
Before Width: | Height: | Size: 248 B After Width: | Height: | Size: 248 B |
Before Width: | Height: | Size: 132 B After Width: | Height: | Size: 132 B |
Before Width: | Height: | Size: 141 B After Width: | Height: | Size: 141 B |
Before Width: | Height: | Size: 179 B After Width: | Height: | Size: 179 B |
Before Width: | Height: | Size: 182 B After Width: | Height: | Size: 182 B |
Before Width: | Height: | Size: 186 B After Width: | Height: | Size: 186 B |
Before Width: | Height: | Size: 166 B After Width: | Height: | Size: 166 B |
Before Width: | Height: | Size: 154 B After Width: | Height: | Size: 154 B |
Before Width: | Height: | Size: 183 B After Width: | Height: | Size: 183 B |
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 173 B |
Before Width: | Height: | Size: 240 B After Width: | Height: | Size: 240 B |
Before Width: | Height: | Size: 218 B After Width: | Height: | Size: 218 B |
Before Width: | Height: | Size: 196 B After Width: | Height: | Size: 196 B |
Before Width: | Height: | Size: 271 B After Width: | Height: | Size: 271 B |
Before Width: | Height: | Size: 148 B After Width: | Height: | Size: 148 B |
Before Width: | Height: | Size: 195 B After Width: | Height: | Size: 195 B |
Before Width: | Height: | Size: 176 B After Width: | Height: | Size: 176 B |
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 173 B |
Before Width: | Height: | Size: 262 B After Width: | Height: | Size: 262 B |
Before Width: | Height: | Size: 169 B After Width: | Height: | Size: 169 B |
Before Width: | Height: | Size: 175 B After Width: | Height: | Size: 175 B |
Before Width: | Height: | Size: 139 B After Width: | Height: | Size: 139 B |
Before Width: | Height: | Size: 185 B After Width: | Height: | Size: 185 B |
Before Width: | Height: | Size: 163 B After Width: | Height: | Size: 163 B |
Before Width: | Height: | Size: 252 B After Width: | Height: | Size: 252 B |
Before Width: | Height: | Size: 164 B After Width: | Height: | Size: 164 B |
Before Width: | Height: | Size: 160 B After Width: | Height: | Size: 160 B |
Before Width: | Height: | Size: 166 B After Width: | Height: | Size: 166 B |
Before Width: | Height: | Size: 224 B After Width: | Height: | Size: 224 B |
Before Width: | Height: | Size: 124 B After Width: | Height: | Size: 124 B |
Before Width: | Height: | Size: 181 B After Width: | Height: | Size: 181 B |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 238 B |
Before Width: | Height: | Size: 174 B After Width: | Height: | Size: 174 B |
Before Width: | Height: | Size: 153 B After Width: | Height: | Size: 153 B |
Before Width: | Height: | Size: 177 B After Width: | Height: | Size: 177 B |
Before Width: | Height: | Size: 159 B After Width: | Height: | Size: 159 B |
Before Width: | Height: | Size: 184 B After Width: | Height: | Size: 184 B |
Before Width: | Height: | Size: 175 B After Width: | Height: | Size: 175 B |
Before Width: | Height: | Size: 82 B After Width: | Height: | Size: 82 B |
Before Width: | Height: | Size: 194 B After Width: | Height: | Size: 194 B |
Before Width: | Height: | Size: 145 B After Width: | Height: | Size: 145 B |
Before Width: | Height: | Size: 169 B After Width: | Height: | Size: 169 B |
Before Width: | Height: | Size: 187 B After Width: | Height: | Size: 187 B |
Before Width: | Height: | Size: 170 B After Width: | Height: | Size: 170 B |
Before Width: | Height: | Size: 171 B After Width: | Height: | Size: 171 B |
Before Width: | Height: | Size: 133 B After Width: | Height: | Size: 133 B |
Before Width: | Height: | Size: 195 B After Width: | Height: | Size: 195 B |
Before Width: | Height: | Size: 242 B After Width: | Height: | Size: 242 B |
Before Width: | Height: | Size: 144 B After Width: | Height: | Size: 144 B |
Before Width: | Height: | Size: 132 B After Width: | Height: | Size: 132 B |
Before Width: | Height: | Size: 215 B After Width: | Height: | Size: 215 B |
Before Width: | Height: | Size: 222 B After Width: | Height: | Size: 222 B |
Before Width: | Height: | Size: 83 B After Width: | Height: | Size: 83 B |
Before Width: | Height: | Size: 129 B After Width: | Height: | Size: 129 B |
Before Width: | Height: | Size: 181 B After Width: | Height: | Size: 181 B |
Before Width: | Height: | Size: 233 B After Width: | Height: | Size: 233 B |
Before Width: | Height: | Size: 127 B After Width: | Height: | Size: 127 B |
Before Width: | Height: | Size: 132 B After Width: | Height: | Size: 132 B |
Before Width: | Height: | Size: 174 B After Width: | Height: | Size: 174 B |
Before Width: | Height: | Size: 130 B After Width: | Height: | Size: 130 B |
Before Width: | Height: | Size: 131 B After Width: | Height: | Size: 131 B |
Before Width: | Height: | Size: 145 B After Width: | Height: | Size: 145 B |
Before Width: | Height: | Size: 140 B After Width: | Height: | Size: 140 B |
Before Width: | Height: | Size: 119 B After Width: | Height: | Size: 119 B |
Before Width: | Height: | Size: 137 B After Width: | Height: | Size: 137 B |
Before Width: | Height: | Size: 188 B After Width: | Height: | Size: 188 B |
Before Width: | Height: | Size: 159 B After Width: | Height: | Size: 159 B |
Before Width: | Height: | Size: 123 B After Width: | Height: | Size: 123 B |
Before Width: | Height: | Size: 109 B After Width: | Height: | Size: 109 B |
Before Width: | Height: | Size: 108 B After Width: | Height: | Size: 108 B |
Before Width: | Height: | Size: 168 B After Width: | Height: | Size: 168 B |
Before Width: | Height: | Size: 104 B After Width: | Height: | Size: 104 B |
Before Width: | Height: | Size: 174 B After Width: | Height: | Size: 174 B |
Before Width: | Height: | Size: 165 B After Width: | Height: | Size: 165 B |
Before Width: | Height: | Size: 111 B After Width: | Height: | Size: 111 B |
Before Width: | Height: | Size: 126 B After Width: | Height: | Size: 126 B |
Before Width: | Height: | Size: 167 B After Width: | Height: | Size: 167 B |
Before Width: | Height: | Size: 125 B After Width: | Height: | Size: 125 B |
Before Width: | Height: | Size: 132 B After Width: | Height: | Size: 132 B |
Before Width: | Height: | Size: 243 B After Width: | Height: | Size: 243 B |
Before Width: | Height: | Size: 199 B After Width: | Height: | Size: 199 B |
Before Width: | Height: | Size: 172 B After Width: | Height: | Size: 172 B |
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 173 B |
Before Width: | Height: | Size: 145 B After Width: | Height: | Size: 145 B |
Before Width: | Height: | Size: 223 B After Width: | Height: | Size: 223 B |
Before Width: | Height: | Size: 94 B After Width: | Height: | Size: 94 B |
Before Width: | Height: | Size: 174 B After Width: | Height: | Size: 174 B |
Before Width: | Height: | Size: 110 B After Width: | Height: | Size: 110 B |