From aafcc36c4db4afc41984670db36042b5c148a750 Mon Sep 17 00:00:00 2001 From: Ricki Hirner Date: Fri, 24 Jun 2016 13:39:26 +0200 Subject: [PATCH] Version bump to 1.1.1.2 * allow ProGuard optimization to remove non-relevant bytecode from flavors * check flavors with direct comparison instead of .equals() to allwo optimizations * store cookies per HttpClient, and not per DAVdroid instance (allows multiple sessions for parallel syncs) * fetch translations from Transifex --- app/build.gradle | 4 +- app/proguard-rules.txt | 13 +++++-- .../java/at/bitfire/davdroid/HttpClient.java | 2 +- .../bitfire/davdroid/MemoryCookieStore.java | 2 - .../bitfire/davdroid/ui/AccountsActivity.java | 2 +- .../davdroid/ui/StartupDialogFragment.java | 2 +- app/src/main/res/values-da/strings.xml | 37 +++++++++++++++++++ app/src/main/res/values-zh-rCN/strings.xml | 28 ++++++++++++++ 8 files changed, 79 insertions(+), 11 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 7819316a..a33f2456 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -17,8 +17,8 @@ android { minSdkVersion 14 targetSdkVersion 23 - versionCode 106 - versionName "1.1.1.1" + versionCode 107 + versionName "1.1.1.2" buildConfigField "long", "buildTime", System.currentTimeMillis() + "L" } diff --git a/app/proguard-rules.txt b/app/proguard-rules.txt index 222e532c..50740031 100644 --- a/app/proguard-rules.txt +++ b/app/proguard-rules.txt @@ -1,12 +1,17 @@ # ProGuard usage for DAVdroid: -# shrinking yes - main reason for using ProGuard -# optimization no - too risky -# obfuscation no - DAVdroid is open-source -# preverification no (Android default) +# shrinking yes (main reason for using ProGuard) +# optimization yes +# obfuscation no (DAVdroid is open-source) +# preverification no -dontobfuscate +-optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/* +-optimizationpasses 5 +-allowaccessmodification +-dontpreverify + # ez-vcard -dontwarn ezvcard.io.json.** # JSON serializer (for jCards) not used -dontwarn freemarker.** # freemarker templating library (for creating hCards) not used diff --git a/app/src/main/java/at/bitfire/davdroid/HttpClient.java b/app/src/main/java/at/bitfire/davdroid/HttpClient.java index 5431f9ee..4c4dc9f7 100644 --- a/app/src/main/java/at/bitfire/davdroid/HttpClient.java +++ b/app/src/main/java/at/bitfire/davdroid/HttpClient.java @@ -90,7 +90,7 @@ public class HttpClient { builder.addNetworkInterceptor(userAgentInterceptor); // add cookie store for non-persistent cookies (some services like Horde use cookies for session tracking) - builder.cookieJar(MemoryCookieStore.INSTANCE); + builder.cookieJar(new MemoryCookieStore()); // add network logging, if requested if (logger.isLoggable(Level.FINEST)) { diff --git a/app/src/main/java/at/bitfire/davdroid/MemoryCookieStore.java b/app/src/main/java/at/bitfire/davdroid/MemoryCookieStore.java index 0f97faeb..1b1cf330 100644 --- a/app/src/main/java/at/bitfire/davdroid/MemoryCookieStore.java +++ b/app/src/main/java/at/bitfire/davdroid/MemoryCookieStore.java @@ -26,8 +26,6 @@ import okhttp3.HttpUrl; */ public class MemoryCookieStore implements CookieJar { - public static final MemoryCookieStore INSTANCE = new MemoryCookieStore(); - /** * Stored cookies. The multi-key consists of three parts: name, domain, and path. * This ensures that cookies can be overwritten. [RFC 6265 5.3 Storage Model] diff --git a/app/src/main/java/at/bitfire/davdroid/ui/AccountsActivity.java b/app/src/main/java/at/bitfire/davdroid/ui/AccountsActivity.java index 52600467..a0017798 100644 --- a/app/src/main/java/at/bitfire/davdroid/ui/AccountsActivity.java +++ b/app/src/main/java/at/bitfire/davdroid/ui/AccountsActivity.java @@ -96,7 +96,7 @@ public class AccountsActivity extends AppCompatActivity implements NavigationVie startActivity(new Intent(Intent.ACTION_VIEW, Constants.webUri.buildUpon().appendEncodedPath("forums/").build())); break; case R.id.nav_donate: - if (!App.FLAVOR_GOOGLE_PLAY.equals(BuildConfig.FLAVOR)) + if (BuildConfig.FLAVOR != App.FLAVOR_GOOGLE_PLAY) startActivity(new Intent(Intent.ACTION_VIEW, Constants.webUri.buildUpon().appendEncodedPath("donate/").build())); break; } diff --git a/app/src/main/java/at/bitfire/davdroid/ui/StartupDialogFragment.java b/app/src/main/java/at/bitfire/davdroid/ui/StartupDialogFragment.java index b134dcd2..aa7e4f2c 100644 --- a/app/src/main/java/at/bitfire/davdroid/ui/StartupDialogFragment.java +++ b/app/src/main/java/at/bitfire/davdroid/ui/StartupDialogFragment.java @@ -59,7 +59,7 @@ public class StartupDialogFragment extends DialogFragment { dialogs.add(StartupDialogFragment.instantiate(Mode.DEVELOPMENT_VERSION)); else { // store-specific information - if (App.FLAVOR_GOOGLE_PLAY.equals(BuildConfig.FLAVOR)) { + if (BuildConfig.FLAVOR == App.FLAVOR_GOOGLE_PLAY) { // Play store if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP && // only on Android <5 settings.getBoolean(HINT_GOOGLE_PLAY_ACCOUNTS_REMOVED, true)) // and only when "Don't show again" hasn't been clicked yet diff --git a/app/src/main/res/values-da/strings.xml b/app/src/main/res/values-da/strings.xml index 181ccf0c..5ff23881 100644 --- a/app/src/main/res/values-da/strings.xml +++ b/app/src/main/res/values-da/strings.xml @@ -83,8 +83,11 @@ For at synkronisere CalDAV-begivenheder med dine lokale kalendere, skal DAVdroid have adgang til dine kalendere. Anmod om kalenderadgang Kontakter: Adgangsrettigheder + DAVdroid er nødt til at have adgang til dine kontakter, hvis CardDAV-adressebøger skal kunne synkronisere med dine kontakter. Anmod om adgang til kontakter OpenTasks: Adgangsrettigheder + DAVdroid er nødt til at have adgang til OpenTasks, hvis CalDAV-opgaver skal kunne synkronisere med dine lokale opgavelister. + Anmod om adgang til OpenTasks Tilføj konto Log ind med emailadresse @@ -104,6 +107,7 @@ Opret konto Kontonavn Brug emailadressen som kontonavn, for Android vil bruge kontonavnet til ORGANIZER-feltet for aktiviteter, som du opretter. Du kan ikke have to konti med samme navn. + Gruppering af kontakter: Kontonavn påkrævet Konto kunne ikke oprettes Check konfiguration @@ -150,9 +154,24 @@ Synkroniser kun over WiFi Synkronisering er begrænset til WiFi-forbindelser + Forbindelsestypen har ingen betydning Begræsning til WiFi-SSID Vil kun blive synkroniseret over %s Alle WiFi-forbindelse vil kunne bruges + Indtast navnet på et WiFi-netværk (SSID) for at begrænse synkronisering til dette netværk, eller efterlad feltet blank for at acceptere alle WiFi-forbindelser. + CardDAV + Gruppering af kontakter + + GROUP_VCARDS + CATEGORIES + + + Grupper er særskilte VCards + Grupper er kategorier pr. kontakt + + Anvend RFC6868 for VCards + Dobbelte citationstegn kan bruges til at sætte parametre + Dobbelte citationstegn kan ikke bruges til at sætte parametre CalDAV Tidsafgrænsning for tidligere begivenheder Alle begivenheder vil blive synkroniseret @@ -162,6 +181,8 @@ Begivenheder, som er mere end dette antal dage gamle vil blive ignoreret (kan også være 0). Hvis feltet ikke er udfyldt, vil alle begivenheder blive synkroniseret. Administrer farver for kalender + Kalenderfarver administreres af DAVdroid + Kalenderfarver sættes ikke fra DAVdroid Versionsopdatering af DAVdroid Interne indstillinger er blevet opdateret. Problemer? Afinstaller DAVdroid og geninstaller. @@ -193,11 +214,27 @@ Vis detaljer Debug-info + DAVdroid-rettigheder + Yderligere adgang påkrævet Synkronisering af kalenderen lykkedes ikke (%s) Synkronisering af adressebogen lykkedes ikke (%s) Synkronisering af opgaver lykkedes ikke (%s) Fejl under %s Serverfejl under %s Databasefejl under %s + + forbereder synkronisering + checker understøttelse + behandler poster, der er slettet lokalt + behandler poster, der er blevet oprettet/redigeret + uploader poster, der er blevet oprettet/redigeret + checker synkroniseringsstatus + laver liste af lokale poster + laver lister af poster på server + sammenligner poster lokalt og på server + downloader poster på server + efterbehandler + gemmer synkroniseringsstatus + Fejl i brugernavn/adgangskode diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 27ca1444..45c92729 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -106,6 +106,7 @@ 创建账户 账户显示名 请使用你的邮箱地址作为帐户名,因为 Android 会将你创建的日历事件的创建者项设置为帐户名。你不能拥有多个帐户名相同的账户。 + 联系人分组方式 请输入账户名 账户无法创建 正在配置 @@ -157,6 +158,19 @@ 同步只在 %s 网络下进行 任何 WiFi 网络下均会同步 输入 WiFi 网络的名称 (SSID) ,即可限制同步只在此网络下进行。留空则不限制。 + CardDAV + 联系人分组方式 + + GROUP_VCARDS + CATEGORIES + + + 分为不同的 VCards + 每个联系人的分类 + + 为 VCards 启用 RFC6868 + 属性值中可使用双引号 + 属性值中不可使用双引号 CalDAV 旧日程时间限制 同步所有日程 @@ -206,5 +220,19 @@ %s时错误 %s时服务器错误 %s时数据库错误 + + 准备同步 + 请求功能列表 + 处理本地删除项目 + 准备创建/修改项目 + 上传创建/修改项目 + 检查同步状态 + 检查本地数据 + 检查远程数据 + 比较本地和远程数据 + 下载远程数据 + 预处理 + 保存同步状态 + 用户名或密码错误