From 6bc1125d6edba5342388e87caa24c4a3aa6b4a3b Mon Sep 17 00:00:00 2001 From: Azuma Kasumi Date: Fri, 3 Feb 2023 17:51:13 +0900 Subject: [PATCH] =?UTF-8?q?=E8=A4=87=E6=95=B0=E3=82=A6=E3=82=A3=E3=82=B8?= =?UTF-8?q?=E3=82=A7=E3=83=83=E3=83=88=E3=81=AE=E3=83=88=E3=83=BC=E3=82=AF?= =?UTF-8?q?=E3=83=B3=E9=87=8D=E8=A4=87=E6=9B=B4=E6=96=B0=E9=98=B2=E6=AD=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/jp/atled/agileworks/AwApp.kt | 3 +++ .../view/ui/documentweb/DocumentWebFragment.kt | 4 ++++ .../agileworks/widget/AwAppWidgetRemoteViewsFactory.kt | 9 +++++++++ 3 files changed, 16 insertions(+) diff --git a/app/src/main/java/jp/atled/agileworks/AwApp.kt b/app/src/main/java/jp/atled/agileworks/AwApp.kt index 0ab8b5a8..ac154a4b 100644 --- a/app/src/main/java/jp/atled/agileworks/AwApp.kt +++ b/app/src/main/java/jp/atled/agileworks/AwApp.kt @@ -56,6 +56,9 @@ class AwApp : Application() { const val MISC_PREFERENCES = "miscPreferences" const val MISC_ACCEPTED_LICENSE_VER = "acceptedLicenseVer" const val MISC_NEXT_DOWNLOAD_NOTIFICATION_ID = "nextDownloadNotificationId" + const val WIDGET_PREFERENCES = "widgetPreferences" + const val WIDGET_UPDATE_FLG = "widgetUpdateFlg" + fun Baseurl() : String { return "https://${LoginRepository().loadServerUrl()}/${LoginRepository().loadServerContext()}/" diff --git a/app/src/main/java/jp/atled/agileworks/view/ui/documentweb/DocumentWebFragment.kt b/app/src/main/java/jp/atled/agileworks/view/ui/documentweb/DocumentWebFragment.kt index da13c190..edd2335f 100644 --- a/app/src/main/java/jp/atled/agileworks/view/ui/documentweb/DocumentWebFragment.kt +++ b/app/src/main/java/jp/atled/agileworks/view/ui/documentweb/DocumentWebFragment.kt @@ -162,6 +162,10 @@ class DocumentWebFragment : Fragment(), DocumentWebPresenter { override fun onPause() { super.onPause() + //ウィジェット更新フラグのクリア + val prefs = AwApp.instance.applicationContext.getSharedPreferences(AwApp.WIDGET_PREFERENCES, Context.MODE_PRIVATE) + prefs.edit().putBoolean(AwApp.WIDGET_UPDATE_FLG, false).apply() + AwApp.instance.requestApprovalRefresh() try{ stopNetworkCallback() diff --git a/app/src/main/java/jp/atled/agileworks/widget/AwAppWidgetRemoteViewsFactory.kt b/app/src/main/java/jp/atled/agileworks/widget/AwAppWidgetRemoteViewsFactory.kt index 241b75c0..7d713295 100644 --- a/app/src/main/java/jp/atled/agileworks/widget/AwAppWidgetRemoteViewsFactory.kt +++ b/app/src/main/java/jp/atled/agileworks/widget/AwAppWidgetRemoteViewsFactory.kt @@ -163,7 +163,16 @@ class AwAppWidgetRemoteViewsFactory(applicationContext: Context, intent: Intent? private fun getApprovalItems(): List? { try { + val prefs = AwApp.instance.applicationContext.getSharedPreferences(AwApp.WIDGET_PREFERENCES, Context.MODE_PRIVATE) + + while (prefs.getBoolean(AwApp.WIDGET_UPDATE_FLG, false)) { + //別のウィジェットが更新中の場合は待つ + } + + prefs.edit().putBoolean(AwApp.WIDGET_UPDATE_FLG, true).apply() val response = ApiClient.instance.getApproval().execute() + prefs.edit().putBoolean(AwApp.WIDGET_UPDATE_FLG, false).apply() + Log.d(TAG, "response.isSuccessful=" + response.isSuccessful.toString()) Log.d(TAG, "response.body()=" + response.body().toString()) if (response.isSuccessful) { -- GitLab