CI/CD failing.
**Describe the bug**
CI/CD is failing. 

**Expected behavior**
CI/CD should work without any issue. 



diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml
index 76262912c..15d2921a7 100644
--- a/.github/workflows/coverage.yml
+++ b/.github/workflows/coverage.yml
@@ -14,18 +14,19 @@ jobs:
 
   coverageReport:
     strategy:
+      max-parallel: 2
       matrix:
-        api-level: [21, 21, 30]
+        api-level: [21, 30, 21,30]
       fail-fast: false
     runs-on: macOS-latest
     steps:
       - name: checkout
-        uses: actions/checkout@v1
+        uses: actions/checkout@v3
         with:
           fetch-depth: 1
 
       - name: create instrumentation coverage
-        uses: ReactiveCircus/android-emulator-runner@v2.14.3
+        uses: ReactiveCircus/android-emulator-runner@v2.23.0
         with:
           api-level: ${{ matrix.api-level }}
           arch: x86_64
diff --git a/app/src/androidTest/AndroidManifest.xml b/app/src/androidTest/AndroidManifest.xml
index 3a75bc37f..db8066c1c 100644
--- a/app/src/androidTest/AndroidManifest.xml
+++ b/app/src/androidTest/AndroidManifest.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:tools="http://schemas.android.com/tools"
+  xmlns:android="http://schemas.android.com/apk/res/android"
   package="org.kiwix.kiwixmobile">
 
+  <application
+    android:usesCleartextTraffic="true"/>
   <uses-sdk tools:overrideLibrary="android_libs.ub_uiautomator" />
 </manifest>
diff --git a/app/src/androidTest/java/org/kiwix/kiwixmobile/BaseRobot.kt b/app/src/androidTest/java/org/kiwix/kiwixmobile/BaseRobot.kt
index 679e592e8..81c8a5f25 100644
--- a/app/src/androidTest/java/org/kiwix/kiwixmobile/BaseRobot.kt
+++ b/app/src/androidTest/java/org/kiwix/kiwixmobile/BaseRobot.kt
@@ -81,7 +81,7 @@ abstract class BaseRobot(
 
   private fun waitFor(
     findable: Findable,
-    timeout: Long = DEFAULT_WAIT
+    timeout: Long = VERY_LONG_WAIT
   ): UiObject2? =
     uiDevice.wait(Until.findObject(findable.selector(this)), timeout)
 
diff --git a/app/src/androidTest/java/org/kiwix/kiwixmobile/main/TopLevelDestinationRobot.kt b/app/src/androidTest/java/org/kiwix/kiwixmobile/main/TopLevelDestinationRobot.kt
index d12d6ac34..44bbab42c 100644
--- a/app/src/androidTest/java/org/kiwix/kiwixmobile/main/TopLevelDestinationRobot.kt
+++ b/app/src/androidTest/java/org/kiwix/kiwixmobile/main/TopLevelDestinationRobot.kt
@@ -17,6 +17,7 @@
  */
 package org.kiwix.kiwixmobile.main
 
+import com.schibsted.spain.barista.interaction.BaristaSleepInteractions
 import applyWithViewHierarchyPrinting
 import org.kiwix.kiwixmobile.BaseRobot
 import org.kiwix.kiwixmobile.Findable.StringId.TextId
@@ -36,6 +37,7 @@ import org.kiwix.kiwixmobile.page.history.HistoryRobot
 import org.kiwix.kiwixmobile.page.history.history
 import org.kiwix.kiwixmobile.settings.SettingsRobot
 import org.kiwix.kiwixmobile.settings.settingsRobo
+import org.kiwix.kiwixmobile.testutils.TestUtils
 import org.kiwix.kiwixmobile.utils.StandardActions.openDrawer
 import org.kiwix.kiwixmobile.webserver.ZimHostRobot
 import org.kiwix.kiwixmobile.webserver.zimHost
@@ -50,6 +52,7 @@ class TopLevelDestinationRobot : BaseRobot() {
   }
 
   fun clickReaderOnBottomNav(func: ReaderRobot.() -> Unit) {
+    BaristaSleepInteractions.sleep(TestUtils.TEST_PAUSE_MS.toLong())
     clickOn(ViewId(R.id.readerFragment))
     reader(func)
   }
diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt
index 9b5c75bf9..5848041bb 100644
--- a/buildSrc/src/main/kotlin/Versions.kt
+++ b/buildSrc/src/main/kotlin/Versions.kt
@@ -38,7 +38,7 @@ object Versions {
 
   const val org_jacoco: String = "0.8.7"
 
-  const val io_mockk: String = "1.10.2"
+  const val io_mockk: String = "1.12.0"
 
   const val android_arch_lifecycle_extensions: String = "1.1.1"
 
diff --git a/core/src/main/AndroidManifest.xml b/core/src/main/AndroidManifest.xml
index da773d305..71a01cfe8 100644
--- a/core/src/main/AndroidManifest.xml
+++ b/core/src/main/AndroidManifest.xml
@@ -11,7 +11,8 @@
 
   <!-- Device with versions >= Pie need this permission -->
   <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
-
+  <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"
+    tools:ignore="QueryAllPackagesPermission" />
 
   <application
     android:allowBackup="true"
diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/di/modules/NetworkModule.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/di/modules/NetworkModule.kt
index cc6b436ef..0c64a1715 100644
--- a/core/src/main/java/org/kiwix/kiwixmobile/core/di/modules/NetworkModule.kt
+++ b/core/src/main/java/org/kiwix/kiwixmobile/core/di/modules/NetworkModule.kt
@@ -34,7 +34,7 @@ private const val CONNECTION_TIMEOUT = 10L
 private const val READ_TIMEOUT = 60L
 private const val CALL_TIMEOUT = 60L
 private const val USER_AGENT = "kiwix-android-version:${BuildConfig.VERSION_CODE}"
-private const val KIWIX_DOWNLOAD_URL = "http://mirror.download.kiwix.org/"
+private const val KIWIX_DOWNLOAD_URL = "https://mirror.download.kiwix.org/"
 
 @Module
 class NetworkModule {
diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/StartSpeechInput.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/StartSpeechInput.kt
index 3d4679832..368fa8565 100644
--- a/core/src/main/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/StartSpeechInput.kt
+++ b/core/src/main/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/StartSpeechInput.kt
@@ -34,7 +34,8 @@ data class StartSpeechInput(private val actions: Channel<Action>) : SideEffect<U
   override fun invokeWith(activity: AppCompatActivity) {
     try {
       activity.startActivityForResult(
-        Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH).apply {
+        Intent().apply {
+          action = RecognizerIntent.ACTION_RECOGNIZE_SPEECH
           putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM)
           putExtra(RecognizerIntent.EXTRA_LANGUAGE, Locale.getDefault())
           putExtra(
diff --git a/core/src/test/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/StartSpeechInputTest.kt b/core/src/test/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/StartSpeechInputTest.kt
index cfcd5a969..18185da41 100644
--- a/core/src/test/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/StartSpeechInputTest.kt
+++ b/core/src/test/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/StartSpeechInputTest.kt
@@ -50,16 +50,16 @@ internal class StartSpeechInputTest {
     val activity = mockk<AppCompatActivity>()
     every { activity.getString(R.string.app_name) } returns "app"
     every { activity.getString(R.string.speech_prompt_text, "app") } returns "the app"
-    every { activity.startActivityForResult(any(), any()) } throws ActivityNotFoundException()
+    every { activity.startActivityForResult(any(), any()) } returns Unit
     mockkConstructor(Intent::class)
     StartSpeechInput(actions).invokeWith(activity)
     verify {
-      anyConstructed<Intent>().putExtra(
+      constructedWith<Intent>().putExtra(
         RecognizerIntent.EXTRA_LANGUAGE_MODEL,
         RecognizerIntent.LANGUAGE_MODEL_FREE_FORM
       )
-      anyConstructed<Intent>().putExtra(RecognizerIntent.EXTRA_LANGUAGE, Locale.getDefault())
-      anyConstructed<Intent>().putExtra(RecognizerIntent.EXTRA_PROMPT, "the app")
+      constructedWith<Intent>().putExtra(RecognizerIntent.EXTRA_LANGUAGE, Locale.getDefault())
+      constructedWith<Intent>().putExtra(RecognizerIntent.EXTRA_PROMPT, "the app")
       activity.startActivityForResult(any(), StartSpeechInput.REQ_CODE_SPEECH_INPUT)
     }
   }
diff --git a/custom/src/customexample/info.json b/custom/src/customexample/info.json
index 495a11431..140e3b302 100644
--- a/custom/src/customexample/info.json
+++ b/custom/src/customexample/info.json
@@ -1,6 +1,6 @@
 {
   "app_name": "Test Custom App",
-  "zim_url": "http://download.kiwix.org/zim/wikipedia_fr_test.zim",
+  "zim_url": "https://download.kiwix.org/zim/wikipedia_fr_test.zim",
   "enforced_lang": "en",
   "disable_sidebar": false,
   "disable_tabs": false,
['.github/workflows/coverage.yml', 'core/src/main/java/org/kiwix/kiwixmobile/core/di/modules/NetworkModule.kt', 'app/src/androidTest/java/org/kiwix/kiwixmobile/BaseRobot.kt', 'buildSrc/src/main/kotlin/Versions.kt', 'app/src/androidTest/AndroidManifest.xml', 'core/src/main/AndroidManifest.xml', 'app/src/androidTest/java/org/kiwix/kiwixmobile/main/TopLevelDestinationRobot.kt', 'custom/src/customexample/info.json', 'core/src/test/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/StartSpeechInputTest.kt', 'core/src/main/java/org/kiwix/kiwixmobile/core/search/viewmodel/effects/StartSpeechInput.kt']