diff --git a/app/build.gradle b/app/build.gradle index 4dbc75ce9..de5239292 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -9,7 +9,7 @@ android { targetSdkVersion 27 versionCode 88 versionName "1.6.7-beta-1" - vectorDrawables.useSupportLibrary = true + } flavorDimensions "default" buildTypes { diff --git a/app/playstore/release/app-playstore-release-1.6.7-beta-3.apk b/app/playstore/release/app-playstore-release-1.6.7-beta-3.apk new file mode 100644 index 000000000..67a4dbcfd Binary files /dev/null and b/app/playstore/release/app-playstore-release-1.6.7-beta-3.apk differ diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/activities/BaseActivity.java b/app/src/main/java/fr/gouv/etalab/mastodon/activities/BaseActivity.java index 47e0ae469..aff328d23 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/activities/BaseActivity.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/activities/BaseActivity.java @@ -2,11 +2,15 @@ package fr.gouv.etalab.mastodon.activities; import android.annotation.SuppressLint; import android.support.v7.app.AppCompatActivity; +import android.util.Log; import org.conscrypt.Conscrypt; +import java.security.Provider; import java.security.Security; +import fr.gouv.etalab.mastodon.helper.Helper; + /** * Created by Thomas on 12/12/2017. * Base activity which updates security provider @@ -15,9 +19,15 @@ import java.security.Security; @SuppressLint("Registered") public class BaseActivity extends AppCompatActivity { static { - Security.insertProviderAt(Conscrypt.newProvider("GmsCore_OpenSSL"), 2); - Security.addProvider(Conscrypt.newProvider()); - + boolean isGmsCore_OpenSSL = false; + Provider[] providers = Security.getProviders(); + for(Provider provider: providers){ + if( provider.getName().equals("GmsCore_OpenSSL")) + isGmsCore_OpenSSL = true; + } + if( !isGmsCore_OpenSSL) + Security.addProvider(Security.getProvider("GmsCore_OpenSSL")); + Security.insertProviderAt(Conscrypt.newProvider("GmsCore_OpenSSL"), 1); } } diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/jobs/HomeTimelineSyncJob.java b/app/src/main/java/fr/gouv/etalab/mastodon/jobs/HomeTimelineSyncJob.java index 5b5729eec..9ab7aaf68 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/jobs/HomeTimelineSyncJob.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/jobs/HomeTimelineSyncJob.java @@ -37,6 +37,7 @@ import com.evernote.android.job.JobRequest; import org.conscrypt.Conscrypt; +import java.security.Provider; import java.security.Security; import java.util.List; import java.util.Set; @@ -78,8 +79,15 @@ public class HomeTimelineSyncJob extends Job implements OnRetrieveHomeTimelineSe } static { - Security.insertProviderAt(Conscrypt.newProvider("GmsCore_OpenSSL"), 2); - Security.addProvider(Conscrypt.newProvider()); + boolean isGmsCore_OpenSSL = false; + Provider[] providers = Security.getProviders(); + for(Provider provider: providers){ + if( provider.getName().equals("GmsCore_OpenSSL")) + isGmsCore_OpenSSL = true; + } + if( !isGmsCore_OpenSSL) + Security.addProvider(Security.getProvider("GmsCore_OpenSSL")); + Security.insertProviderAt(Conscrypt.newProvider("GmsCore_OpenSSL"), 1); } public static int schedule(boolean updateCurrent){ diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/jobs/NotificationsSyncJob.java b/app/src/main/java/fr/gouv/etalab/mastodon/jobs/NotificationsSyncJob.java index 008ac0254..002f2d9d5 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/jobs/NotificationsSyncJob.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/jobs/NotificationsSyncJob.java @@ -37,6 +37,7 @@ import com.evernote.android.job.JobRequest; import org.conscrypt.Conscrypt; +import java.security.Provider; import java.security.Security; import java.util.ArrayList; import java.util.List; @@ -69,8 +70,16 @@ public class NotificationsSyncJob extends Job implements OnRetrieveNotifications static final String NOTIFICATION_REFRESH = "job_notification"; static { - Security.insertProviderAt(Conscrypt.newProvider("GmsCore_OpenSSL"), 2); - Security.addProvider(Conscrypt.newProvider()); + boolean isGmsCore_OpenSSL = false; + Provider[] providers = Security.getProviders(); + for(Provider provider: providers){ + if( provider.getName().equals("GmsCore_OpenSSL")) + isGmsCore_OpenSSL = true; + } + if( !isGmsCore_OpenSSL) + Security.addProvider(Security.getProvider("GmsCore_OpenSSL")); + Security.insertProviderAt(Conscrypt.newProvider("GmsCore_OpenSSL"), 1); + } @NonNull diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/jobs/ScheduledTootsSyncJob.java b/app/src/main/java/fr/gouv/etalab/mastodon/jobs/ScheduledTootsSyncJob.java index 5a710fb86..9cd12f372 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/jobs/ScheduledTootsSyncJob.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/jobs/ScheduledTootsSyncJob.java @@ -23,6 +23,7 @@ import com.evernote.android.job.JobRequest; import org.conscrypt.Conscrypt; +import java.security.Provider; import java.security.Security; import java.util.Date; import java.util.concurrent.TimeUnit; @@ -45,8 +46,15 @@ public class ScheduledTootsSyncJob extends Job { public static final String SCHEDULED_TOOT = "job_scheduled_toot"; static { - Security.insertProviderAt(Conscrypt.newProvider("GmsCore_OpenSSL"), 2); - Security.addProvider(Conscrypt.newProvider()); + boolean isGmsCore_OpenSSL = false; + Provider[] providers = Security.getProviders(); + for(Provider provider: providers){ + if( provider.getName().equals("GmsCore_OpenSSL")) + isGmsCore_OpenSSL = true; + } + if( !isGmsCore_OpenSSL) + Security.addProvider(Security.getProvider("GmsCore_OpenSSL")); + Security.insertProviderAt(Conscrypt.newProvider("GmsCore_OpenSSL"), 1); } @NonNull