diff --git a/.gitignore b/.gitignore
index f1c127e..0464e69 100644
--- a/.gitignore
+++ b/.gitignore
@@ -66,5 +66,7 @@ CTestTestfile.cmake
 _deps
 *_autogen*
 
-src/Example/android/AndroidManifest.xml
+# Configured files
+build.gradle
+AndroidManifest.xml
 src/Example/Deploy/RENAME_ME.json
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c80db34..03ad5da 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -20,7 +20,7 @@ set(CMAKE_AUTOUIC ON)
 set(CMAKE_CXX_STANDARD 17)
 set(CMAKE_CXX_STANDARD_REQUIRED ON)
 
-if (ANDROID)
+if (ANDROID OR IOS)
     set(BUILD_SHARED_LIBS ON)
 endif()
 
@@ -31,6 +31,10 @@ find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Test QUIET)
 
 include(submodules/CMake/QuasarApp.cmake)
 
+updateGitVars()
+set(RENAME_ME_VERSION "0.${GIT_COMMIT_COUNT}.${GIT_COMMIT_HASH}")
+set(RENAME_ME_PACKAGE_ID "quasarapp.core.RENAME_ME")
+
 if (NOT DEFINED RENAME_ME_TESTS)
     set(RENAME_ME_TESTS ON)
 
@@ -40,7 +44,7 @@ if (NOT DEFINED RENAME_ME_TESTS)
         endif()
     endif()
 
-    if (ANDROID)
+    if (ANDROID OR IOS)
         set(RENAME_ME_TESTS OFF)
     endif()
 
diff --git a/src/Example/CMakeLists.txt b/src/Example/CMakeLists.txt
index f7972d7..3487367 100644
--- a/src/Example/CMakeLists.txt
+++ b/src/Example/CMakeLists.txt
@@ -54,9 +54,13 @@ SET(TARGET_DIR "${CMAKE_SOURCE_DIR}/Distro")
 file(MAKE_DIRECTORY ${TARGET_DIR})
 
 if (ANDROID)
-    set(ANDROID_PACKAGE_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/android CACHE INTERNAL "")
 
-    set(SNAKE_EXTRA_LIBS
+    set(ANDROID_PACKAGE_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/android CACHE INTERNAL "")
+    set(ENV{ANDROID_API_VERSION} 31)
+    set(ANDROID_API_VERSION $ENV{ANDROID_API_VERSION})
+    set(OPENSSL_ROOT_PATH "$ENV{OPENSSL_ROOT_DIR}")
+
+    set(RENAME_ME_EXTRA_LIBS
         ${PROJECT_NAME}
 #        libName
         )
@@ -64,7 +68,6 @@ if (ANDROID)
 #    find_package(Qt${QT_VERSION_MAJOR} COMPONENTS AndroidExtras REQUIRED)
 #    target_link_libraries(${CURRENT_PROJECT} PRIVATE Qt${QT_VERSION_MAJOR}::AndroidExtras)
 
-
     if (SIGN_APP)
         message("SIGN_APP")
         addDeploySignedAPK(${CURRENT_PROJECT}
@@ -73,7 +76,7 @@ if (ANDROID)
             "${SIGPATH}/quasarapp.keystore"
             "${SIGPASS_QUASARAPP}"
             "${TARGET_DIR}"
-            "${SNAKE_EXTRA_LIBS}")
+            "${RENAME_ME_EXTRA_LIBS}")
 
     else()
         message("NO_SIGN_APP")
@@ -81,12 +84,15 @@ if (ANDROID)
         addDeployAPK(${CURRENT_PROJECT}
             "${CMAKE_CURRENT_LIST_DIR}/android"
             "${TARGET_DIR}"
-            "${SNAKE_EXTRA_LIBS}")
+            "${RENAME_ME_EXTRA_LIBS}")
 
     endif()
     set(manifest_file "${CMAKE_CURRENT_SOURCE_DIR}/android/AndroidManifest.xml")
     configure_file("${manifest_file}.in" ${manifest_file} @ONLY)
 
+    set(gradle_file "${CMAKE_CURRENT_SOURCE_DIR}/android/build.gradle")
+    configure_file("${gradle_file}.in" ${gradle_file} @ONLY)
+
     file(GLOB java_files
        "android/src/com/quasarapp/androidtools/*.java"
        "android/*.xml"
@@ -100,6 +106,14 @@ if (ANDROID)
         SOURCES ${java_files}
     )
 
+elseif(IOS)
+#    set_xcode_property(${CURRENT_PROJECT} PRODUCT_BUNDLE_IDENTIFIER ${CHEATCARD_PACKAGE_ID} All)
+
+    set_target_properties(${CURRENT_PROJECT} PROPERTIES
+        MACOSX_BUNDLE_GUI_IDENTIFIER ${RENAME_ME_PACKAGE_ID}
+        MACOSX_BUNDLE_BUNDLE_VERSION ${RENAME_ME_VERSION}
+        MACOSX_BUNDLE_SHORT_VERSION_STRING ${RENAME_ME_VERSION}
+    )
 else()
     # Desctop deploying
 
@@ -107,6 +121,7 @@ else()
 
     set(DeployFile "${CMAKE_CURRENT_SOURCE_DIR}/Deploy/RENAME_ME.json")
     configure_file("${DeployFile}.in" ${DeployFile} @ONLY)
+
     addDeployFromCustomFile("RENAME_ME" ${DeployFile})
 
 endif()
diff --git a/src/Example/Deploy/RENAME_ME.json.in b/src/Example/Deploy/RENAME_ME.json.in
index c2e1630..c99d099 100644
--- a/src/Example/Deploy/RENAME_ME.json.in
+++ b/src/Example/Deploy/RENAME_ME.json.in
@@ -7,13 +7,13 @@
     "libDir": "@CMAKE_SOURCE_DIR@",
     "recursiveDepth": "10",
     "deploySystem": false,
-    "qmlDir": "@CMAKE_SOURCE_DIR@",
+    "qmlDir": "../",
     "ignoreEnv": [
-        "@CMAKE_SOURCE_DIR@/Distro",
+         "@CMAKE_SOURCE_DIR@/Distro"
         ],
     "extraLib": "crypto",
     "targetDir": "@CMAKE_SOURCE_DIR@/Distro",
-    "deployVersion": "@RENAME_VERSION@"
+    "deployVersion": "@RENAME_VERSION@",
 
 }
 
diff --git a/src/Example/android/AndroidManifest.xml.in b/src/Example/android/AndroidManifest.xml.in
index 0df8cfd..7f7beef 100644
--- a/src/Example/android/AndroidManifest.xml.in
+++ b/src/Example/android/AndroidManifest.xml.in
@@ -1,5 +1,5 @@
 <?xml version="1.0"?>
-<manifest package="quasarapp.project.RENAME_ME" xmlns:android="http://schemas.android.com/apk/res/android" android:versionName="@RENAME_VERSION@" android:versionCode="@GIT_COMMIT_COUNT@" android:installLocation="auto">
+<manifest package="@RENAME_ME_PACKAGE_ID@" xmlns:android="http://schemas.android.com/apk/res/android" android:versionName="@RENAME_ME_VERSION@" android:versionCode="@GIT_COMMIT_COUNT@" android:installLocation="auto">
     <!-- The following comment will be replaced upon deployment with default permissions based on the dependencies of the application.
          Remove the comment if you do not require these default permissions. -->
     <!-- %%INSERT_PERMISSIONS -->
diff --git a/src/Example/android/build.gradle b/src/Example/android/build.gradle.in
similarity index 97%
rename from src/Example/android/build.gradle
rename to src/Example/android/build.gradle.in
index 6412c17..82159d4 100644
--- a/src/Example/android/build.gradle
+++ b/src/Example/android/build.gradle.in
@@ -73,6 +73,6 @@ android {
         resConfig "en"
         multiDexEnabled true
         minSdkVersion = 28
-        targetSdkVersion = 30
+        targetSdkVersion = @ANDROID_API_VERSION@
     }
 }
diff --git a/submodules/CMake b/submodules/CMake
index d398f8c..2798450 160000
--- a/submodules/CMake
+++ b/submodules/CMake
@@ -1 +1 @@
-Subproject commit d398f8cd8758a5b2e58eacadba49d8e718b417e6
+Subproject commit 279845091b1998a023d91c8c333bb7f6f069ac84