Show JB Workaround info when installed from Google Play

pull/2/head
rfc2822 10 years ago
parent e38feed08b
commit ea94fbee72

@ -2,14 +2,28 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="20dp"
tools:context=".MainActivity" >
<TextView
android:id="@+id/text_info"
android:layout_width="wrap_content"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="20dp"
android:linksClickable="true"
android:textAppearance="?android:attr/textAppearanceMedium" />
android:orientation="vertical" >
</ScrollView>
<TextView
android:id="@+id/text_workaround"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:visibility="gone"
android:linksClickable="true" />
<TextView
android:id="@+id/text_info"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:linksClickable="true"
android:textAppearance="?android:attr/textAppearanceMedium" />
</LinearLayout>
</ScrollView>

@ -50,7 +50,7 @@
<EditText
android:id="@+id/userName"
android:layout_gravity="fill_horizontal"
android:inputType="textNoSuggestions"
android:inputType="textNoSuggestions|textEmailAddress"
android:text="" />
<TextView

@ -29,18 +29,36 @@
<string name="davdroid_help">Hilfe zu DAVdroid</string>
<string name="show_sync_settings">Sync-Konten anzeigen</string>
<string name="show_website">DAVdroid-Website</string>
<string name="html_info"><![CDATA[
<h1>Willkommen bei DAVdroid!</h1>
<string name="html_main_workaround"><![CDATA[
<p>Vielen Dank, dass Sie DAVdroid im Play Store erworben haben und das Projekt dadurch unterstützen.
Leider gibt es derzeit zwei Probleme, die vom Play Store verursacht werden:</p>
<h2>1. DAVdroid-Accounts verschwinden nach einem Neustart</h2>
<p>Möglicherweise <strong>verschwinden alle Ihre DAVdroid-Accounts samt Kontakten und Terminen nach einem Neustart</strong>
des Geräts. Die Ursache ist ein <a href="https://code.google.com/p/android/issues/detail?id=34880">Fehler in Android</a>,
der zur irrtümlichen Entfernung von Accounts von Bezahlapps bei einem Neustart führt, da die Prüfung auf verwaiste
und damit zu löschende Accounts schon *vor* dem Entschlüsseln der App erfolgt.</p>
<p>Betroffene Benutzer*Innen:<br/>
* alle mit Android 4.1, die DAVdroid über Play Store bezogen haben;<br/>
* einige mit Android 4.2, die DAVdroid über Play Store bezogen und bestimmte Geräte haben (zB die meisten Samsung-Geräte)</p>
<h2>2. DAVdroid-Accounts verschwinden nach einer DAVdroid-Aktualisierung</h2>
<p>Möglicherweise <strong>verschwinden alle Ihre DAVdroid-Accounts samt Kontakten und Terminen während eines
DAVdroid-Updates</strong>, das von Play Store durchgeführt wird. Die Ursache ist ein
<a href="https://code.google.com/p/android/issues/detail?id=66905">anderer Fehler in Android</a>,
der zur irrtümlichen Entfernung von Accounts von Bezahlapps bei der Aktualisierung dieser Apps führt.</p>
<p>Betroffene Benutzer*Innen:<br/>
einige mit Android 4.4.2, die DAVdroid über Play Store bezogen haben (bekannt sind Nexus-Geräte und Moto G)</p>
<p><strong>Sollten Sie von einem dieser Fehler betroffen sein, <a href="market://details?id=at.bitfire.davdroid.jbworkaround">installieren
Sie den DAVdroid JB Workaround</a>.</strong></p>
]]></string>
<string name="html_main_info"><![CDATA[
<h1>Willkommen bei DAVdroid/%s!</h1>
<p>DAVdroid ist ein Android 4+-CalDAV/CardDAV-Sync-Adapter. Um ihn zu verwenden, müssen Sie ein DAVdroid-Konto
für Ihren Server hinzufügen. Die Kontakte/Termine werden dann automatisch in beide Richtungen synchronisiert.</p>
<p>Wenn Sie <a href="https://play.google.com/store/apps/details?id=at.bitfire.davdroid">DAVdroid über den
Play-Store bezogen haben</a> und Android 4.1 oder Samsung-Geräte (wie zB das Galaxy Note, Note 10.1, S2, S3, S4, …)
benutzen, müssen Sie möglicherweise den
<a href="https://play.google.com/store/apps/details?id=at.bitfire.davdroid.jbworkaround">DAVdroid JB Workaround</a>
installieren, um Datenverlust beim Neustart zu vermeiden (dies ist ein Android/Play Store-Bug).</p>
<p>Wenn Sie CyanogenMod benutzen, muss die "Datenschutz"-Funktion für DAVdroid deaktiviert sein, da DAVdroid sonst
keinen Zugriff auf die Kontakte und Kalendar hat und auch nicht synchronisieren kann.</p>
@ -60,17 +78,18 @@
<a href="https://f-droid.org/app/at.bitfire.davdroid">über F-Droid bezogen werden</a>.</p>
<p>Es ist jedoch viel Arbeit, die App zu entwickeln und besser zu machen. Daher haben wir uns entschlossen, sie
auch gegen eine kleine Gebühr in die Stores (Google Play, <a href="samsungapps://ProductDetail/at.bitfire.davdroid">Samsung Store</a>)
zu stellen. Wenn Sie das Projekt unterstützen wollen, können Sie
auch gegen eine kleine Gebühr in die kommerziellen App-Stores zu stellen. Wenn Sie das Projekt unterstützen wollen, können Sie
<a href="http://davdroid.bitfire.at/donate?pk_campaign=davdroid-app&amp;pk_kwd=main-activity">für DAVdroid spenden</a> oder die App kaufen.</p>
<h1>Lizenz</h1>
<p>Copyright (c) 2013 Richard Hirner (<a href="http://www.bitfire.at">bitfire web engineering</a>), alle Rechte
<p>Copyright (c) 2013 2014 Richard Hirner (<a href="http://www.bitfire.at">bitfire web engineering</a>), alle Rechte
vorbehalten. Dieses Programm ist freie Software. Sie können es unter den Bedingungen der <a href="http://www.gnu.org/licenses/gpl.html">GNU
General Public License Version 3</a>, wie von der Free Software Foundation veröffentlicht, weitergeben und/oder modifizieren.
Sofern Google Play oder Samsung Store andere Bedingungen benötigen, gelten für über den jeweiligen Markt heruntergeladene
Apps diese Bedingungen.</p>
<p>Übersetzungen: Französisch von Unbekannt, Spanisch von <a href="https://github.com/xphnx">@xphnx</a></p>
<h2>Benutzte Bibliotheken</h2>
<p>
* <a href="http://ical4j.sourceforge.net/">iCal4j<a> (<a href="http://sourceforge.net/p/ical4j/ical4j/ci/default/tree/LICENSE">New BSD License</a>)<br/>

@ -37,16 +37,11 @@
<string name="davdroid_help">Ayuda de DAVdroid</string>
<string name="show_sync_settings">Administrar las cuentas sincronizadas</string>
<string name="show_website">Sitio web de DAVdroid</string>
<string name="html_info"><![CDATA[
<h1>¡Bienvenido a DAVdroid!</h1>
<string name="html_main_info"><![CDATA[
<h1>¡Bienvenido a DAVdroid/%s!</h1>
<p>DAVdroid es un adaptador de sincronización entre Android 4+ y CalDAV/CardDAV. Para usarlo, simplemente añade una cuenta DAVdroid para tu servidor de CalDAV/CardDAV, así tus contactos y eventos serán sincronizados en ambas direcciones.</p>
<p>Si has adquirido <a href="https://play.google.com/store/apps/details?id=at.bitfire.davdroid">DAVdroid en
Play Store</a> y usas Android 4.1 o un dispositivo Samsung (por ejemplo, un Galaxy Note, un Note 10.1, o los S2, S3, S4, …)
deberás instalar <a href="https://play.google.com/store/apps/details?id=at.bitfire.davdroid.jbworkaround">DAVdroid JB Workaround</a>
para evitar que se pierdan datos al arrancar el sistema (es un bug de Android/Play Store).</p>
<p>Si usas CyanogenMod, debes desactivar "Privacy Guard" para DAVdroid. De otro modo, DAVdroid no tendrá autorización para acceder y sincronizar tus contactos y eventos.</p>
<p>Para más información, por favor lee la <a href="http://davdroid.bitfire.at?pk_campaign=davdroid-app&amp;pk_kwd=main-activity">página de DAVdroid</a>.
@ -60,12 +55,12 @@
<p>DAVdroid ha sido diseñado como un proyecto de código abierto desde sus inicios. Siempre es posible compilar la app por ti mismo y usarla de forma gratuita sin ninguna obligación. El código fuente está <a href="https://github.com/rfc2822/davdroid">disponible en Github</a>, y puedes <a href="https://f-droid.org/app/at.bitfire.davdroid">descargar la app desde F-droid</a>.</p>
<p>Sin embargo, hay mucho trabajo detrás de la creación de esta aplicación, así que hemos decidido ponerla en las tiendas (Google Play,
<a href="http://apps.samsung.com/earth/topApps/topAppsDetail.as?productId=000000665458">Samsung Store</a>) a cambio de un pequeño pago.
Samsung Store) a cambio de un pequeño pago.
Si quieres apoyar este proyecto, por favor piensa en <a href="http://davdroid.bitfire.at/donate?pk_campaign=davdroid-app&amp;pk_kwd=main-activity">hacer una donación a DAVdroid</a>
o en comprar la app.</p>
<h1>Licencia</h1>
<p>Copyright (c) 2013 Richard Hirner (<a href="http://www.bitfire.at">bitfire web engineering</a>). Todos los derechos reservados.
<p>Copyright (c) 2013 2014 Richard Hirner (<a href="http://www.bitfire.at">bitfire web engineering</a>). Todos los derechos reservados.
Este programa y los materiales que la acompañan está disponible bajo las condiciones de la GNU Public License v3.0 que acompaña a esta distribución, y está a tu disposición en <a
href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a>. En lo relativo a Google Play or Samsung requieren otras condiciones, éstas han sido descargadas a través de estos servicios.</p>

@ -37,17 +37,12 @@
<string name="davdroid_help">Aide de DAVdroid</string>
<string name="show_sync_settings">Gérer les comptes synchronisés</string>
<string name="show_website">Site Web de DAVdroid</string>
<string name="html_info"><![CDATA[
<h1>Bienvenue dans DAVdroid!</h1>
<string name="html_main_info"><![CDATA[
<h1>Bienvenue dans DAVdroid/%s!</h1>
<p>DAVdroid est un connecteur de synhronisation entre Android 4+ et CalDAV/CardDAV. Pour l\'utiliser, il suffit d\'ajouter un compte DAVdroid
pour votre serveur CalDAV/CardDAV, et vos contacts/évènements seront synchronisés dans les deux sens.</p>
<p>Si vous avez acheté <a href="https://play.google.com/store/apps/details?id=at.bitfire.davdroid">DAVdroid via
Play Store</a> et que vous utilisez Android 4.1 ou des appareils Samsung (par exemlple Galaxy Note, Note 10.1, S2, S3, S4, ...)
vous devez installer <a href="https://play.google.com/store/apps/details?id=at.bitfire.davdroid.jbworkaround">l\'application DAVdroid JB Workaround</a>
pour éviter la perte de données en cas de redémarrage(c\'est un bug de Android/Play Store).</p>
<p>Si vous utilisez CyanogenMod, "Privacy Guard" doit être désactivé pour DAVdroid. Sinon DAVdroid ne sera pas en mesure d\'accéder
et synchroniser vos contacts et évènements</p>
@ -66,11 +61,11 @@
<a href="https://f-droid.org/app/at.bitfire.davdroid">télécharger l\'application sur F-droid</a>.</p>
<p>Néanmoins étant donné que créer cette application nécessite du travail, nous avons décidé de la mettre sur les Stores (Google Play,
<a href="http://apps.samsung.com/earth/topApps/topAppsDetail.as?productId=000000665458">Samsung Store</a>) pour un faible coût.
Samsung Store) pour un faible coût.
Si vous voulez aider ce projet <a href="http://davdroid.bitfire.at/donate?pk_campaign=davdroid-app&amp;pk_kwd=main-activity">faites un don à DAVdroid</a> ou achetez le</p>
<h1>License</h1>
<p>Copyright (c) 2013 Richard Hirner (<a href="http://www.bitfire.at">bitfire web engineering</a>). All rights reserved.
<p>Copyright (c) 2013 2014 Richard Hirner (<a href="http://www.bitfire.at">bitfire web engineering</a>). All rights reserved.
Ce programme et les documents qui l\'accompagnent sont mis à disposition sous les termes de la Licence Public GNU v3.0 qui
accompagne cette distribution, et est disponible à <a
href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a>. En ce qui concerne Google Play ou Samsung Store, les conditions respectives s\'appliquent pour les versions qui sont téléchargées via ces services.</p>

@ -37,25 +37,40 @@
<string name="davdroid_help">DAVdroid Help</string>
<string name="show_sync_settings">Manage sync accounts</string>
<string name="show_website">DAVdroid Web site</string>
<string name="html_info"><![CDATA[
<h1>Welcome to DAVdroid!</h1>
<string name="html_main_workaround"><![CDATA[
<p>Thank you for buying DAVdroid via Google Play and thus supporting the project. Unfortunately, there are two issues with Google Play:</p>
<h2>1. Accounts may be gone after a reboot</h2>
<p>You may encounter the problem that all your <strong>DAVdroid accounts (including contacts and events) are gone
after rebooting your device</strong>. The reason is a <a href="https://code.google.com/p/android/issues/detail?id=34880">bug in Android</a>
that causes accounts of paid apps to be removed on start-up because the (encrypted) APK files are
loaded <i>after</i> checking for orphaned accounts.</p>
<p>Affected users:<br/>
* all Android 4.1 users who have got DAVdroid from Play Store;<br/>
* Android 4.2 users who have got DAVdroid from Play Store only with certain devices (for instance, most Samsung devices)</p>
<h2>2. Accounts may be gone after upgrading DAVdroid</h2>
<p>You may encounter the problem that all your <strong>DAVdroid accounts (including contacts and events) when Play Store
updates DAVdroid</strong>. The reason is <a href="https://code.google.com/p/android/issues/detail?id=66905">another bug in Android</a>
that causes accounts of paid apps to be removed when upgrading for a similar reason.</p>
<p>Affected users: some Android 4.4.2 users who have got DAVdroid from Play Store (known for Nexus devices and Moto G)</p>
<p><strong>If you\'re affected by one of these bugs, please <a href="market://details?id=at.bitfire.davdroid.jbworkaround">install the
DAVdroid JB Workaround</a>.</strong></p>
]]></string>
<string name="html_main_info"><![CDATA[
<h1>Welcome to DAVdroid/%s!</h1>
<p>DAVdroid is an Android 4+ sync adapter for CalDAV/CardDAV. To use it, just add a DAVdroid account
for your CalDAV/CardDAV server and your contacts/events will be synchronized in both directions.</p>
<p>If you have bought <a href="https://play.google.com/store/apps/details?id=at.bitfire.davdroid">DAVdroid via
Play Store</a> and use Android 4.1 or Samsung devices (for instance, Galaxy Note, Note 10.1, S2, S3, S4, …)
you may have to install the
<a href="https://play.google.com/store/apps/details?id=at.bitfire.davdroid.jbworkaround">DAVdroid JB Workaround</a>
to prevent data-loss on reboot (it\'s an Android/Play Store bug).</p>
<p>If you use CyanogenMod, "Privacy Guard" must be disabled for DAVdroid. Otherwise, DAVdroid is not allowed to access
and synchronize your contacts and events.</p>
<p>For more information, please see the <a href="http://davdroid.bitfire.at?pk_campaign=davdroid-app&amp;pk_kwd=main-activity">DAVdroid homepage</a>.
There\'s a <a href="http://davdroid.bitfire.at/configuration?pk_campaign=davdroid-app&amp;pk_kwd=main-activity">Setup guide</a>, too. DAVdroid respects
your privacy, see our <a href="http://davdroid.bitfire.at/privacy?pk_campaign=davdroid-app&amp;pk_kwd=main-activity">Privacy Policy</a>.</p>
<p>If you use CyanogenMod, "Privacy Guard" must be disabled for DAVdroid. Otherwise, DAVdroid is not allowed to access
and synchronize your contacts and events.</p>
<p><b>In case of problems, please read the <a href="http://davdroid.bitfire.at/configuration?pk_campaign=davdroid-app&amp;pk_kwd=main-activity">FAQ</a> first.
If you encounter a bug that is clearly related to DAVdroid, enter it on
<a href="https://github.com/rfc2822/davdroid">Github issues</a> instead of contacting us directly or giving a poor
@ -67,17 +82,19 @@
<a href="https://github.com/rfc2822/davdroid">available on Github</a>, and you can
<a href="https://f-droid.org/app/at.bitfire.davdroid">download the app on F-droid</a>.</p>
<p>However, it was much work to create this app, so we have decided to put it into the stores (Google Play,
<a href="http://apps.samsung.com/earth/topApps/topAppsDetail.as?productId=000000665458">Samsung Store</a>) for a small fee.
<p>However, it was much work to create this app, so we have decided to put it into the commercial stores for a small fee.
If you want to support this project, please consider <a href="http://davdroid.bitfire.at/donate?pk_campaign=davdroid-app&amp;pk_kwd=main-activity">donating to DAVdroid</a>
or purchasing it.</p>
<h1>License</h1>
<p>Copyright (c) 2013 Richard Hirner (<a href="http://www.bitfire.at">bitfire web engineering</a>). All rights reserved.
<p>Copyright (c) 2013 2014 Richard Hirner (<a href="http://www.bitfire.at">bitfire web engineering</a>). All rights reserved.
This program and the accompanying materials are made available under the terms of the GNU Public License v3.0 which
accompanies this distribution, and is available at <a
href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a>. As far as Google Play or Samsung
Store Store require other terms, the respective terms apply for versions that are downloaded via these services.</p>
href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a>. As far as Google Play, Samsung
Store, AndroidPit App Center or Amazon Appstore require other terms, the respective terms apply for versions
that are downloaded via these services.</p>
<p>Translations: French by unknown contributor, Spanish by <a href="https://github.com/xphnx">@xphnx</a></p>
<h2>Used third-party libraries</h2>
<p>
@ -86,6 +103,7 @@
* <a href="http://simple.sourceforge.net/">Simple XML Serialization</a> (<a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>)<br/>
* <a href="http://projectlombok.org/">Project Lombok</a> (<a href="http://opensource.org/licenses/mit-license.php">MIT License</a>)</p>
]]></string>
<string name="account_details">Account details</string>
<string name="account_name">Account name:</string>
<string name="account_name_hint">My CalDAV/CardDAV Account</string>

@ -20,6 +20,7 @@ import android.text.method.LinkMovementMethod;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends Activity {
@ -30,11 +31,16 @@ public class MainActivity extends Activity {
setContentView(R.layout.activity_main);
setTitle("DAVdroid " + Constants.APP_VERSION);
TextView tvWorkaround = (TextView)findViewById(R.id.text_workaround);
if (fromPlayStore()) {
tvWorkaround.setVisibility(View.VISIBLE);
tvWorkaround.setText(Html.fromHtml(getString(R.string.html_main_workaround)));
tvWorkaround.setMovementMethod(LinkMovementMethod.getInstance());
}
TextView tv = (TextView)findViewById(R.id.text_info);
tv.setText(Html.fromHtml(getString(R.string.html_info)));
tv.setMovementMethod(LinkMovementMethod.getInstance());
TextView tvInfo = (TextView)findViewById(R.id.text_info);
tvInfo.setText(Html.fromHtml(getString(R.string.html_main_info, Constants.APP_VERSION)));
tvInfo.setMovementMethod(LinkMovementMethod.getInstance());
}
@Override
@ -60,4 +66,13 @@ public class MainActivity extends Activity {
intent.setData(Uri.parse(Constants.WEB_URL_HELP + "&pk_kwd=main-activity"));
startActivity(intent);
}
private boolean fromPlayStore() {
try {
return "com.android.vending".equals(getPackageManager().getInstallerPackageName("at.bitfire.davdroid"));
} catch(IllegalArgumentException e) {
}
return false;
}
}

Loading…
Cancel
Save