From 45d7352c328560f95e591616cbd4cad7ef9e5eca Mon Sep 17 00:00:00 2001 From: Loic Blot Date: Wed, 7 Dec 2016 08:41:31 +0100 Subject: [PATCH] Require Android 4.4 to restore messages --- .../activities/remote_account/RestoreMessagesActivity.java | 4 ++++ .../owncloud_sms/engine/ASyncSMSRecovery.java | 5 +++++ .../fr/unix_experience/owncloud_sms/engine/ASyncSMSSync.java | 2 +- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/main/java/fr/unix_experience/owncloud_sms/activities/remote_account/RestoreMessagesActivity.java b/src/main/java/fr/unix_experience/owncloud_sms/activities/remote_account/RestoreMessagesActivity.java index 8bb3009..d9fe065 100644 --- a/src/main/java/fr/unix_experience/owncloud_sms/activities/remote_account/RestoreMessagesActivity.java +++ b/src/main/java/fr/unix_experience/owncloud_sms/activities/remote_account/RestoreMessagesActivity.java @@ -35,6 +35,10 @@ public class RestoreMessagesActivity extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_restore_messages); + if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.KITKAT) { + // Change message to define Android 4.4 or greated is required + return; + } assert getIntent().getExtras() != null; diff --git a/src/main/java/fr/unix_experience/owncloud_sms/engine/ASyncSMSRecovery.java b/src/main/java/fr/unix_experience/owncloud_sms/engine/ASyncSMSRecovery.java index b195bc6..05c8f28 100644 --- a/src/main/java/fr/unix_experience/owncloud_sms/engine/ASyncSMSRecovery.java +++ b/src/main/java/fr/unix_experience/owncloud_sms/engine/ASyncSMSRecovery.java @@ -37,7 +37,12 @@ public interface ASyncSMSRecovery { @Override protected Void doInBackground(Void... params) { + // This feature is only available for Android 4.4 and greater + if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.KITKAT) { + return null; + } Log.i(ASyncSMSRecovery.TAG, "Starting background recovery"); + Long start = (long) 0; JSONObject obj = new OCSMSOwnCloudClient(_context, _account).retrieveSomeMessages(start, 500); try { diff --git a/src/main/java/fr/unix_experience/owncloud_sms/engine/ASyncSMSSync.java b/src/main/java/fr/unix_experience/owncloud_sms/engine/ASyncSMSSync.java index d2fb3d1..a23011b 100644 --- a/src/main/java/fr/unix_experience/owncloud_sms/engine/ASyncSMSSync.java +++ b/src/main/java/fr/unix_experience/owncloud_sms/engine/ASyncSMSSync.java @@ -20,7 +20,6 @@ package fr.unix_experience.owncloud_sms.engine; import android.accounts.Account; import android.accounts.AccountManager; import android.content.Context; -import android.net.Uri; import android.os.AsyncTask; import android.util.Log; @@ -41,6 +40,7 @@ public interface ASyncSMSSync { @Override protected Void doInBackground(Void... params) { Log.i(ASyncSMSSync.TAG, "Starting background sync"); + // Get ownCloud SMS account list AccountManager _accountMgr = AccountManager.get(_context); Account[] myAccountList = _accountMgr.getAccountsByType(_context.getString(R.string.account_type));