diff --git a/app/src/main/java/com/hippo/ehviewer/ui/fragment/AboutFragment.java b/app/src/main/java/com/hippo/ehviewer/ui/fragment/AboutFragment.java
index c5f689a6f..a0eb28b65 100644
--- a/app/src/main/java/com/hippo/ehviewer/ui/fragment/AboutFragment.java
+++ b/app/src/main/java/com/hippo/ehviewer/ui/fragment/AboutFragment.java
@@ -19,18 +19,20 @@ package com.hippo.ehviewer.ui.fragment;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
+import android.content.Intent;
+import android.net.Uri;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceFragment;
import android.support.v7.app.AlertDialog;
+import android.util.Base64;
+import android.widget.TextView;
import android.widget.Toast;
-
-import com.hippo.ehviewer.Analytics;
import com.hippo.ehviewer.EhApplication;
import com.hippo.ehviewer.R;
-import com.hippo.ehviewer.Settings;
import com.hippo.ehviewer.ui.CommonOperations;
import com.hippo.util.AppHelper;
+import java.io.UnsupportedEncodingException;
public class AboutFragment extends PreferenceFragment
implements Preference.OnPreferenceClickListener {
@@ -49,14 +51,12 @@ public class AboutFragment extends PreferenceFragment
Preference checkForUpdate = findPreference(KEY_CHECK_FOR_UPDATES);
author.setSummary(getString(R.string.settings_about_author_summary).replace('$', '@'));
- donate.setSummary(getString(R.string.settings_about_donate_summary).replace('$', '@'));
author.setOnPreferenceClickListener(this);
donate.setOnPreferenceClickListener(this);
checkForUpdate.setOnPreferenceClickListener(this);
}
-
@Override
public boolean onPreferenceClick(Preference preference) {
String key = preference.getKey();
@@ -64,17 +64,51 @@ public class AboutFragment extends PreferenceFragment
AppHelper.sendEmail(getActivity(), EhApplication.getDeveloperEmail(),
"About EhViewer", null);
} else if (KEY_DONATE.equals(key)) {
- ClipboardManager cmb = (ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
- cmb.setPrimaryClip(ClipData.newPlainText(null, "seven332$163.com".replace('$', '@')));
- Toast.makeText(getActivity(), R.string.settings_about_donate_toast, Toast.LENGTH_SHORT).show();
-
- new AlertDialog.Builder(getActivity())
- .setTitle(R.string.settings_about_donate)
- .setMessage(getString(R.string.settings_about_donate_message).replace('$', '@'))
- .show();
+ showDonationDialog();
} else if (KEY_CHECK_FOR_UPDATES.equals(key)) {
CommonOperations.checkUpdate(getActivity(), true);
}
return true;
}
+
+ private void showDonationDialog() {
+ AlertDialog dialog = new AlertDialog.Builder(getActivity())
+ .setView(R.layout.dialog_donate)
+ .show();
+
+ String alipayStr = base64Decode("c2V2ZW4zMzJAMTYzLmNvbQ==");
+ TextView alipayText = dialog.findViewById(R.id.alipay_text);
+ alipayText.setText(alipayStr);
+ dialog.findViewById(R.id.alipay_copy).setOnClickListener(v -> copyToClipboard(alipayStr));
+
+ String paypalStr = base64Decode("aHR0cHM6Ly9wYXlwYWwubWUvc2V2ZW4zMzI=");
+ TextView paypalText = dialog.findViewById(R.id.paypal_text);
+ paypalText.setText(paypalStr);
+ dialog.findViewById(R.id.paypal_open).setOnClickListener(v -> openUrl(paypalStr));
+ dialog.findViewById(R.id.paypal_copy).setOnClickListener(v -> copyToClipboard(paypalStr));
+ }
+
+ private static String base64Decode(String encoded) {
+ byte[] bytes = Base64.decode(encoded, Base64.DEFAULT);
+ try {
+ return new String(bytes, "UTF-8");
+ } catch (UnsupportedEncodingException e) {
+ throw new IllegalStateException(e);
+ }
+ }
+
+ private void copyToClipboard(String text) {
+ ClipboardManager cmb = (ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
+ if (cmb != null) {
+ cmb.setPrimaryClip(ClipData.newPlainText(null, text));
+ Toast.makeText(getActivity(), R.string.settings_about_donate_copied, Toast.LENGTH_SHORT).show();
+ }
+ }
+
+ private void openUrl(String url) {
+ Intent intent = new Intent(Intent.ACTION_VIEW);
+ intent.setData(Uri.parse(url));
+ Intent chooser = Intent.createChooser(intent, "");
+ startActivity(chooser);
+ }
}
diff --git a/app/src/main/res/layout/dialog_donate.xml b/app/src/main/res/layout/dialog_donate.xml
new file mode 100644
index 000000000..668390965
--- /dev/null
+++ b/app/src/main/res/layout/dialog_donate.xml
@@ -0,0 +1,101 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 23da6655b..5a47dbcfe 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -469,9 +469,6 @@
Lizenzen
EhViewer wurde dank vieler Open Source-Projekte entwicklt.
Spenden
- Alipay: seven332$163.com
- Deine Spende hilft mir dabei, mehr gute Apps zu entwickln
- E-Mail-Addresse wurde zur Zwischenablage kopiert
Analyse aktivieren
Über die Analyse
Versionnummer
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index f0db155ad..279af1907 100644
--- a/app/src/main/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -479,9 +479,6 @@
Licencia
EhViewer es posible gracias a varios proyectos de código abierto
Donar
- Alipay: seven332$163.com
- Tu donación me ayuda a desarrollar más y mejores aplicaciones.\n\nAlipay: seven332$163.com
- Email copiado al portapapeles
Habilitar analytics
Acerca de analytics
Versión de compilación
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index 67a7a9014..4786f8683 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -506,9 +506,6 @@
Licence
EhViewer ne peut être né qu\'à grâce de beaucoup de projets Open Source.
Faire un don
- Alipay : seven332$163.com
- Votre donation me motive à développer plus de mieux applications.\n\nAlipay : seven332$163.com
- Adress Email copié à presse-papier
Activer analyse
A propos de l\'analyse
Numéro de version
diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml
index 986d41ceb..c2720177c 100644
--- a/app/src/main/res/values-ja/strings.xml
+++ b/app/src/main/res/values-ja/strings.xml
@@ -497,9 +497,6 @@
オープンソースライセンス
いろんなオープンソースプロジェクトなしで、EhViewerが生まれることはありません。
寄付
- Alipay:seven332$163.com
- ご寄付ありがとうございます。これからもいろんなアプリの開発を進めさせていただきます。\n\nAlipay:seven332$163.com
- メールアドレスがクリップボードにコピーされました
データ統計に参加
データ統計について
バージョン番号
diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml
index b033a67c2..272215585 100755
--- a/app/src/main/res/values-ko/strings.xml
+++ b/app/src/main/res/values-ko/strings.xml
@@ -500,8 +500,6 @@
라이선스
EhViewer는 많은 오픈 소스 프로젝트 덕분에 만들 수 있었습니다.
후원
- 후원해 주시면 더 좋은 앱을 만드는 데 도움이 됩니다.\n\nAlipay: seven332$163.com
- 이메일 주소를 클립보드에 복사했습니다.
데이터 분석 사용
데이터 분석 정보
빌드 버전
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index 305cc0545..15de97c50 100755
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -532,9 +532,12 @@
开源许可
EhViewer 的诞生离不开许多开源项目
捐赠
- 支付宝:seven332$163.com
- 你的捐赠能帮助我开发更多更好的应用。\n\n支付宝:seven332$163.com
- 邮箱地址已复制到剪切板
+ 你的捐赠不能为你带来特权,但能帮助我继续维护这个应用。
+ 支付宝
+ PayPal
+ 打开
+ 复制
+ 已复制
启用数据统计
关于数据统计
版本号
diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml
index 1a3236967..43045fc18 100755
--- a/app/src/main/res/values-zh-rHK/strings.xml
+++ b/app/src/main/res/values-zh-rHK/strings.xml
@@ -531,9 +531,12 @@
開源許可
EhViewer 的誕生離不開許多開源項目
捐贈
- 支付寶:seven332$163.com
- 你的捐贈能幫助我開發更多更好的應用。\n\n支付寶:seven332$163.com
- 郵箱地址已複製到剪切板
+ 你的捐贈不能為你帶來特權,但能幫助我繼續維護這個應用。
+ 支付寶
+ PayPal
+ 打開
+ 複製
+ 已複製
啟用數據統計
關於數據統計
版本號
diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml
index be4f041a8..7e83e36cd 100755
--- a/app/src/main/res/values-zh-rTW/strings.xml
+++ b/app/src/main/res/values-zh-rTW/strings.xml
@@ -531,9 +531,12 @@
授權
EhViewer 的誕生離不開許多開源專案
贊助
- 支付寶:seven332$163.com
- 你的贊助能幫助我開發更多更好的軟體。\n\n支付寶:seven332$163.com
- 已將電子信箱地址複製到剪貼簿
+ 你的贊助不能為你帶來特權,但能幫助我繼續維護這個應用。
+ 支付寶
+ PayPal
+ 開啟
+ 複製
+ 已複製
啟用資料統計
關於資料統計
版本號碼
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 0280d9a4d..4a91af567 100755
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -577,9 +577,12 @@
License
EhViewer is made possible by many open source projects
Donate
- Alipay: seven332$163.com
- Your donation can help me develop more and better applications.\n\nAlipay: seven332$163.com
- Email address copied to clipboard
+ Your donation can not bring you any privileges. But it helps me maintain this app.
+ Alipay
+ PayPal
+ Open
+ Copy
+ Copied
Enable analytics
About analytics
Build version