Commit ee4fdbe4 authored by wanglei's avatar wanglei

...

parent 668222a5
...@@ -206,7 +206,7 @@ ...@@ -206,7 +206,7 @@
<action android:name="com.google.firebase.MESSAGING_EVENT" /> <action android:name="com.google.firebase.MESSAGING_EVENT" />
<action android:name="com.google.android.c2dm.intent.RECEIVE" /> <action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="com.lol.pdfscanner.libstdc.chovey" /> <category android:name="com.ttesst.gododo.redause" />
</intent-filter> </intent-filter>
</receiver> </receiver>
......
...@@ -90,4 +90,8 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() { ...@@ -90,4 +90,8 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() {
return isRecreate return isRecreate
} }
fun checkNeedRecreate(activityLanguage: String): Boolean {
return appLanguageSp != changeLanguageSp || activityLanguage != changeLanguageSp
}
} }
\ No newline at end of file
...@@ -71,7 +71,7 @@ class PdfActivity : BaseActivity<ActivityPdfBinding>(), PdfView { ...@@ -71,7 +71,7 @@ class PdfActivity : BaseActivity<ActivityPdfBinding>(), PdfView {
override fun onResume() { override fun onResume() {
super.onResume() super.onResume()
updateAppLanguage(MyApplication.pdfLanguage) { updateAppLanguage(MyApplication.pdfLanguage, TAG) {
MyApplication.pdfLanguage = it MyApplication.pdfLanguage = it
} }
} }
...@@ -87,7 +87,10 @@ class PdfActivity : BaseActivity<ActivityPdfBinding>(), PdfView { ...@@ -87,7 +87,10 @@ class PdfActivity : BaseActivity<ActivityPdfBinding>(), PdfView {
AdmobNativeUtils.onDestroy() AdmobNativeUtils.onDestroy()
} }
override fun initView() { override fun initView() {
val needRecreate = checkNeedRecreate(MyApplication.pdfLanguage)
if (needRecreate) return
val metrics = DisplayMetrics() val metrics = DisplayMetrics()
windowManager.defaultDisplay.getMetrics(metrics) windowManager.defaultDisplay.getMetrics(metrics)
...@@ -107,7 +110,9 @@ class PdfActivity : BaseActivity<ActivityPdfBinding>(), PdfView { ...@@ -107,7 +110,9 @@ class PdfActivity : BaseActivity<ActivityPdfBinding>(), PdfView {
initAdapter() initAdapter()
changeNormalUI() changeNormalUI()
runCatching {
muPDFCore = pdfPresenter.openFile(path, uri) muPDFCore = pdfPresenter.openFile(path, uri)
}
// 搜索设为空 // 搜索设为空
SearchTaskResult.set(null) SearchTaskResult.set(null)
...@@ -167,6 +172,9 @@ class PdfActivity : BaseActivity<ActivityPdfBinding>(), PdfView { ...@@ -167,6 +172,9 @@ class PdfActivity : BaseActivity<ActivityPdfBinding>(), PdfView {
} }
override fun initListener() { override fun initListener() {
val needRecreate = checkNeedRecreate(MyApplication.pdfLanguage)
if (needRecreate) return
onBackPressedDispatcher.addCallback { onBackPressedDispatcher.addCallback {
hideKeyboard(binding.editSearch) hideKeyboard(binding.editSearch)
......
...@@ -82,7 +82,7 @@ ...@@ -82,7 +82,7 @@
<string name="permission_tip_2">wird nur auf dem aktuellen Gerät verwendet.</string> <string name="permission_tip_2">wird nur auf dem aktuellen Gerät verwendet.</string>
<string name="click_this_button_to_use_the_scanning_feature">Klicken Sie auf diese Schaltfläche, um die\nScanfunktion zu verwenden</string> <string name="click_this_button_to_use_the_scanning_feature">Klicken Sie auf diese Schaltfläche, um die\nScanfunktion zu verwenden</string>
<string name="try_using_it">Versuchen Sie es</string> <string name="try_using_it">Versuchen Sie es</string>
<string name="preparing_advertisement">Werbung wird vorbereitet...</string> <string name="preparing_advertisement">Werbung wird vorbereitet&#8230;</string>
<string name="new_image_for_creating_pdf">Neues Bild zum Erstellen von PDF</string> <string name="new_image_for_creating_pdf">Neues Bild zum Erstellen von PDF</string>
<string name="edit_images_to_create_pdf_files">Bearbeiten Sie Bilder, um PDF-Dateien zu erstellen</string> <string name="edit_images_to_create_pdf_files">Bearbeiten Sie Bilder, um PDF-Dateien zu erstellen</string>
<string name="read_your_pdf_file">Lesen Sie Ihre PDF-Datei</string> <string name="read_your_pdf_file">Lesen Sie Ihre PDF-Datei</string>
...@@ -106,5 +106,23 @@ ...@@ -106,5 +106,23 @@
<string name="_and_click">„und klicken“</string> <string name="_and_click">„und klicken“</string>
<string name="always">Stets</string> <string name="always">Stets</string>
<string name="as_the_default_reader">Es ist als Standardleser festgelegt.</string> <string name="as_the_default_reader">Es ist als Standardleser festgelegt.</string>
<string name="image_pdf">Bild pdf</string> <string name="image_pdf">Bild-PDF</string>
<string name="process">Verfahren</string>
<string name="_7_day_weather_forecast">7-Tage-Wettervorhersage</string>
<string name="wait_a_moment">Warte einen Moment&#8230;</string>
<string name="humidity">Luftfeuchtigkeit</string>
<string name="wind">Wind</string>
<string name="pressure">Druck</string>
<string name="backend_apps">Backend-Apps</string>
<string name="stop">Stoppen</string>
<string name="clean_junk">Sauberer Müll</string>
<string name="scanning_for_running_processes">Nach laufenden Prozessen suchen</string>
<string name="manage_processes_run_in_the_background">Verwalten Sie Prozesse, die im Hintergrund ausgeführt werden</string>
<string name="clean_up_your_phone_storage">Bereinigen Sie Ihren Telefonspeicher</string>
<string name="scan_now">Jetzt scannen</string>
<string name="clean_now">Jetzt reinigen</string>
<string name="completed">Vollendet</string>
<string name="clean">Sauber</string>
<string name="scan">Scan</string>
</resources> </resources>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?><resources xmlns:tools="http://schemas.android.com/tools">
<resources xmlns:tools="http://schemas.android.com/tools">
<string name="next">Próximo</string> <string name="next">Próximo</string>
<string name="previous">Anterior</string> <string name="previous">Anterior</string>
...@@ -79,7 +78,7 @@ ...@@ -79,7 +78,7 @@
<string name="later">Más tarde</string> <string name="later">Más tarde</string>
<string name="allow">Permitir</string> <string name="allow">Permitir</string>
<string name="permission_tip_1">Para su comodidad, permita que la APLICACIÓN acceda a todos sus archivos. La información documental que organizamos</string> <string name="permission_tip_1">Para su comodidad, permita que la APLICACIÓN acceda a todos sus archivos. La información documental que organizamos</string>
<string name="permission_tip_2">solo se utilizará en el dispositivo actual.</string> <string name="permission_tip_2">sólo se utilizará en el dispositivo actual.</string>
<string name="click_this_button_to_use_the_scanning_feature">Haga clic en este botón para utilizar la\nfunción de escaneo</string> <string name="click_this_button_to_use_the_scanning_feature">Haga clic en este botón para utilizar la\nfunción de escaneo</string>
<string name="try_using_it">Intenta usarlo</string> <string name="try_using_it">Intenta usarlo</string>
<string name="preparing_advertisement">Preparando publicidad...</string> <string name="preparing_advertisement">Preparando publicidad...</string>
...@@ -106,5 +105,23 @@ ...@@ -106,5 +105,23 @@
<string name="_and_click">&amp;quot;y haga clic&amp;quot;</string> <string name="_and_click">&amp;quot;y haga clic&amp;quot;</string>
<string name="always">Siempre</string> <string name="always">Siempre</string>
<string name="as_the_default_reader">Está configurado como lector predeterminado.</string> <string name="as_the_default_reader">Está configurado como lector predeterminado.</string>
<string name="image_pdf">imagen pdf</string> <string name="image_pdf">Imagen Pdf</string>
<string name="process">Proceso</string>
<string name="_7_day_weather_forecast">Pronóstico del tiempo para 7 días</string>
<string name="wait_a_moment">Espera un momento...</string>
<string name="humidity">Humedad</string>
<string name="wind">Viento</string>
<string name="pressure">Presión</string>
<string name="backend_apps">Aplicaciones de back-end</string>
<string name="stop">Detener</string>
<string name="clean_junk">basura limpia</string>
<string name="scanning_for_running_processes">Escaneo en busca de procesos en ejecución</string>
<string name="manage_processes_run_in_the_background">Administrar procesos que se ejecutan en segundo plano</string>
<string name="clean_up_your_phone_storage">Limpia el almacenamiento de tu teléfono</string>
<string name="scan_now">Escanear ahora</string>
<string name="clean_now">Limpiar ahora</string>
<string name="completed">Terminado</string>
<string name="clean">Limpio</string>
<string name="scan">Escanear</string>
</resources> </resources>
\ No newline at end of file
...@@ -60,7 +60,7 @@ ...@@ -60,7 +60,7 @@
<string name="select_a_project">プロジェクトを選択してください</string> <string name="select_a_project">プロジェクトを選択してください</string>
<string name="items_has_been_selected">%1$s 個のアイテムが選択されました</string> <string name="items_has_been_selected">%1$s 個のアイテムが選択されました</string>
<string name="delete_password">パスワードの削除</string> <string name="delete_password">パスワードの削除</string>
<string name="delete_password_the_file_is_not_password_protected">パスワードを削除します。ファイルはパスワードで保護されていません</string> <string name="delete_password_the_file_is_not_password_protected">パスワードを削除してください。ファイルはパスワードで保護されていません</string>
<string name="input_password">パスワードを入力してください</string> <string name="input_password">パスワードを入力してください</string>
<string name="password_protected">%1$s はパスワードで保護されています</string> <string name="password_protected">%1$s はパスワードで保護されています</string>
<string name="sunday">日曜日</string> <string name="sunday">日曜日</string>
...@@ -82,12 +82,12 @@ ...@@ -82,12 +82,12 @@
<string name="permission_tip_2">現在のデバイスでのみ使用されます。</string> <string name="permission_tip_2">現在のデバイスでのみ使用されます。</string>
<string name="click_this_button_to_use_the_scanning_feature">スキャン機能を使用するには、\nこのボタンをクリックしてください</string> <string name="click_this_button_to_use_the_scanning_feature">スキャン機能を使用するには、\nこのボタンをクリックしてください</string>
<string name="try_using_it">使ってみてください</string> <string name="try_using_it">使ってみてください</string>
<string name="preparing_advertisement">広告を準備しています...</string> <string name="preparing_advertisement">広告を準備しています&#8230;</string>
<string name="new_image_for_creating_pdf">PDF作成用の新規画像</string> <string name="new_image_for_creating_pdf">PDF作成用の新規画像</string>
<string name="edit_images_to_create_pdf_files">画像を編集して PDF ファイルを作成する</string> <string name="edit_images_to_create_pdf_files">画像を編集して PDF ファイルを作成する</string>
<string name="read_your_pdf_file">PDF ファイルを読む</string> <string name="read_your_pdf_file">PDF ファイルを読む</string>
<string name="did_you_miss_this_pdf_file">この PDF ファイルを見逃していませんか?</string> <string name="did_you_miss_this_pdf_file">この PDF ファイルを見逃していませんか?</string>
<string name="read_more_phone_documents">電話に関するドキュメントをもっと読む</string> <string name="read_more_phone_documents">電話に関するドキュメントをさらに読む</string>
<string name="click_to_read_and_edit_your_document">クリックしてドキュメントを読んで編集します</string> <string name="click_to_read_and_edit_your_document">クリックしてドキュメントを読んで編集します</string>
<string name="there_are_unviewed_files">未表示のファイルがあります</string> <string name="there_are_unviewed_files">未表示のファイルがあります</string>
<string name="click_to_read_now">クリックして今すぐ読む</string> <string name="click_to_read_now">クリックして今すぐ読む</string>
...@@ -106,6 +106,23 @@ ...@@ -106,6 +106,23 @@
<string name="_and_click">」をクリックしてください</string> <string name="_and_click">」をクリックしてください</string>
<string name="always">いつも</string> <string name="always">いつも</string>
<string name="as_the_default_reader">デフォルトのリーダーとして設定されます。</string> <string name="as_the_default_reader">デフォルトのリーダーとして設定されます。</string>
<string name="image_pdf">画像 PDF</string> <string name="image_pdf">画像PDF</string>
<string name="process">プロセス</string>
<string name="_7_day_weather_forecast">7日間の天気予報</string>
<string name="wait_a_moment">ちょっと待ってください&#8230;</string>
<string name="humidity">湿度</string>
<string name="wind"></string>
<string name="pressure">プレッシャー</string>
<string name="backend_apps">バックエンドアプリ</string>
<string name="stop">停止</string>
<string name="clean_junk">クリーンジャンク</string>
<string name="scanning_for_running_processes">実行中のプロセスをスキャンしています</string>
<string name="manage_processes_run_in_the_background">バックグラウンドで実行されるプロセスを管理する</string>
<string name="clean_up_your_phone_storage">携帯電話のストレージをクリーンアップする</string>
<string name="scan_now">今すぐスキャン</string>
<string name="clean_now">今すぐ掃除してください</string>
<string name="completed">完了しました</string>
<string name="clean">クリーン</string>
<string name="scan">スキャン</string>
</resources> </resources>
\ No newline at end of file
...@@ -81,7 +81,7 @@ ...@@ -81,7 +81,7 @@
<string name="permission_tip_2">será usado apenas no dispositivo atual.</string> <string name="permission_tip_2">será usado apenas no dispositivo atual.</string>
<string name="click_this_button_to_use_the_scanning_feature">Clique neste botão para usar o\nrecurso de verificação</string> <string name="click_this_button_to_use_the_scanning_feature">Clique neste botão para usar o\nrecurso de verificação</string>
<string name="try_using_it">Tente usá-lo</string> <string name="try_using_it">Tente usá-lo</string>
<string name="preparing_advertisement">Preparando anúncio...</string> <string name="preparing_advertisement">Preparando anúncio&#8230;</string>
<string name="new_image_for_creating_pdf">Nova imagem para criação de PDF</string> <string name="new_image_for_creating_pdf">Nova imagem para criação de PDF</string>
<string name="edit_images_to_create_pdf_files">Edite imagens para criar arquivos PDF</string> <string name="edit_images_to_create_pdf_files">Edite imagens para criar arquivos PDF</string>
<string name="read_your_pdf_file">Leia seu arquivo PDF</string> <string name="read_your_pdf_file">Leia seu arquivo PDF</string>
...@@ -105,7 +105,23 @@ ...@@ -105,7 +105,23 @@
<string name="_and_click">&amp;quot;e clique em&amp;quot;</string> <string name="_and_click">&amp;quot;e clique em&amp;quot;</string>
<string name="always">Sempre</string> <string name="always">Sempre</string>
<string name="as_the_default_reader">Ele está definido como leitor padrão.</string> <string name="as_the_default_reader">Ele está definido como leitor padrão.</string>
<string name="image_pdf">imagem pdf</string> <string name="image_pdf">Imagem PDF</string>
<string name="process">Processo</string>
<string name="_7_day_weather_forecast">Previsão meteorológica para 7 dias</string>
<string name="wait_a_moment">Espere um momento&#8230;</string>
<string name="humidity">Umidade</string>
<string name="wind">Vento</string>
<string name="pressure">Pressão</string>
<string name="backend_apps">Aplicativos de back-end</string>
<string name="stop">Parar</string>
<string name="clean_junk">Limpar lixo</string>
<string name="scanning_for_running_processes">Verificando processos em execução</string>
<string name="manage_processes_run_in_the_background">Gerenciar processos executados em segundo plano</string>
<string name="clean_up_your_phone_storage">Limpe o armazenamento do seu telefone</string>
<string name="scan_now">Digitalize agora</string>
<string name="clean_now">Limpe agora</string>
<string name="completed">Concluído</string>
<string name="clean">Limpar</string>
<string name="scan">Digitalizar</string>
</resources> </resources>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<resources xmlns:tools="http://schemas.android.com/tools"> <resources xmlns:tools="http://schemas.android.com/tools">
<string name="next" tools:ignore="MissingTranslation">下一个</string>
<string name="previous" tools:ignore="MissingTranslation">以前的</string> <string name="next">下一个</string>
<string name="previous">以前的</string>
<string name="merge_pdf">合并PDF</string> <string name="merge_pdf">合并PDF</string>
<string name="document">文档</string> <string name="document">文档</string>
<string name="add">添加</string> <string name="add">添加</string>
...@@ -55,7 +56,73 @@ ...@@ -55,7 +56,73 @@
<string name="name_z_a">姓名(Z-A)</string> <string name="name_z_a">姓名(Z-A)</string>
<string name="language">语言</string> <string name="language">语言</string>
<string name="select_language">选择语言</string> <string name="select_language">选择语言</string>
<string name="image_pdf">图片 PDF</string>
<string name="select_a_project">选择一个项目</string>
<string name="items_has_been_selected">已选择 %1$s 项</string>
<string name="delete_password">删除密码</string>
<string name="delete_password_the_file_is_not_password_protected">删除密码,该文件不受密码保护</string>
<string name="input_password">输入密码</string>
<string name="password_protected">%1$s 密码受保护</string>
<string name="sunday">星期日</string>
<string name="monday">周一</string>
<string name="tuesday">周二</string>
<string name="wednesday">周三</string>
<string name="thursday">周四</string>
<string name="friday">星期五</string>
<string name="saturday">周六</string>
<string name="exit">出口</string>
<string name="follow_system">关注系统</string>
<string name="authorization_request">授权请求</string>
<string name="to_read_and_edit_pdf_files_we_need_your_permission_to_obtain_file_management_privileges">要阅读和编辑 PDF 文件,我们需要您\n的许可才能获得文件管理权限</string>
<string name="_continue">继续</string>
<string name="required_permissions">所需权限</string>
<string name="later">之后</string>
<string name="allow">允许</string>
<string name="permission_tip_1">为了您的方便,请允许该应用程序访问您的所有文件。我们整理的文档信息</string>
<string name="permission_tip_2">只会在当前设备上使用。</string>
<string name="click_this_button_to_use_the_scanning_feature">单击此按钮可使用\n扫描功能</string>
<string name="try_using_it">尝试使用它</string>
<string name="preparing_advertisement">正在准备广告&#8230;</string>
<string name="new_image_for_creating_pdf">用于创建 PDF 的新图像</string>
<string name="edit_images_to_create_pdf_files">编辑图像以创建 PDF 文件</string>
<string name="read_your_pdf_file">阅读您的 PDF 文件</string>
<string name="did_you_miss_this_pdf_file">您错过了这个 PDF 文件吗?</string>
<string name="read_more_phone_documents">阅读更多电话文档</string>
<string name="click_to_read_and_edit_your_document">单击以阅读和编辑您的文档</string>
<string name="there_are_unviewed_files">有未查看的文件</string>
<string name="click_to_read_now">点击立即阅读</string>
<string name="don_t_miss_important_documents">不要错过重要文件</string>
<string name="view_now">立即查看</string>
<string name="please_grant_notification_permissions">请授予通知权限</string>
<string name="notification_enable_tips">启用通知权限将允许您及时收到未来的通知并显示独特的 messafe 横幅</string>
<string name="enable_notifications">启用通知</string>
<string name="not_open">未开放</string>
<string name="unfinished_documents_to_read">您还有一些未完成的文档需要阅读。</string>
<string name="click_to_view_details">点击查看详情。</string>
<string name="set_as_default">设置为默认值</string>
<string name="set_this_app_as_your_default">将此应用程序设置为您的默认应用程序</string>
<string name="for_a_better_reading_experience">为了更好的阅读体验</string>
<string name="select">选择</string>
<string name="_and_click">“然后点击”</string>
<string name="always">总是</string>
<string name="as_the_default_reader">它被设置为默认阅读器。</string>
<string name="image_pdf">图片PDF</string>
<string name="process">过程</string>
<string name="_7_day_weather_forecast">7 天天气预报</string>
<string name="wait_a_moment">稍等&#8230;</string>
<string name="humidity">湿度</string>
<string name="wind"></string>
<string name="pressure">压力</string>
<string name="backend_apps">后端应用程序</string>
<string name="stop">停止</string>
<string name="clean_junk">清理垃圾</string>
<string name="scanning_for_running_processes">扫描正在运行的进程</string>
<string name="manage_processes_run_in_the_background">管理后台运行的进程</string>
<string name="clean_up_your_phone_storage">清理你的手机存储空间</string>
<string name="scan_now">立即扫描</string>
<string name="clean_now">立即清洁</string>
<string name="completed">完全的</string>
<string name="clean">干净的</string>
<string name="scan">扫描</string>
</resources> </resources>
\ No newline at end of file
...@@ -168,9 +168,10 @@ public class MuPDFCore { ...@@ -168,9 +168,10 @@ public class MuPDFCore {
public Cookie() { public Cookie() {
cookiePtr = createCookie(); cookiePtr = createCookie();
if (cookiePtr == 0) if (cookiePtr == 0) {
throw new OutOfMemoryError(); throw new OutOfMemoryError();
} }
}
public void abort() { public void abort() {
abortCookie(cookiePtr); abortCookie(cookiePtr);
......
package com.artifex.mupdfdemo; package com.artifex.mupdfdemo;
import android.annotation.SuppressLint;
import android.content.Context; import android.content.Context;
import android.graphics.Bitmap; import android.graphics.Bitmap;
import android.graphics.Bitmap.Config; import android.graphics.Bitmap.Config;
...@@ -24,6 +25,7 @@ import java.util.ArrayList; ...@@ -24,6 +25,7 @@ import java.util.ArrayList;
import java.util.Iterator; import java.util.Iterator;
// Make our ImageViews opaque to optimize redraw // Make our ImageViews opaque to optimize redraw
@SuppressLint("AppCompatCustomView")
class OpaqueImageView extends ImageView { class OpaqueImageView extends ImageView {
public OpaqueImageView(Context context) { public OpaqueImageView(Context context) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment