diff --git a/app/build.gradle b/app/build.gradle index 48c2601acfe9f3dbff0f3684003c162edf51c014..db1ad8110ca10b93b0768f40f672d5be4a6a62b5 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -197,14 +197,12 @@ android { buildConfigField 'boolean', 'ENABLE_FILE_LOGGER', 'true' buildConfigField 'boolean', 'ENABLE_APPSFLYER_TRACK', 'true' buildConfigField 'String', 'APPSFLYER_API_KEY', '"N5HJ8BaTrwyLAZ9MTnkh6e"' -// buildConfigField 'String', 'APPSFLYER_API_KEY', '"c80cc2e4-6e8b-4c41-9e5a-defad7a97ec1"' buildConfigField 'boolean', 'ENABLE_CRACHLYTICS_KPI_ANSWERS_TRACK', 'true' // CleverTap buildConfigField 'boolean', 'ENABLE_CLEVERTAP_TRACK', 'true' resValue "string", 'CLEVERTAP_ACCOUNT_ID_VALUE', '"RZ5-W4W-975Z"' resValue "string", 'CLEVERTAP_TOKEN_VALUE', '"040-512"' - //resValue "string", 'CLEVERTAP_USE_GOOGLE_AD_ID_FLAG', '"1"' buildConfigField 'String', 'SDK_AUTH_SERVER_NAME', '"auth.nynja.net"' buildConfigField 'int', 'SDK_AUTH_SERVER_PORT', '443' @@ -213,7 +211,6 @@ android { buildConfigField 'int', 'SDK_ACCOUNT_SERVER_PORT', '443' buildConfigField 'boolean', 'SDK_ACCOUNT_SERVER_TLS', 'true' buildConfigField 'String', 'GOOGLE_SERVER_CLIENT_ID', '"188439221106-h1nesdg8asc6hmn924tm1hggvsf9t5s2.apps.googleusercontent.com"' - //buildConfigField 'String', 'FB_REDIRECT_URL', '"https://web-canary.nynja.net/oauth/facebook/index.html"' buildConfigField 'String', 'FB_REDIRECT_URL', '"https://web.nynja.net/oauth/facebook/index.html"' buildConfigField 'String', 'FB_CLIENT_ID', '"276641389634095"' @@ -236,14 +233,12 @@ android { buildConfigField 'boolean', 'ENABLE_FILE_LOGGER', 'true' buildConfigField 'boolean', 'ENABLE_APPSFLYER_TRACK', 'true' buildConfigField 'String', 'APPSFLYER_API_KEY', '"N5HJ8BaTrwyLAZ9MTnkh6e"' -// buildConfigField 'String', 'APPSFLYER_API_KEY', '"c80cc2e4-6e8b-4c41-9e5a-defad7a97ec1"' buildConfigField 'boolean', 'ENABLE_CRACHLYTICS_KPI_ANSWERS_TRACK', 'true' // CleverTap buildConfigField 'boolean', 'ENABLE_CLEVERTAP_TRACK', 'true' resValue "string", 'CLEVERTAP_ACCOUNT_ID_VALUE', '"RZ5-W4W-975Z"' resValue "string", 'CLEVERTAP_TOKEN_VALUE', '"040-512"' - //resValue "string", 'CLEVERTAP_USE_GOOGLE_AD_ID_FLAG', '"1"' buildConfigField 'String', 'SDK_AUTH_SERVER_NAME', '"auth.nynja.net"' buildConfigField 'int', 'SDK_AUTH_SERVER_PORT', '443' @@ -252,7 +247,6 @@ android { buildConfigField 'int', 'SDK_ACCOUNT_SERVER_PORT', '443' buildConfigField 'boolean', 'SDK_ACCOUNT_SERVER_TLS', 'true' buildConfigField 'String', 'GOOGLE_SERVER_CLIENT_ID', '"188439221106-h1nesdg8asc6hmn924tm1hggvsf9t5s2.apps.googleusercontent.com"' - //buildConfigField 'String', 'FB_REDIRECT_URL', '"https://web-canary.nynja.net/oauth/facebook/index.html"' buildConfigField 'String', 'FB_REDIRECT_URL', '"https://web.nynja.net/oauth/facebook/index.html"' buildConfigField 'String', 'FB_CLIENT_ID', '"276641389634095"' @@ -343,11 +337,12 @@ android { } samsung { - resValue "string", "app_name", "NYNJA for\nSamsung" +// resValue "string", "app_name", "NYNJA for\nSamsung" + resValue "string", "app_name", "NYNJA" dimension "default" buildConfigField 'int', 'CONNECTION_VERSION', '11' buildConfigField 'String', 'BASE_URL', '"wss://im.nynja.net"' - applicationId 'com.nynja.mobile.communicator' + applicationId 'com.nynja.mobile.communicator.superapp' versionNameSuffix '-samsung' buildConfigField 'String', 'CONFERENCE_SERVER_NAME', '"call.nynja.net"' buildConfigField 'int', 'CONFERENCE_SERVER_PORT', '443' @@ -377,6 +372,7 @@ android { buildConfigField 'String', 'SDK_AUTH_APP_TOKEN', '"eyJraWQiOiJUbmx1YW1GQmJtUnliMmxrIiwidHlwIjoiSldUIiwiYWxnIjoiRVMyNTYifQ.eyJzdWIiOiJUbmx1YW1GQmJtUnliMmxrIiwiYXVkIjoiTnluamEiLCJzY29wZSI6ImF1dGgiLCJpc3MiOiJodHRwczovL2F1dGgubnluamEuYml6LyIsImV4cCI6MTY1ODgxNDE0OCwiaWF0IjoxNTY0MTQzMzI4fQ.41dLoDebnKBucnXtIXKvEMs6YJQU2j1kJvteqkNBtml0RXAFA3-pbTGwGk8Lt9aMeokzo3EcfmYmx8_SD8pqHQ"' buildConfigField 'String', 'BASE_URL_PATH_PREFIX', '"mqtts"' + // Billing service buildConfigField 'String', 'BILLING_SERVER_NAME', '"billing.nynja.net"' buildConfigField 'int', 'BILLING_SERVER_PORT', '443' @@ -387,14 +383,16 @@ android { } samsungDev { - resValue "string", "app_name", "NYNJA for\nSamsung" +// resValue "string", "app_name", "NYNJA for\nSamsung" + resValue "string", "app_name", "NYNJA" dimension "default" buildConfigField 'int', 'CONNECTION_VERSION', '11' buildConfigField 'String', 'BASE_URL', '"wss://im.dev.nynja.net"' // applicationId 'com.nynja.mobile.communicator.dev' - applicationId 'com.nynja.mobile.communicator' - versionNameSuffix '-samsung-dev' +// versionNameSuffix '-samsung-dev' + applicationId 'com.nynja.mobile.communicator.superapp' + versionNameSuffix '-samsung' buildConfigField 'String', 'CONFERENCE_SERVER_NAME', '"call.dev.nynja.net"' buildConfigField 'int', 'CONFERENCE_SERVER_PORT', '443' buildConfigField 'boolean', 'CONFERENCE_SERVER_TLS', 'true' @@ -402,6 +400,13 @@ android { resValue "string", "nynja_scheme", "devnynjacommunicator" resValue "string", "nynja_launch_link", "join.nynja.net" buildConfigField 'boolean', 'ENABLE_FILE_LOGGER', 'true' + buildConfigField 'String', 'APPSFLYER_API_KEY', '"N5HJ8BaTrwyLAZ9MTnkh6e"' + buildConfigField 'boolean', 'ENABLE_CRACHLYTICS_KPI_ANSWERS_TRACK', 'true' + + // CleverTap + buildConfigField 'boolean', 'ENABLE_CLEVERTAP_TRACK', 'true' + resValue "string", 'CLEVERTAP_ACCOUNT_ID_VALUE', '"RZ5-W4W-975Z"' + resValue "string", 'CLEVERTAP_TOKEN_VALUE', '"040-512"' buildConfigField 'String', 'SDK_AUTH_SERVER_NAME', '"auth.dev.nynja.net"' buildConfigField 'int', 'SDK_AUTH_SERVER_PORT', '443' @@ -426,14 +431,16 @@ android { } samsungPreProd { - resValue "string", "app_name", "NYNJA for\nSamsung" +// resValue "string", "app_name", "NYNJA for\nSamsung" + resValue "string", "app_name", "NYNJA" dimension "default" buildConfigField 'int', 'CONNECTION_VERSION', '11' buildConfigField 'String', 'BASE_URL', '"wss://im.staging.nynja.net"' // applicationId 'com.nynja.mobile.communicator.preprod' - applicationId 'com.nynja.mobile.communicator' - versionNameSuffix '-samsung-staging' +// versionNameSuffix '-samsung-staging' + applicationId 'com.nynja.mobile.communicator.superapp' + versionNameSuffix '-samsung' buildConfigField 'String', 'CONFERENCE_SERVER_NAME', '"call.staging.nynja.net"' buildConfigField 'int', 'CONFERENCE_SERVER_PORT', '443' buildConfigField 'boolean', 'CONFERENCE_SERVER_TLS', 'true' @@ -441,6 +448,13 @@ android { resValue "string", "nynja_scheme", "stagenynjacommunicator" resValue "string", "nynja_launch_link", "join.nynja.net" buildConfigField 'boolean', 'ENABLE_FILE_LOGGER', 'true' + buildConfigField 'String', 'APPSFLYER_API_KEY', '"N5HJ8BaTrwyLAZ9MTnkh6e"' + buildConfigField 'boolean', 'ENABLE_CRACHLYTICS_KPI_ANSWERS_TRACK', 'true' + + // CleverTap + buildConfigField 'boolean', 'ENABLE_CLEVERTAP_TRACK', 'true' + resValue "string", 'CLEVERTAP_ACCOUNT_ID_VALUE', '"RZ5-W4W-975Z"' + resValue "string", 'CLEVERTAP_TOKEN_VALUE', '"040-512"' buildConfigField 'String', 'SDK_AUTH_SERVER_NAME', '"auth.staging.nynja.net"' buildConfigField 'int', 'SDK_AUTH_SERVER_PORT', '443' @@ -449,7 +463,6 @@ android { buildConfigField 'int', 'SDK_ACCOUNT_SERVER_PORT', '443' buildConfigField 'boolean', 'SDK_ACCOUNT_SERVER_TLS', 'true' buildConfigField 'String', 'GOOGLE_SERVER_CLIENT_ID', '"356439445563-b43hv9nsggo40huimfh04eprnq4pug28.apps.googleusercontent.com"' -// buildConfigField 'String', 'GOOGLE_SERVER_CLIENT_ID', '"188439221106-lcoomd6mi3067ho21f2kg9ko0civkagg.apps.googleusercontent.com"' buildConfigField 'String', 'FB_REDIRECT_URL', '"https://web.staging.nynja.net/oauth/facebook/index.html"' buildConfigField 'String', 'FB_CLIENT_ID', '"1950612885021607"' @@ -458,6 +471,8 @@ android { // Billing service buildConfigField 'String', 'BILLING_SERVER_NAME', '"billing.staging.nynja.net"' + buildConfigField 'int', 'BILLING_SERVER_PORT', '443' + buildConfigField 'boolean', 'BILLING_SERVER_TLS', 'true' // IAP Samsung buildConfigField 'boolean', 'ENABLE_SAMSUNG_IAP', 'true' @@ -661,8 +676,8 @@ dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" // Conference, Calls mobile SDK - implementation 'com.nynja.sdk:NynjaSdk:1.20.4@aar' - //implementation(name: 'NynjaSdk-1.20', ext: 'aar') + implementation 'com.nynja.sdk:NynjaSdk:1.20.6@aar' + //implementation(name: 'NynjaSdk-1.20.5', ext: 'aar') //ExoPlayer implementation 'com.google.android.exoplayer:exoplayer-core:2.9.6' diff --git a/app/google-services.json b/app/google-services.json index daf0cc1dd9525c04f8cf82b1334034e4724edbd9..7378d81a3f17617b70f40c60b7cfc7aeefb561dd 100644 --- a/app/google-services.json +++ b/app/google-services.json @@ -191,6 +191,14 @@ { "client_id": "188439221106-h1nesdg8asc6hmn924tm1hggvsf9t5s2.apps.googleusercontent.com", "client_type": 3 + }, + { + "client_id": "356439445563-b43hv9nsggo40huimfh04eprnq4pug28.apps.googleusercontent.com", + "client_type": 3 + }, + { + "client_id": "13807320472-n1v30j7qv9u8d18u56eajm855hal4tle.apps.googleusercontent.com", + "client_type": 3 } ], "api_key": [ diff --git a/app/src/Samsung/res/drawable-nodpi/bg_splash.png b/app/src/Samsung/res/drawable-nodpi/bg_splash.png deleted file mode 100755 index 433a83e9ecb73302fc0edc41f8f79dc980bdba4a..0000000000000000000000000000000000000000 Binary files a/app/src/Samsung/res/drawable-nodpi/bg_splash.png and /dev/null differ diff --git a/app/src/Samsung/res/mipmap-hdpi/ic_launcher.png b/app/src/Samsung/res/mipmap-hdpi/ic_launcher.png old mode 100755 new mode 100644 index c57cffa9876304561c2b3e82be4abd6a63ee501e..62e94f139aaa5a235391fe8b9c5f7c3e3c9a9111 Binary files a/app/src/Samsung/res/mipmap-hdpi/ic_launcher.png and b/app/src/Samsung/res/mipmap-hdpi/ic_launcher.png differ diff --git a/app/src/Samsung/res/mipmap-mdpi/ic_launcher.png b/app/src/Samsung/res/mipmap-mdpi/ic_launcher.png old mode 100755 new mode 100644 index 31354b341935518f68d2c29fe996f16b2e0a5eed..a6e05de7e23ef2a12b73f244b450507c7ff4abc0 Binary files a/app/src/Samsung/res/mipmap-mdpi/ic_launcher.png and b/app/src/Samsung/res/mipmap-mdpi/ic_launcher.png differ diff --git a/app/src/Samsung/res/mipmap-xhdpi/ic_launcher.png b/app/src/Samsung/res/mipmap-xhdpi/ic_launcher.png old mode 100755 new mode 100644 index 46904a564e23dce0c4ce8da4838569bfba6c6947..abaa3862820ea673688b40fc738cfd84fad6ef4e Binary files a/app/src/Samsung/res/mipmap-xhdpi/ic_launcher.png and b/app/src/Samsung/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/app/src/Samsung/res/mipmap-xxhdpi/ic_launcher.png b/app/src/Samsung/res/mipmap-xxhdpi/ic_launcher.png old mode 100755 new mode 100644 index d01c30fd8cef280f109aaad03cd2616560110143..c5eb1adb93709aedf819c4d6f207484bb0562f96 Binary files a/app/src/Samsung/res/mipmap-xxhdpi/ic_launcher.png and b/app/src/Samsung/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/app/src/Samsung/res/mipmap-xxxhdpi/ic_launcher.png b/app/src/Samsung/res/mipmap-xxxhdpi/ic_launcher.png old mode 100755 new mode 100644 index 1862d947c335168e6597e938f8678b087fede838..4e315b1dae050877bdb22d98cae18a1ca172bb86 Binary files a/app/src/Samsung/res/mipmap-xxxhdpi/ic_launcher.png and b/app/src/Samsung/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/app/src/SamsungDev/res/drawable-hdpi/ic_notification.png b/app/src/SamsungDev/res/drawable-hdpi/ic_notification.png deleted file mode 100644 index 56c26769e57f820080b0044b1b283e2397485891..0000000000000000000000000000000000000000 Binary files a/app/src/SamsungDev/res/drawable-hdpi/ic_notification.png and /dev/null differ diff --git a/app/src/SamsungDev/res/drawable-mdpi/ic_notification.png b/app/src/SamsungDev/res/drawable-mdpi/ic_notification.png deleted file mode 100644 index 71c4eb3395e887cff6c6bd0dee6af076f63beb31..0000000000000000000000000000000000000000 Binary files a/app/src/SamsungDev/res/drawable-mdpi/ic_notification.png and /dev/null differ diff --git a/app/src/SamsungDev/res/drawable-nodpi/bg_splash.png b/app/src/SamsungDev/res/drawable-nodpi/bg_splash.png old mode 100755 new mode 100644 index 433a83e9ecb73302fc0edc41f8f79dc980bdba4a..2015ce482b6e0904afd886e4c3910197cd0a78de Binary files a/app/src/SamsungDev/res/drawable-nodpi/bg_splash.png and b/app/src/SamsungDev/res/drawable-nodpi/bg_splash.png differ diff --git a/app/src/SamsungDev/res/drawable-xhdpi/ic_notification.png b/app/src/SamsungDev/res/drawable-xhdpi/ic_notification.png deleted file mode 100644 index 51cc29c144ea5ef290b14c16b17fd7e85b787920..0000000000000000000000000000000000000000 Binary files a/app/src/SamsungDev/res/drawable-xhdpi/ic_notification.png and /dev/null differ diff --git a/app/src/SamsungDev/res/drawable-xxhdpi/ic_notification.png b/app/src/SamsungDev/res/drawable-xxhdpi/ic_notification.png deleted file mode 100644 index f09bbaf851d1252ed95490a20799bef8676af05e..0000000000000000000000000000000000000000 Binary files a/app/src/SamsungDev/res/drawable-xxhdpi/ic_notification.png and /dev/null differ diff --git a/app/src/SamsungDev/res/drawable-xxxhdpi/ic_notification.png b/app/src/SamsungDev/res/drawable-xxxhdpi/ic_notification.png deleted file mode 100644 index f10c438c0caea15eddac47aa2a9fca9f8652c3ab..0000000000000000000000000000000000000000 Binary files a/app/src/SamsungDev/res/drawable-xxxhdpi/ic_notification.png and /dev/null differ diff --git a/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher.png b/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher.png index c71e55b353b7e752ffa625d6fd738d5772702820..62e94f139aaa5a235391fe8b9c5f7c3e3c9a9111 100644 Binary files a/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher.png and b/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher.png differ diff --git a/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher_foreground.png b/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher_foreground.png index 389974e90cb9c321d13d27890c2f3a1c1f465d30..53fad90037ff0bcfa280ae5c69ae1a45eeeda679 100644 Binary files a/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher_foreground.png and b/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher_foreground.png differ diff --git a/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher_round.png b/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher_round.png index 286849687ea95bf986cc22a835bf121dbffd0aeb..da90c1c076f25d14941655d06866a6105366f15a 100644 Binary files a/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher_round.png and b/app/src/SamsungDev/res/mipmap-hdpi/ic_launcher_round.png differ diff --git a/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher.png b/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher.png index cfe9735019f8995c9ed9169aa945a213ddd8df62..a6e05de7e23ef2a12b73f244b450507c7ff4abc0 100644 Binary files a/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher.png and b/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher.png differ diff --git a/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher_foreground.png b/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher_foreground.png index a6eaf03ee78d38126a6c5ea118986b09f416f2b5..171ac7fa78d4bb704f3666b526fdf3d26faf2e05 100644 Binary files a/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher_foreground.png and b/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher_foreground.png differ diff --git a/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher_round.png b/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher_round.png index 3c48d300cd6bcee761ad42a7681b107e0c77154d..6d7975a2c115d6cfe675f9344ccb1b0963a08e34 100644 Binary files a/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher_round.png and b/app/src/SamsungDev/res/mipmap-mdpi/ic_launcher_round.png differ diff --git a/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher.png b/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher.png index 2be9dafdc4dc9b6fc0e2a5f3b368c91400988593..abaa3862820ea673688b40fc738cfd84fad6ef4e 100644 Binary files a/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher.png and b/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher_foreground.png b/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher_foreground.png index b151cc207ce455faf355015e3461c2cbfce4415c..ad15771a4916a260595b3a6d1e44f275241ef0d1 100644 Binary files a/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher_foreground.png and b/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher_foreground.png differ diff --git a/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher_round.png b/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher_round.png index a0df04a0c42fba531227a6938ad18aa721554d51..877ec5b81a742c0305673d55bc8ba2d15249a4f1 100644 Binary files a/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher_round.png and b/app/src/SamsungDev/res/mipmap-xhdpi/ic_launcher_round.png differ diff --git a/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher.png b/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher.png index 3647f1c28e8dd79e62b605601c8d654e38f5f444..c5eb1adb93709aedf819c4d6f207484bb0562f96 100644 Binary files a/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher.png and b/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher_foreground.png b/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher_foreground.png index 71a32eda4047dca8e14a301b6d14268e1ce6fc09..10d8af725e2d3e180201a24151686708d7e5e7d5 100644 Binary files a/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher_foreground.png and b/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher_foreground.png differ diff --git a/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher_round.png b/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher_round.png index 585b060ff9a01d134420244e3d2e254b79bd3646..44a2f43b1f87bd04345977a5b5ee663b97fdba2a 100644 Binary files a/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher_round.png and b/app/src/SamsungDev/res/mipmap-xxhdpi/ic_launcher_round.png differ diff --git a/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher.png b/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher.png index eb66824d80e6295c9eea85c0a7012045d0a040c1..4e315b1dae050877bdb22d98cae18a1ca172bb86 100644 Binary files a/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher.png and b/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher_foreground.png b/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher_foreground.png index d3de44944efcf9e6242781312d0b1e9fc4c77359..b42526dbc0d51507dd7c722b4218fee6b508ed27 100644 Binary files a/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher_foreground.png and b/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher_foreground.png differ diff --git a/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher_round.png b/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher_round.png index 851dad2de48e96a84a92f7f6f64b2eced03bd1b3..cb960133271b2a893ddb024023f0ef8ee941c25a 100644 Binary files a/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher_round.png and b/app/src/SamsungDev/res/mipmap-xxxhdpi/ic_launcher_round.png differ diff --git a/app/src/SamsungPreProd/res/drawable-hdpi/ic_notification.png b/app/src/SamsungPreProd/res/drawable-hdpi/ic_notification.png deleted file mode 100644 index c9aa50d9a28c084a371bcdb390b4125db5cbbbce..0000000000000000000000000000000000000000 Binary files a/app/src/SamsungPreProd/res/drawable-hdpi/ic_notification.png and /dev/null differ diff --git a/app/src/SamsungPreProd/res/drawable-mdpi/ic_notification.png b/app/src/SamsungPreProd/res/drawable-mdpi/ic_notification.png deleted file mode 100644 index 2a4ff7e612464c1dbc86e950652d983627b6a2e5..0000000000000000000000000000000000000000 Binary files a/app/src/SamsungPreProd/res/drawable-mdpi/ic_notification.png and /dev/null differ diff --git a/app/src/SamsungPreProd/res/drawable-nodpi/bg_splash.png b/app/src/SamsungPreProd/res/drawable-nodpi/bg_splash.png old mode 100755 new mode 100644 index 433a83e9ecb73302fc0edc41f8f79dc980bdba4a..2015ce482b6e0904afd886e4c3910197cd0a78de Binary files a/app/src/SamsungPreProd/res/drawable-nodpi/bg_splash.png and b/app/src/SamsungPreProd/res/drawable-nodpi/bg_splash.png differ diff --git a/app/src/SamsungPreProd/res/drawable-xhdpi/ic_notification.png b/app/src/SamsungPreProd/res/drawable-xhdpi/ic_notification.png deleted file mode 100644 index b7db13877107400661e5b3ea8f1d90b564b662e6..0000000000000000000000000000000000000000 Binary files a/app/src/SamsungPreProd/res/drawable-xhdpi/ic_notification.png and /dev/null differ diff --git a/app/src/SamsungPreProd/res/drawable-xxhdpi/ic_notification.png b/app/src/SamsungPreProd/res/drawable-xxhdpi/ic_notification.png deleted file mode 100644 index 7616cb40d1435a2b02d46d627037e40bd036dd6c..0000000000000000000000000000000000000000 Binary files a/app/src/SamsungPreProd/res/drawable-xxhdpi/ic_notification.png and /dev/null differ diff --git a/app/src/SamsungPreProd/res/drawable-xxxhdpi/ic_notification.png b/app/src/SamsungPreProd/res/drawable-xxxhdpi/ic_notification.png deleted file mode 100644 index 0c69affe7dd1f0018bd761600b1d87cc7d3d75e1..0000000000000000000000000000000000000000 Binary files a/app/src/SamsungPreProd/res/drawable-xxxhdpi/ic_notification.png and /dev/null differ diff --git a/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher.png b/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher.png index 5b4e1f784a0485b72b09f0855d1a353c177c7604..62e94f139aaa5a235391fe8b9c5f7c3e3c9a9111 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher.png and b/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher_foreground.png b/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher_foreground.png index 4dc5b4e2a7024d8c38be49aa487f3cf347a36f69..53fad90037ff0bcfa280ae5c69ae1a45eeeda679 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher_foreground.png and b/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher_foreground.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher_round.png b/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher_round.png index 6bc7e941a5522915195d07fcae88070d133849a3..da90c1c076f25d14941655d06866a6105366f15a 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher_round.png and b/app/src/SamsungPreProd/res/mipmap-hdpi/ic_launcher_round.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher.png b/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher.png index a82481a92bbce392f284e8a9db7e0900c5ecc9f5..a6e05de7e23ef2a12b73f244b450507c7ff4abc0 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher.png and b/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher_foreground.png b/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher_foreground.png index 36a5876374b74af6e9718b1ef558b94e02f38471..171ac7fa78d4bb704f3666b526fdf3d26faf2e05 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher_foreground.png and b/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher_foreground.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher_round.png b/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher_round.png index 1078b4819ca148a9755fd1693ef9e1f3799bccde..6d7975a2c115d6cfe675f9344ccb1b0963a08e34 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher_round.png and b/app/src/SamsungPreProd/res/mipmap-mdpi/ic_launcher_round.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher.png b/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher.png index 52dae2dfd592137b6317b1c84ed3706c0b772421..abaa3862820ea673688b40fc738cfd84fad6ef4e 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher.png and b/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher_foreground.png b/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher_foreground.png index 01d7ec2731ce30812c4dbdd69e4626878c76b8c5..ad15771a4916a260595b3a6d1e44f275241ef0d1 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher_foreground.png and b/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher_foreground.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher_round.png b/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher_round.png index b8e68728b88263d30eb3dadd0825e0b3d436c844..877ec5b81a742c0305673d55bc8ba2d15249a4f1 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher_round.png and b/app/src/SamsungPreProd/res/mipmap-xhdpi/ic_launcher_round.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher.png b/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher.png index 2bc139a047729fb2df93df1eb4914f16cb52d52d..c5eb1adb93709aedf819c4d6f207484bb0562f96 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher.png and b/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher_foreground.png b/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher_foreground.png index 705e47352414f3b9ded9655518e0aa7ebc2ec3dd..10d8af725e2d3e180201a24151686708d7e5e7d5 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher_foreground.png and b/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher_foreground.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher_round.png b/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher_round.png index 19f6cb13b658503e60186a05eaafbc85f568a8b0..44a2f43b1f87bd04345977a5b5ee663b97fdba2a 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher_round.png and b/app/src/SamsungPreProd/res/mipmap-xxhdpi/ic_launcher_round.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher.png b/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher.png index 986aa33378a614137c32093ba2a50c92d6cb29f6..4e315b1dae050877bdb22d98cae18a1ca172bb86 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher.png and b/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher_foreground.png b/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher_foreground.png index 71524d1c6d1e113d0e7e59c3592586202e4a20f7..b42526dbc0d51507dd7c722b4218fee6b508ed27 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher_foreground.png and b/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher_foreground.png differ diff --git a/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher_round.png b/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher_round.png index 83900493e575f1cd5e232785aef204075b526f1d..cb960133271b2a893ddb024023f0ef8ee941c25a 100644 Binary files a/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher_round.png and b/app/src/SamsungPreProd/res/mipmap-xxxhdpi/ic_launcher_round.png differ diff --git a/app/src/SamsungPreProd/res/raw/cert_1.pem b/app/src/SamsungPreProd/res/raw/cert_1.pem deleted file mode 100644 index 109f829ebac23f773117d35ef8866a89517e74d4..0000000000000000000000000000000000000000 --- a/app/src/SamsungPreProd/res/raw/cert_1.pem +++ /dev/null @@ -1,59 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFYTCCBEmgAwIBAgISBLBoNRwQrTBxsvK1qQGJMPs1MA0GCSqGSIb3DQEBCwUA -MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD -ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0xOTAxMTYxNTA4MDJaFw0x -OTA0MTYxNTA4MDJaMB8xHTAbBgNVBAMTFHByZXByb2QuY2kubnluamEubmV0MIIB -IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzVdElhE0COslyMgtM4C0RK4s -7Y6nWAXk9W3fthXbeZ/KsV9aqYDqAACY4AOTVPJRguG4pqDJfFC3nnE5DIP1JwsP -mbhF/LEUUPRJxaw2ZgG107eNd135a3YLCnatCqoUGZaBugAUJm0MiNmLjdx77aZM -6WbwCRg8okqETsnqpr3T/B4m+HI4cBnZpE/sgVOGbpKt3aI4IDOUUuaPlGzj2rGT -wcPuKMV0/TE3DvWNU+KUxOMXnrqlOGYyqD08Lnd3twP0mKHWDSdE7frvYDBJunMv -MqaV5oXZ2rEZHkvL3yS+LHyr1OMgE380OjiWI0vdzIex3wX1c05eZ28X2lyVxwID -AQABo4ICajCCAmYwDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMB -BggrBgEFBQcDAjAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBR/mMtrTxsuSvwlcT/p -7SS+Ph3bMzAfBgNVHSMEGDAWgBSoSmpjBH3duubRObemRWXv86jsoTBvBggrBgEF -BQcBAQRjMGEwLgYIKwYBBQUHMAGGImh0dHA6Ly9vY3NwLmludC14My5sZXRzZW5j -cnlwdC5vcmcwLwYIKwYBBQUHMAKGI2h0dHA6Ly9jZXJ0LmludC14My5sZXRzZW5j -cnlwdC5vcmcvMB8GA1UdEQQYMBaCFHByZXByb2QuY2kubnluamEubmV0MEwGA1Ud -IARFMEMwCAYGZ4EMAQIBMDcGCysGAQQBgt8TAQEBMCgwJgYIKwYBBQUHAgEWGmh0 -dHA6Ly9jcHMubGV0c2VuY3J5cHQub3JnMIIBBQYKKwYBBAHWeQIEAgSB9gSB8wDx -AHYA4mlLribo6UAJ6IYbtjuD1D7n/nSI+6SPKJMBnd3x2/4AAAFoV2tlUgAABAMA -RzBFAiEA6e8/6+89WTPR1gZcv6EOKYpodLslgKSIyfGi4Adqu6kCID3cbbevlSf5 -v0sdkZCEA6oQf0TIkSybcI9X5rRBWlxjAHcAY/Lbzeg7zCzPC3KEJ1drM6SNYXeP -vXWmOLHHaFRL2I0AAAFoV2tlXAAABAMASDBGAiEA4bW79RKW2ajaUGV0QsE1VPrp -gvYYGLaLB43Im7rrUzECIQDgzQ9X7xS3NPCByxh1MfTauUAfUfIcp/lIQ3hCb2tS -CzANBgkqhkiG9w0BAQsFAAOCAQEAfcliLQIbIcc+rL45fxlouJL69l2HaQkLE4KU -qFKGfhCpToDIOzVjwTR/0CFAeoPeWPzq8rckxNluEf9MOM9D1pCLOoNkJPpD4VlG -/1WiiKELk0v7Wwx3h6iRNAqmgInZPfXmSI07bF23UoSa4OJ8zKCA+QHzmvTMnMsP -n8GWg2B/jVX7Rmxgb/gUcWRhgYxkt+isSHHOH1cJDtf/Vvrrb6612NDlUnUTRV0U -IkONo7XahYdd4O5+4ZJSDqivlpzt6J0mMDQqtBfmVcNMXQA4xNuhSISNXSQptNe9 -n9KNO7OYj6q45G6GTzDK2m1H6Cka3hnQk7WFf//kyuwEpi4kmA== ------END CERTIFICATE----- ------BEGIN CERTIFICATE----- -MIIEkjCCA3qgAwIBAgIQCgFBQgAAAVOFc2oLheynCDANBgkqhkiG9w0BAQsFADA/ -MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT -DkRTVCBSb290IENBIFgzMB4XDTE2MDMxNzE2NDA0NloXDTIxMDMxNzE2NDA0Nlow -SjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUxldCdzIEVuY3J5cHQxIzAhBgNVBAMT -GkxldCdzIEVuY3J5cHQgQXV0aG9yaXR5IFgzMIIBIjANBgkqhkiG9w0BAQEFAAOC -AQ8AMIIBCgKCAQEAnNMM8FrlLke3cl03g7NoYzDq1zUmGSXhvb418XCSL7e4S0EF -q6meNQhY7LEqxGiHC6PjdeTm86dicbp5gWAf15Gan/PQeGdxyGkOlZHP/uaZ6WA8 -SMx+yk13EiSdRxta67nsHjcAHJyse6cF6s5K671B5TaYucv9bTyWaN8jKkKQDIZ0 -Z8h/pZq4UmEUEz9l6YKHy9v6Dlb2honzhT+Xhq+w3Brvaw2VFn3EK6BlspkENnWA -a6xK8xuQSXgvopZPKiAlKQTGdMDQMc2PMTiVFrqoM7hD8bEfwzB/onkxEz0tNvjj -/PIzark5McWvxI0NHWQWM6r6hCm21AvA2H3DkwIDAQABo4IBfTCCAXkwEgYDVR0T -AQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwfwYIKwYBBQUHAQEEczBxMDIG -CCsGAQUFBzABhiZodHRwOi8vaXNyZy50cnVzdGlkLm9jc3AuaWRlbnRydXN0LmNv -bTA7BggrBgEFBQcwAoYvaHR0cDovL2FwcHMuaWRlbnRydXN0LmNvbS9yb290cy9k -c3Ryb290Y2F4My5wN2MwHwYDVR0jBBgwFoAUxKexpHsscfrb4UuQdf/EFWCFiRAw -VAYDVR0gBE0wSzAIBgZngQwBAgEwPwYLKwYBBAGC3xMBAQEwMDAuBggrBgEFBQcC -ARYiaHR0cDovL2Nwcy5yb290LXgxLmxldHNlbmNyeXB0Lm9yZzA8BgNVHR8ENTAz -MDGgL6AthitodHRwOi8vY3JsLmlkZW50cnVzdC5jb20vRFNUUk9PVENBWDNDUkwu -Y3JsMB0GA1UdDgQWBBSoSmpjBH3duubRObemRWXv86jsoTANBgkqhkiG9w0BAQsF -AAOCAQEA3TPXEfNjWDjdGBX7CVW+dla5cEilaUcne8IkCJLxWh9KEik3JHRRHGJo -uM2VcGfl96S8TihRzZvoroed6ti6WqEBmtzw3Wodatg+VyOeph4EYpr/1wXKtx8/ -wApIvJSwtmVi4MFU5aMqrSDE6ea73Mj2tcMyo5jMd6jmeWUHK8so/joWUoHOUgwu -X4Po1QYz+3dszkDqMp4fklxBwXRsW10KXzPMTZ+sOPAveyxindmjkW8lGy+QsRlG -PfZ+G6Z6h7mjem0Y+iWlkYcV4PIWL1iwBi8saCbGS5jN2p8M+X+Q7UNKEkROb3N6 -KOqkqm57TH2H3eDJAkSnh6/DNFu0Qg== ------END CERTIFICATE----- - diff --git a/app/src/main/java/com/nynja/mobile/communicator/data/DataManager.java b/app/src/main/java/com/nynja/mobile/communicator/data/DataManager.java index f0faceb68b2e2fc66ff06c611d4d5a52d483f1e8..7c22e9c6798a3e62510a462bfe8f58e849922a27 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/data/DataManager.java +++ b/app/src/main/java/com/nynja/mobile/communicator/data/DataManager.java @@ -2979,7 +2979,11 @@ public class DataManager { } public void onStoreProductPurchased(String purchaseId) { - getConferenceSDK().storeProductPurchased(purchaseId, mDbHelper.getAccessToken()); + getConferenceSDK().storeProductPurchased(purchaseId); + } + + public void registerForAccountPurchases() { + getConferenceSDK().registerForAccountPurchases(); } //=========================================================================++++Conference Engine diff --git a/app/src/main/java/com/nynja/mobile/communicator/data/sdk/ConferenceSDKPresenter.java b/app/src/main/java/com/nynja/mobile/communicator/data/sdk/ConferenceSDKPresenter.java index 0ad28d0afd4749a8b2cc4d283c59c3d679f21a08..2072ed2aa5ce2d036fb8cc28b0e472c027bc864a 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/data/sdk/ConferenceSDKPresenter.java +++ b/app/src/main/java/com/nynja/mobile/communicator/data/sdk/ConferenceSDKPresenter.java @@ -94,4 +94,6 @@ public abstract class ConferenceSDKPresenter extends Bas @Override public void showRequestPermissionForReJoinCall(RejoinConferenceCallData rejoinData) { } @Override public void showPurchaseDialog(boolean isModerator, final String message) {} + + @Override public void onPurchaseFinished() {} } diff --git a/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ActiveConferenceCall.java b/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ActiveConferenceCall.java index 7908377f41dac9a198b6707a7b41041d59cce802..d9777cef7070c7f84e012b80c60e74bdab2571fc 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ActiveConferenceCall.java +++ b/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ActiveConferenceCall.java @@ -68,10 +68,14 @@ public class ActiveConferenceCall extends ActiveCallBase { } public long getConferenceDuration() { - long miliseconds = 0; - if (mCallStartTime <= 0) return 0; - miliseconds = System.currentTimeMillis() - mCallStartTime; - if (miliseconds <= 0) return 0; + long miliseconds = (mConference != null) ? mConference.startTime() : 0; + if (miliseconds <= 0) { + if (mCallStartTime <= 0) return 0; + miliseconds = System.currentTimeMillis() - mCallStartTime; + if (miliseconds <= 0) return 0; + } else { + return System.currentTimeMillis() - miliseconds*Consts.SECOND; + } return miliseconds; } diff --git a/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ConferenceSDKListener.java b/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ConferenceSDKListener.java index 2bcf3622ee0ba5ef404623a3b97824fbeebf9792..cb29ab18c46e86bb1e126d0ad9c775044ff4ee56 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ConferenceSDKListener.java +++ b/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ConferenceSDKListener.java @@ -79,4 +79,6 @@ public interface ConferenceSDKListener { void showRequestPermissionForReJoinCall(RejoinConferenceCallData rejoinData); void showPurchaseDialog(boolean isModerator, final String message); + + void onPurchaseFinished(); } diff --git a/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ConferenceSDKModule.java b/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ConferenceSDKModule.java index e0b5c430f1ddacccdfe9442886cbf32780252d44..17102aa940ffb115d01d5bfba1a31b88254837a0 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ConferenceSDKModule.java +++ b/app/src/main/java/com/nynja/mobile/communicator/data/sdk/calls/ConferenceSDKModule.java @@ -56,6 +56,7 @@ import com.nynja.sdk.INYNCallManagerListener; import com.nynja.sdk.INYNCommunicatorListener; import com.nynja.sdk.NYNAddConfMemberRequest; import com.nynja.sdk.NYNAddConfMemberRequestArray; +import com.nynja.sdk.NYNBillingPurchaseProvider; import com.nynja.sdk.NYNCall; import com.nynja.sdk.NYNCallEndReason; import com.nynja.sdk.NYNCallHistoryCode; @@ -78,6 +79,7 @@ import java.util.Map; import java.util.Timer; import java.util.TimerTask; +import kotlin.jvm.Synchronized; import timber.log.Timber; import static com.nynja.sdk.NYNCallEndReason.NYNCallEndReasonFailed; @@ -95,6 +97,7 @@ public class ConferenceSDKModule extends BaseSDKModule { private static final int SECOND = 1000; private static final int SECOND_IN_MINUTE = 60; private static final String PHONE_STATE = "android.intent.action.PHONE_STATE"; + private static final String FREE_TRIAL_180_DAYS = "ndfg9e58u9e8vh0w948t"; public static long READ_PHONE_STATE_RECORD_AUDIO_FLAG = 3; // (1|2) public static long READ_PHONE_STATE_RECORD_AUDIO_CAMERA_FLAG = 7; // (1|2|4) @@ -362,7 +365,7 @@ public class ConferenceSDKModule extends BaseSDKModule { } private void stopCallAllActiions(ActiveConferenceCall activeConferenceCall) { - if (mTimer != null) mTimer.cancel(); + stopTimer(); if (mConferenceAudioManager != null) { mConferenceAudioManager.stop(); } @@ -1549,6 +1552,11 @@ public class ConferenceSDKModule extends BaseSDKModule { @Override public void purchaseFinished(NYNError error) { Timber.d("purchaseFinished(): with success = " + ((error != null) ? "false" : "true")); + synchronized (mConferenceSDKListener) { + for (ConferenceSDKListener sdkListener : mConferenceSDKListener) { + sdkListener.onPurchaseFinished(); + } + } } }; mBillingManager.setListener(mBillingManagerListener); @@ -2714,78 +2722,102 @@ public class ConferenceSDKModule extends BaseSDKModule { startIncommingActivity(delayed); } - private void startTimer() { - mTimer = new Timer(); + private void stopTimer() { + if (mTimer != null) { + mTimer.cancel(); + mTimer = null; + statusUpdateTask = null; + } + } + + public boolean samsungPurchaseRequired() { final boolean isSamsungBuild = (BuildConfig.FLAVOR.toLowerCase().contentEquals("samsung") - || BuildConfig.FLAVOR.toLowerCase().contentEquals("samsungDev") - || BuildConfig.FLAVOR.toLowerCase().contentEquals("samsungPreProd")); - final boolean hasPurchasedProductsOnStart = InAppPurchaseManager.getInstance(getContext()).hasPurchasedProducts(); + || BuildConfig.FLAVOR.toLowerCase().contentEquals("samsungdev") + || BuildConfig.FLAVOR.toLowerCase().contentEquals("samsungpreprod")); + final boolean hasRegisteredProducts = InAppPurchaseManager.getInstance(getContext()).hasRegisteredProducts(); final boolean isConferenceHasRestrictedDuration = (mActiveConference != null) ? mActiveConference.isConferenceHasRestrictedDuration() : false; - boolean isModerator = mActiveConference.isModerator(); + return (isSamsungBuild && + hasRegisteredProducts && + isConferenceHasRestrictedDuration); + + } + + private void startTimer() { + stopTimer(); + mTimer = new Timer(); + final boolean[] hasPurchasedProducts = {!samsungPurchaseRequired()};//InAppPurchaseManager.getInstance(getContext()).hasPurchasedProducts()}; + final boolean isVideoConference = mActiveConference.isVideoEnabled; + final boolean isModerator = mActiveConference.isModerator(); final int[] maxCallDuration = {mActiveConference.getMaxCallDuration()}; + final boolean samsungIAP = samsungPurchaseRequired(); statusUpdateTask = new TimerTask() { @Override public void run() { if (hasCreatedActiveCall() && mConferenceSDKListener != null) { - final boolean isVideoConference = mActiveConference.isVideoEnabled; + long milliseconds = mActiveConference.getConferenceDuration(); + String message = (samsungIAP && !hasPurchasedProducts[0]) ? + statusUpdateTask(milliseconds, maxCallDuration, hasPurchasedProducts, isModerator) : + null; String time = ""; if (mActiveConference != null && mActiveConference.isWaiting()) { time = NynjaApp.getComponent().context().getString(R.string.call_waiting_period); } else { - time = getTime(); - } - boolean showPurchaseDialog = false; - String message = null; - if (isSamsungBuild && !hasPurchasedProductsOnStart && isConferenceHasRestrictedDuration) { - long milliseconds = mActiveConference.getConferenceDuration(); - long seconds = milliseconds / Consts.SECOND; - long minutes = seconds / Consts.SECOND_IN_MINUTE; - if (isModerator) { - if (seconds == Consts.SHOW_TRIAL_PEROIOD_MSG_AT_START) { - showPurchaseDialog = true; - maxCallDuration[0] = mActiveConference.getMaxCallDuration(); - message = getContext().getString(R.string.product_trial_tracking_starting, maxCallDuration[0], Consts.SHOW_TRIAL_PEROIOD_VALUE_10); - } else if (minutes == (maxCallDuration[0] - Consts.SHOW_TRIAL_PEROIOD_VALUE_10)) {//Consts.SHOW_TRIAL_PEROIOD_MSG_IN_30) { - showPurchaseDialog = true; - message = getContext().getString(R.string.product_trial_tracking_time_first, Consts.SHOW_TRIAL_PEROIOD_VALUE_10, Consts.SHOW_TRIAL_PEROIOD_VALUE_5); - } else if (minutes == (maxCallDuration[0] - Consts.SHOW_TRIAL_PEROIOD_VALUE_5)) { //Consts.SHOW_TRIAL_PEROIOD_MSG_IN_35) { - showPurchaseDialog = true; - message = getContext().getString(R.string.product_trial_tracking_time_second_host, Consts.SHOW_TRIAL_PEROIOD_VALUE_5); - } else if (minutes == maxCallDuration[0]) { // == SHOW_TRIAL_PEROIOD_END_TIME - // END the Conference !!! - if (Consts.CLIENT_SIDE_MODERATOR_END_CONFERENCE) { - mTimer.cancel(); - endCall(); - } - } - } else if (minutes == (maxCallDuration[0] - Consts.SHOW_TRIAL_PEROIOD_VALUE_5)) { - showPurchaseDialog = true; - message = getContext().getString(R.string.product_trial_tracking_time_second, Consts.SHOW_TRIAL_PEROIOD_VALUE_5); - } + time = getTime(milliseconds); } synchronized (mConferenceSDKListener) { for (ConferenceSDKListener sdkListener : mConferenceSDKListener) { sdkListener.timeAway(isVideoConference, time); - if (showPurchaseDialog && !hasPurchasedProductsOnStart - && !InAppPurchaseManager.getInstance(getContext()).hasPurchasedProducts()) { + if (message != null && !hasPurchasedProducts[0]) { sdkListener.showPurchaseDialog(isModerator, message); } } } } else { - mTimer.cancel(); + stopTimer(); } } }; mTimer.scheduleAtFixedRate(statusUpdateTask, SECOND, SECOND); } - private String getTime() { - long milliseconds = 0; - try { - milliseconds = mActiveConference.getConferenceDuration(); - } catch (NullPointerException e) { //sometimes Conference sdk can throw null pointer exception from here - return ""; - } + private String statusUpdateTask(long milliseconds, + int[] maxCallDuration, + boolean[] hasPurchasedProducts, + boolean isModerator) { + String message = null; + if (maxCallDuration[0] <= 0) return message; + long seconds = milliseconds / Consts.SECOND; + long minutes = seconds / Consts.SECOND_IN_MINUTE; + long rest = seconds % Consts.SECOND_IN_MINUTE; + if (isModerator) { + if (seconds == Consts.SHOW_TRIAL_PEROIOD_MSG_AT_START) { + maxCallDuration[0] = mActiveConference.getMaxCallDuration(); + hasPurchasedProducts[0] = !samsungPurchaseRequired();//InAppPurchaseManager.getInstance(getContext()).hasPurchasedProducts(); + if (maxCallDuration[0] > 0 && !hasPurchasedProducts[0]) { + message = getContext().getString(R.string.product_trial_tracking_starting, maxCallDuration[0], Consts.SHOW_TRIAL_PEROIOD_VALUE_10); + } + } else if (rest == 0 && + minutes == (maxCallDuration[0] - Consts.SHOW_TRIAL_PEROIOD_VALUE_10)) {//Consts.SHOW_TRIAL_PEROIOD_MSG_IN_30) { + message = getContext().getString(R.string.product_trial_tracking_time_first, Consts.SHOW_TRIAL_PEROIOD_VALUE_10, Consts.SHOW_TRIAL_PEROIOD_VALUE_5); + hasPurchasedProducts[0] = !samsungPurchaseRequired();//InAppPurchaseManager.getInstance(getContext()).hasPurchasedProducts(); + } else if (rest == 0 && + minutes == (maxCallDuration[0] - Consts.SHOW_TRIAL_PEROIOD_VALUE_5)) { //Consts.SHOW_TRIAL_PEROIOD_MSG_IN_35) { + message = getContext().getString(R.string.product_trial_tracking_time_second_host, Consts.SHOW_TRIAL_PEROIOD_VALUE_5); + hasPurchasedProducts[0] = !samsungPurchaseRequired();//InAppPurchaseManager.getInstance(getContext()).hasPurchasedProducts(); + } else if (rest == 0 && minutes == maxCallDuration[0]) { // == SHOW_TRIAL_PEROIOD_END_TIME + // END the Conference !!! + if (Consts.CLIENT_SIDE_MODERATOR_END_CONFERENCE) { + stopTimer(); + endCall(); + } + } + } else if (rest == 0 && + minutes == (maxCallDuration[0] - Consts.SHOW_TRIAL_PEROIOD_VALUE_5)) { + message = getContext().getString(R.string.product_trial_tracking_time_second, Consts.SHOW_TRIAL_PEROIOD_VALUE_5); + } + return message; + } + + private String getTime(long milliseconds) { if (milliseconds > SECOND * SECOND_IN_MINUTE * 60 * 24) return ""; //sometimes Conference engine returns current time milis or something like that int seconds = (int) milliseconds / SECOND; @@ -3020,7 +3052,9 @@ public class ConferenceSDKModule extends BaseSDKModule { mActiveConference.isCallInProgress = true; mActiveConference.isRinging = false; mActiveConference.mWaiting = false; - mActiveConference.mCallStartTime = System.currentTimeMillis(); + if (mActiveConference.mCallStartTime <= 0) { + mActiveConference.mCallStartTime = System.currentTimeMillis(); + } stopRinging(); mActiveConference.isSpeakerOn = mActiveConference.isReceivingVideo(); for (ConferenceSDKListener conferenceSDKListener : mConferenceSDKListener) @@ -3045,7 +3079,7 @@ public class ConferenceSDKModule extends BaseSDKModule { } private synchronized void onConferenceDisconnected(NYNCall iConference) { - if (mTimer != null) mTimer.cancel(); + stopTimer(); if (mActiveConference == null) return; final String conferenceId = (iConference != null) ? iConference.callId() : null; new Handler(Looper.getMainLooper()).post(() -> { @@ -3072,7 +3106,7 @@ public class ConferenceSDKModule extends BaseSDKModule { } private void onConferenceFailedInternal(String reason, boolean join) { - if (mTimer != null) mTimer.cancel(); + stopTimer(); if (!hasCreatedActiveCall()) { if (join) { for (ConferenceSDKListener conferenceListener : mConferenceSDKListener) { @@ -3559,11 +3593,22 @@ public class ConferenceSDKModule extends BaseSDKModule { } } - public void storeProductPurchased(String purchaseId, String accessToken) { + public void storeProductPurchased(String purchaseId) { if (mBillingManager != null - && StringUtils.isNotEmpty(purchaseId) - && StringUtils.isNotEmpty(accessToken)) { - mBillingManager.purchasedWithId(purchaseId, accessToken); + && StringUtils.isNotEmpty(purchaseId)) { + mBillingManager.purchasedWithId(purchaseId); + } + } + + public void registerForAccountPurchases() { + if (mBillingManager != null) { + final boolean isSamsungBuild = (BuildConfig.FLAVOR.toLowerCase().contentEquals("samsung") + || BuildConfig.FLAVOR.toLowerCase().contentEquals("samsungdev") + || BuildConfig.FLAVOR.toLowerCase().contentEquals("samsungpreprod")); + + if (isSamsungBuild) { + mBillingManager.purchase(FREE_TRIAL_180_DAYS, NYNBillingPurchaseProvider.NYN_BPP_FREE_PASS); + } } } diff --git a/app/src/main/java/com/nynja/mobile/communicator/data/server/Communication.kt b/app/src/main/java/com/nynja/mobile/communicator/data/server/Communication.kt index b0ff5d4536a36cc4bcef0bbaaa46969a06659659..17f766d24458cb25b43bc1e811197c9ec2aaa08b 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/data/server/Communication.kt +++ b/app/src/main/java/com/nynja/mobile/communicator/data/server/Communication.kt @@ -19,6 +19,7 @@ import com.nynja.mobile.communicator.utils.Consts import com.nynja.mobile.communicator.utils.NetworkUtil import com.nynja.mobile.communicator.utils.OutgoingHandlerThread import com.nynja.mobile.communicator.utils.StringUtils +import com.nynja.mobile.communicator.utils.iap.InAppPurchaseManager import io.reactivex.Observable import io.reactivex.schedulers.Schedulers import org.eclipse.paho.client.mqttv3.* @@ -221,6 +222,7 @@ class Communication @Inject constructor(private val dataManager: DataManager, dataManager.reconnectConference() dataManager.setIsInBackground(false) registerReconnectTask(Consts.DELAY_1000) + InAppPurchaseManager.getInstance(context).reloadIAPLists(); } override fun onLastUnbind() { diff --git a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/CallActivityPresenter.java b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/CallActivityPresenter.java index 6ed9d0569a4f7b77029d2a253bcb3dd6178648bd..416edcc81415ccfb4eca973945b0b7cb58c13d9a 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/CallActivityPresenter.java +++ b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/CallActivityPresenter.java @@ -42,6 +42,7 @@ public class CallActivityPresenter extends ConferenceSDKPresenter implem if (accountDetails != null) { AppsTrackerUtils.trackProfileEvent(mDataManager.getContext(), accountDetails.profileInfo()); } + mDataManager.registerForAccountPurchases(); } @Override diff --git a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/InfoPresenter.kt b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/InfoPresenter.kt index 26f2305afffb60bed4f98126b682b68f9dfc4b90..b8464bd52912d6994aa4da44569f15217d7f1935 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/InfoPresenter.kt +++ b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/InfoPresenter.kt @@ -100,6 +100,7 @@ class InfoPresenter : BaseLoginPresenter() { if (accountDetails != null && !mSignedIn) { AppsTrackerUtils.trackProfileEvent(mDataManager.context, accountDetails?.profileInfo()) } + mDataManager.registerForAccountPurchases() } } diff --git a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/LoginPresenter.java b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/LoginPresenter.java index d86cf0b6b1d5020739c30d705b4211bb8f8b3d6d..4e494a069e90941b73816ac625faabb47a46f132 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/LoginPresenter.java +++ b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/LoginPresenter.java @@ -93,6 +93,7 @@ public class LoginPresenter extends BaseLoginPresenter implements Soc if (accountDetails != null) { AppsTrackerUtils.trackProfileEvent(mDataManager.getContext(), accountDetails.profileInfo()); } + mDataManager.registerForAccountPurchases(); } @Override diff --git a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/MainActivityPresenter.kt b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/MainActivityPresenter.kt index 3b267b17582c2931a7d2ca880448f78084f512bd..e36d21205d703368d64bf7d157af54406ed48227 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/MainActivityPresenter.kt +++ b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/MainActivityPresenter.kt @@ -23,6 +23,7 @@ import com.nynja.mobile.communicator.data.models.nynjamodels.LinkModel import com.nynja.mobile.communicator.data.models.nynjamodels.RoomModel import com.nynja.mobile.communicator.data.sdk.ConferenceSDKPresenter import com.nynja.mobile.communicator.data.sdk.calls.ActiveConferenceCall +import com.nynja.mobile.communicator.data.sdk.data.data_interfaces.ISearchResult import com.nynja.mobile.communicator.data.transfer.AllChatsTransfer import com.nynja.mobile.communicator.data.transfer.ShareTransferData import com.nynja.mobile.communicator.mvp.view.MainActivityView @@ -535,7 +536,13 @@ class MainActivityPresenter : ConferenceSDKPresenter() { } private val mQRResultListener = ResultListener { resultData -> - viewState.onQRReceived(resultData as ContactModel?) + run { + if (resultData != null && resultData is ContactModel) { + viewState.onQRReceived(resultData as ContactModel?) + } else if (resultData != null && resultData is ISearchResult) { + mRouter.navigateTo(HomeNavigator.USER_PROFILE_FROM_SEARCH, resultData as ISearchResult) + } + } } fun onLetterSelected(selectedLetter: Char) { diff --git a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/QrCodePresenter.java b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/QrCodePresenter.java index 81ab518cebc0a7224b22e52a902ccb3259c16701..4db7d963b5a4fcf39795351a0bf3e8cbb44d0142 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/QrCodePresenter.java +++ b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/QrCodePresenter.java @@ -579,7 +579,15 @@ public class QrCodePresenter extends BasePresenter implements Search mQrCodeScanActionStep == QrUtils.QrCodeScanActionStep.QrCodeScanActionSearchContact) { mSearchResult = searchResult; if (searchResult != null) { - mRouter.deliverResult(NynjaRequestCodes.QR_CODE_REQUEST_CODE, searchResult); + if (mSearchResult != null && + ((mQrActionType == QrUtils.QrActionType.QrActionScannerAddContact && + mQrCodeScanActionStep == QrUtils.QrCodeScanActionStep.QrCodeScanActionSearchAccountByQrCode) + || (mQrActionType == QrUtils.QrActionType.QrActionScanner && + mQrCodeScanActionStep == QrUtils.QrCodeScanActionStep.QrCodeScanActionSearchContact))) { + mRouter.deliverResult(NynjaRequestCodes.QR_CODE_REQUEST_CODE, null); + } else { + mRouter.deliverResult(NynjaRequestCodes.QR_CODE_REQUEST_CODE, searchResult); + } } else { getViewState().hideProgressDialog(); getViewState().userNotFound(); diff --git a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/StoreProductDetailsPresenter.java b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/StoreProductDetailsPresenter.java index 604583516e46f94056c075243c856834e47dc1b3..0394eeee729ba5b2ee0d55b54ce656e8f0021393 100644 --- a/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/StoreProductDetailsPresenter.java +++ b/app/src/main/java/com/nynja/mobile/communicator/mvp/presenters/StoreProductDetailsPresenter.java @@ -7,6 +7,7 @@ import com.nynja.mobile.communicator.data.store.StoreProductDetailsItem; import com.nynja.mobile.communicator.mvp.view.StoreProductDetailsView; import com.nynja.mobile.communicator.utils.StringUtils; import com.nynja.mobile.communicator.utils.iap.InAppPurchaseManager; +import com.nynja.mobile.communicator.utils.navigation.navigators.NynjaNavigator; import com.samsung.android.sdk.iap.lib.helper.IapHelper; import com.samsung.android.sdk.iap.lib.vo.ErrorVo; import com.samsung.android.sdk.iap.lib.vo.ProductVo; @@ -24,12 +25,22 @@ import io.opencensus.internal.StringUtil; public class StoreProductDetailsPresenter extends ConferenceSDKPresenter implements ConferenceSDKListener { + @Override + protected void onFirstViewAttach() { + super.onFirstViewAttach(); + reloadIAPLists(); + } + @Override public void attachView(StoreProductDetailsView view) { super.attachView(view); } + @Override public void onPurchaseFinished() { + closeAndGoToCall(); + } + public void loadStoreProductDetails() { InAppPurchaseManager.getInstance(mDataManager.getContext()).getProductsDetails(new InAppPurchaseManager.OnGetStoreProductsDetailsListener() { @Override @@ -57,6 +68,23 @@ public class StoreProductDetailsPresenter extends ConferenceSDKPresenter 0; + } + public List toStoreListItems(List productsList) { ArrayList storeListItems = new ArrayList<>(); if (productsList != null) { @@ -191,6 +196,12 @@ public class InAppPurchaseManager { return new StoreProductDetailsItem(productVo); } + public void reloadIAPLists() { + getOwnedList(); + getProductsDetails(); + } + + //////////////////////////////////////////////////////////////////////////////////////////////// // Private Helpers private void loadProvider() { @@ -237,7 +248,7 @@ public class InAppPurchaseManager { if (_ownedList != null) { for (OwnedProductVo item : _ownedList) { mSamsungOwnProductsList.put(item.getItemId(), item); - if (item.getIsConsumable()) { + if (item.getIsConsumable() && false) { // TODO: Consume the consumable item not yet consumed mSamsungInAppPurchase.consumePurchasedItems(item.getItemId(), (_errorVO1, _consumeList) -> { Timber.d("consumePurchasedItems(): ErrorVo = " + _errorVO1.dump() + ";\n consumeList = " + _consumeList); @@ -307,7 +318,11 @@ public class InAppPurchaseManager { if (StringUtils.isNotEmpty(purchaseId)) { Timber.d("startPayment(): purchased item = " + _purchaseVO.dump()); mSamsungOwnProductsList.put(_purchaseVO.getItemId(), new OwnedProductVo(_purchaseVO.getJsonString())); + if (listener != null) { + listener.onStorePayment(_errorVO, purchaseId); + } if (_purchaseVO.getIsConsumable()) { + final boolean closeAfterConsume = _purchaseVO.getType().equalsIgnoreCase("item"); mSamsungInAppPurchase.consumePurchasedItems(purchaseId, (OnConsumePurchasedItemsListener) (_errorVO1, _consumeList) -> { Timber.d("onConsumePurchasedItems(): ErrorVo = " + _errorVO1.dump() + ";\n ConsumeList = " + _consumeList); if (_errorVO1 != null) { @@ -325,13 +340,11 @@ public class InAppPurchaseManager { } }); } + return; + } else { if (listener != null) { listener.onStorePayment(_errorVO, purchaseId); } - return; - } - if (listener != null) { - listener.onStorePayment(_errorVO, purchaseId); } return; } diff --git a/build.gradle b/build.gradle index 6cfa5e23eba3e282d6bf0a2fff1a57e4c35de063..f6cf3160f31e0e8413ef33e97787ea419be1bfb8 100644 --- a/build.gradle +++ b/build.gradle @@ -1,7 +1,7 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. import org.ajoberstar.grgit.Grgit -def andrVersionCode = project.hasProperty('android_version_code') ? project.property('android_version_code') : "319" +def andrVersionCode = project.hasProperty('android_version_code') ? project.property('android_version_code') : "346" buildscript { ext.kotlin_version = '1.3.11' @@ -27,7 +27,7 @@ ext { targetSdkVersion = 29 git = Grgit.open(currentDir: projectDir) - gitVersionName = "0.19.2" + gitVersionName = "0.19.4" gitVersionCode = "${andrVersionCode}".toInteger() gitVersionCodeTime = git.head().dateTime.toEpochSecond()