diff --git a/.github/workflows/generate_build.yml b/.github/workflows/generate_build.yml index 636cddc9a6..2f9687254d 100644 --- a/.github/workflows/generate_build.yml +++ b/.github/workflows/generate_build.yml @@ -101,10 +101,10 @@ jobs: run: echo ${{ secrets.RELEASE_STORE_FILE }} | base64 -d >> app/navi-release-key.jks - name: Build - APK - ${{ inputs.environment }}-${{ inputs.type }} if: inputs.output == 'APK' - run: ./gradlew package${{ inputs.environment }}${{ inputs.type }}UniversalApk -PRELEASE_STORE_PASSWORD=${{ secrets.RELEASE_STORE_PASSWORD }} -PRELEASE_KEY_ALIAS=${{ secrets.RELEASE_KEY_ALIAS }} -PRELEASE_KEY_PASSWORD=${{ secrets.RELEASE_KEY_PASSWORD }} -PBASE_URL=${{ secrets.BASE_URL }} -PALFRED_API_KEY=${{ secrets.ALFRED_API_KEY }} -PAPPSFLYER_KEY=${{ secrets.APPSFLYER_KEY }} -PHYPERVERGE_APP_ID=${{ secrets.HYPERVERGE_APP_ID }} -PHYPERVERGE_APP_KEY=${{ secrets.HYPERVERGE_APP_KEY }} -PMOENGAGE_KEY=${{ secrets.MOENGAGE_KEY }} -PMQTT_PASSWORD=${{ secrets.MQTT_PASSWORD }} -PMQTT_USERNAME=${{ secrets.MQTT_USERNAME }} -PPULSE_BASE_URL=${{ secrets.PULSE_BASE_URL }} -PSSL_PINNING_KEY=${{ secrets.SSL_PINNING_KEY }} -PXIAOMI_PUSH_APP_ID=${{ secrets.XIAOMI_PUSH_APP_ID }} -PXIAOMI_PUSH_APP_KEY=${{ secrets.XIAOMI_PUSH_APP_KEY }} -PYOUTUBE_KEY=${{ secrets.YOUTUBE_KEY }} -PFACEBOOK_APP_ID=${{ secrets.FACEBOOK_APP_ID }} -PTRUECALLER_KEY=${{ secrets.TRUECALLER_KEY }} -PGI_RAZORPAY_KEY=${{ secrets.GI_RAZORPAY_KEY }} -PGOOGLE_MAPS_KEY=${{ secrets.GOOGLE_MAPS_KEY }} -PCODEPUSH_DEPLOYMENT_KEY=${{ secrets.CODEPUSH_DEPLOYMENT_KEY }} -PNAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT=${{ secrets.NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT }} + run: ./gradlew package${{ inputs.environment }}${{ inputs.type }}UniversalApk -PRELEASE_STORE_PASSWORD=${{ secrets.RELEASE_STORE_PASSWORD }} -PRELEASE_KEY_ALIAS=${{ secrets.RELEASE_KEY_ALIAS }} -PRELEASE_KEY_PASSWORD=${{ secrets.RELEASE_KEY_PASSWORD }} -PBASE_URL=${{ secrets.BASE_URL }} -PALFRED_API_KEY=${{ secrets.ALFRED_API_KEY }} -PAPPSFLYER_KEY=${{ secrets.APPSFLYER_KEY }} -PHYPERVERGE_APP_ID=${{ secrets.HYPERVERGE_APP_ID }} -PHYPERVERGE_APP_KEY=${{ secrets.HYPERVERGE_APP_KEY }} -PMQTT_PASSWORD=${{ secrets.MQTT_PASSWORD }} -PMQTT_USERNAME=${{ secrets.MQTT_USERNAME }} -PPULSE_BASE_URL=${{ secrets.PULSE_BASE_URL }} -PSSL_PINNING_KEY=${{ secrets.SSL_PINNING_KEY }} -PYOUTUBE_KEY=${{ secrets.YOUTUBE_KEY }} -PFACEBOOK_APP_ID=${{ secrets.FACEBOOK_APP_ID }} -PTRUECALLER_KEY=${{ secrets.TRUECALLER_KEY }} -PGI_RAZORPAY_KEY=${{ secrets.GI_RAZORPAY_KEY }} -PGOOGLE_MAPS_KEY=${{ secrets.GOOGLE_MAPS_KEY }} -PCODEPUSH_DEPLOYMENT_KEY=${{ secrets.CODEPUSH_DEPLOYMENT_KEY }} -PNAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT=${{ secrets.NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT }} - name: Build - AAB - ${{ inputs.environment }}-${{ inputs.type }} if: inputs.output == 'AAB' - run: ./gradlew :app:bundle${{ inputs.environment }}${{ inputs.type }} -PRELEASE_STORE_PASSWORD=${{ secrets.RELEASE_STORE_PASSWORD }} -PRELEASE_KEY_ALIAS=${{ secrets.RELEASE_KEY_ALIAS }} -PRELEASE_KEY_PASSWORD=${{ secrets.RELEASE_KEY_PASSWORD }} -PBASE_URL=${{ secrets.BASE_URL }} -PALFRED_API_KEY=${{ secrets.ALFRED_API_KEY }} -PAPPSFLYER_KEY=${{ secrets.APPSFLYER_KEY }} -PHYPERVERGE_APP_ID=${{ secrets.HYPERVERGE_APP_ID }} -PHYPERVERGE_APP_KEY=${{ secrets.HYPERVERGE_APP_KEY }} -PMOENGAGE_KEY=${{ secrets.MOENGAGE_KEY }} -PMQTT_PASSWORD=${{ secrets.MQTT_PASSWORD }} -PMQTT_USERNAME=${{ secrets.MQTT_USERNAME }} -PPULSE_BASE_URL=${{ secrets.PULSE_BASE_URL }} -PSSL_PINNING_KEY=${{ secrets.SSL_PINNING_KEY }} -PXIAOMI_PUSH_APP_ID=${{ secrets.XIAOMI_PUSH_APP_ID }} -PXIAOMI_PUSH_APP_KEY=${{ secrets.XIAOMI_PUSH_APP_KEY }} -PYOUTUBE_KEY=${{ secrets.YOUTUBE_KEY }} -PFACEBOOK_APP_ID=${{ secrets.FACEBOOK_APP_ID }} -PTRUECALLER_KEY=${{ secrets.TRUECALLER_KEY }} -PGI_RAZORPAY_KEY=${{ secrets.GI_RAZORPAY_KEY }} -PGOOGLE_MAPS_KEY=${{ secrets.GOOGLE_MAPS_KEY }} -PCODEPUSH_DEPLOYMENT_KEY=${{ secrets.CODEPUSH_DEPLOYMENT_KEY }} -PNAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT=${{ secrets.NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT }} + run: ./gradlew :app:bundle${{ inputs.environment }}${{ inputs.type }} -PRELEASE_STORE_PASSWORD=${{ secrets.RELEASE_STORE_PASSWORD }} -PRELEASE_KEY_ALIAS=${{ secrets.RELEASE_KEY_ALIAS }} -PRELEASE_KEY_PASSWORD=${{ secrets.RELEASE_KEY_PASSWORD }} -PBASE_URL=${{ secrets.BASE_URL }} -PALFRED_API_KEY=${{ secrets.ALFRED_API_KEY }} -PAPPSFLYER_KEY=${{ secrets.APPSFLYER_KEY }} -PHYPERVERGE_APP_ID=${{ secrets.HYPERVERGE_APP_ID }} -PHYPERVERGE_APP_KEY=${{ secrets.HYPERVERGE_APP_KEY }} -PMQTT_PASSWORD=${{ secrets.MQTT_PASSWORD }} -PMQTT_USERNAME=${{ secrets.MQTT_USERNAME }} -PPULSE_BASE_URL=${{ secrets.PULSE_BASE_URL }} -PSSL_PINNING_KEY=${{ secrets.SSL_PINNING_KEY }} -PYOUTUBE_KEY=${{ secrets.YOUTUBE_KEY }} -PFACEBOOK_APP_ID=${{ secrets.FACEBOOK_APP_ID }} -PTRUECALLER_KEY=${{ secrets.TRUECALLER_KEY }} -PGI_RAZORPAY_KEY=${{ secrets.GI_RAZORPAY_KEY }} -PGOOGLE_MAPS_KEY=${{ secrets.GOOGLE_MAPS_KEY }} -PCODEPUSH_DEPLOYMENT_KEY=${{ secrets.CODEPUSH_DEPLOYMENT_KEY }} -PNAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT=${{ secrets.NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT }} - name: Upload - ${{ inputs.output }} - ${{ inputs.environment }}-${{ inputs.type }} uses: actions/upload-artifact@v4 with: diff --git a/.github/workflows/macrobenchmark.yml b/.github/workflows/macrobenchmark.yml index 22a9e8523f..ed94d6dbf1 100644 --- a/.github/workflows/macrobenchmark.yml +++ b/.github/workflows/macrobenchmark.yml @@ -43,7 +43,7 @@ jobs: - name: Export Release Store File run: echo ${{ secrets.RELEASE_STORE_FILE }} | base64 -d >> app/navi-release-key.jks - name: Build - APK - app - run: ./gradlew packageQaReleaseUniversalApk -PRELEASE_STORE_PASSWORD=${{ secrets.RELEASE_STORE_PASSWORD }} -PRELEASE_KEY_ALIAS=${{ secrets.RELEASE_KEY_ALIAS }} -PRELEASE_KEY_PASSWORD=${{ secrets.RELEASE_KEY_PASSWORD }} -PBASE_URL=${{ secrets.BASE_URL }} -PALFRED_API_KEY=${{ secrets.ALFRED_API_KEY }} -PAPPSFLYER_KEY=${{ secrets.APPSFLYER_KEY }} -PHYPERVERGE_APP_ID=${{ secrets.HYPERVERGE_APP_ID }} -PHYPERVERGE_APP_KEY=${{ secrets.HYPERVERGE_APP_KEY }} -PMOENGAGE_KEY=${{ secrets.MOENGAGE_KEY }} -PMQTT_PASSWORD=${{ secrets.MQTT_PASSWORD }} -PMQTT_USERNAME=${{ secrets.MQTT_USERNAME }} -PPULSE_BASE_URL=${{ secrets.PULSE_BASE_URL }} -PSSL_PINNING_KEY=${{ secrets.SSL_PINNING_KEY }} -PXIAOMI_PUSH_APP_ID=${{ secrets.XIAOMI_PUSH_APP_ID }} -PXIAOMI_PUSH_APP_KEY=${{ secrets.XIAOMI_PUSH_APP_KEY }} -PYOUTUBE_KEY=${{ secrets.YOUTUBE_KEY }} -PFACEBOOK_APP_ID=${{ secrets.FACEBOOK_APP_ID }} -PTRUECALLER_KEY=${{ secrets.TRUECALLER_KEY }} -PGI_RAZORPAY_KEY=${{ secrets.GI_RAZORPAY_KEY }} -PGOOGLE_MAPS_KEY=${{ secrets.GOOGLE_MAPS_KEY }} -PCODEPUSH_DEPLOYMENT_KEY=${{ secrets.CODEPUSH_DEPLOYMENT_KEY }} -PNAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT=${{ secrets.NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT }} + run: ./gradlew packageQaReleaseUniversalApk -PRELEASE_STORE_PASSWORD=${{ secrets.RELEASE_STORE_PASSWORD }} -PRELEASE_KEY_ALIAS=${{ secrets.RELEASE_KEY_ALIAS }} -PRELEASE_KEY_PASSWORD=${{ secrets.RELEASE_KEY_PASSWORD }} -PBASE_URL=${{ secrets.BASE_URL }} -PALFRED_API_KEY=${{ secrets.ALFRED_API_KEY }} -PAPPSFLYER_KEY=${{ secrets.APPSFLYER_KEY }} -PHYPERVERGE_APP_ID=${{ secrets.HYPERVERGE_APP_ID }} -PHYPERVERGE_APP_KEY=${{ secrets.HYPERVERGE_APP_KEY }} -PMQTT_PASSWORD=${{ secrets.MQTT_PASSWORD }} -PMQTT_USERNAME=${{ secrets.MQTT_USERNAME }} -PPULSE_BASE_URL=${{ secrets.PULSE_BASE_URL }} -PSSL_PINNING_KEY=${{ secrets.SSL_PINNING_KEY }} -PYOUTUBE_KEY=${{ secrets.YOUTUBE_KEY }} -PFACEBOOK_APP_ID=${{ secrets.FACEBOOK_APP_ID }} -PTRUECALLER_KEY=${{ secrets.TRUECALLER_KEY }} -PGI_RAZORPAY_KEY=${{ secrets.GI_RAZORPAY_KEY }} -PGOOGLE_MAPS_KEY=${{ secrets.GOOGLE_MAPS_KEY }} -PCODEPUSH_DEPLOYMENT_KEY=${{ secrets.CODEPUSH_DEPLOYMENT_KEY }} -PNAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT=${{ secrets.NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT }} - name: Build - APK - benchmark run: ./gradlew benchmark:assembleQaBenchmark - name: Authenticate Cloud SDK diff --git a/Dockerfile b/Dockerfile index 7f77d1a729..8df8ec2ad4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -30,13 +30,10 @@ RUN --mount=type=secret,id=RELEASE_STORE_PASSWORD \ --mount=type=secret,id=APPSFLYER_KEY \ --mount=type=secret,id=HYPERVERGE_APP_ID \ --mount=type=secret,id=HYPERVERGE_APP_KEY \ - --mount=type=secret,id=MOENGAGE_KEY \ --mount=type=secret,id=MQTT_PASSWORD \ --mount=type=secret,id=MQTT_USERNAME \ --mount=type=secret,id=PULSE_BASE_URL \ --mount=type=secret,id=SSL_PINNING_KEY \ - --mount=type=secret,id=XIAOMI_PUSH_APP_ID \ - --mount=type=secret,id=XIAOMI_PUSH_APP_KEY \ --mount=type=secret,id=YOUTUBE_KEY \ --mount=type=secret,id=FACEBOOK_APP_ID \ --mount=type=secret,id=TRUECALLER_KEY \ @@ -53,13 +50,10 @@ RUN --mount=type=secret,id=RELEASE_STORE_PASSWORD \ -PAPPSFLYER_KEY=$(cat /run/secrets/APPSFLYER_KEY) \ -PHYPERVERGE_APP_ID=$(cat /run/secrets/HYPERVERGE_APP_ID) \ -PHYPERVERGE_APP_KEY=$(cat /run/secrets/HYPERVERGE_APP_KEY) \ - -PMOENGAGE_KEY=$(cat /run/secrets/MOENGAGE_KEY) \ -PMQTT_PASSWORD=$(cat /run/secrets/MQTT_PASSWORD) \ -PMQTT_USERNAME=$(cat /run/secrets/MQTT_USERNAME) \ -PPULSE_BASE_URL=$(cat /run/secrets/PULSE_BASE_URL) \ -PSSL_PINNING_KEY=$(cat /run/secrets/SSL_PINNING_KEY) \ - -PXIAOMI_PUSH_APP_ID=$(cat /run/secrets/XIAOMI_PUSH_APP_ID) \ - -PXIAOMI_PUSH_APP_KEY=$(cat /run/secrets/XIAOMI_PUSH_APP_KEY) \ -PYOUTUBE_KEY=$(cat /run/secrets/YOUTUBE_KEY) \ -PFACEBOOK_APP_ID=$(cat /run/secrets/FACEBOOK_APP_ID) \ -PTRUECALLER_KEY=$(cat /run/secrets/TRUECALLER_KEY) \ diff --git a/android/app/build.gradle b/android/app/build.gradle index e211e6b933..00fcd8e0bb 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -145,11 +145,6 @@ android { excludes += "DebugProbesKt.bin" } } - repositories { - flatDir { - dirs 'libs' - } - } sourceSets { release { java.srcDirs = ['src/main/java', 'src/release/java'] @@ -172,12 +167,9 @@ android { buildConfigField 'String', 'HYPERVERGE_APP_ID', formatString('2c007b') buildConfigField 'String', 'HYPERVERGE_APP_KEY', formatString('c9b1e034f7c8961a3f5b') buildConfigField 'String', 'PULSE_BASE_URL', formatString('https://dev-janus.np.navi-tech.in/') - buildConfigField 'String', 'MOENGAGE_KEY', formatString('2PDJ4M6TDY7ADQ5N5LU48H9Y') buildConfigField 'String', 'MQTT_PASSWORD', formatString('testUser@123') buildConfigField 'String', 'MQTT_USERNAME', formatString('henry') buildConfigField 'String', 'SSL_PINNING_KEY', formatString('sha256/nUU7NjGrGo/mxijjsX+MHerUbpIHBidF8LAYOEPFWA8=') - buildConfigField 'String', 'XIAOMI_PUSH_APP_ID', formatString('2882303761521925585') - buildConfigField 'String', 'XIAOMI_PUSH_APP_KEY', formatString('5692192517585') manifestPlaceholders = [ FACEBOOK_APP_ID: "238258890564574", TRUECALLER_KEY : "yicxl1xh6jidagslpi0h9d-uklfeinnx4a6mb6rdgyi" @@ -191,13 +183,10 @@ android { && project.hasProperty('APPSFLYER_KEY') && project.hasProperty('HYPERVERGE_APP_ID') && project.hasProperty('HYPERVERGE_APP_KEY') - && project.hasProperty('MOENGAGE_KEY') && project.hasProperty('MQTT_PASSWORD') && project.hasProperty('MQTT_USERNAME') && project.hasProperty('PULSE_BASE_URL') && project.hasProperty('SSL_PINNING_KEY') - && project.hasProperty('XIAOMI_PUSH_APP_ID') - && project.hasProperty('XIAOMI_PUSH_APP_KEY') && project.hasProperty('FACEBOOK_APP_ID') && project.hasProperty('TRUECALLER_KEY') && project.hasProperty('CODEPUSH_DEPLOYMENT_KEY') @@ -206,13 +195,10 @@ android { buildConfigField 'String', 'APPSFLYER_KEY', formatString("$APPSFLYER_KEY") buildConfigField 'String', 'HYPERVERGE_APP_ID', formatString("$HYPERVERGE_APP_ID") buildConfigField 'String', 'HYPERVERGE_APP_KEY', formatString("$HYPERVERGE_APP_KEY") - buildConfigField 'String', 'MOENGAGE_KEY', formatString("$MOENGAGE_KEY") buildConfigField 'String', 'MQTT_PASSWORD', formatString("$MQTT_PASSWORD") buildConfigField 'String', 'MQTT_USERNAME', formatString("$MQTT_USERNAME") buildConfigField 'String', 'PULSE_BASE_URL', formatString("$PULSE_BASE_URL") buildConfigField 'String', 'SSL_PINNING_KEY', formatString("$SSL_PINNING_KEY") - buildConfigField 'String', 'XIAOMI_PUSH_APP_ID', formatString("$XIAOMI_PUSH_APP_ID") - buildConfigField 'String', 'XIAOMI_PUSH_APP_KEY', formatString("$XIAOMI_PUSH_APP_KEY") manifestPlaceholders = [ FACEBOOK_APP_ID: "$FACEBOOK_APP_ID", TRUECALLER_KEY : "$TRUECALLER_KEY" @@ -282,7 +268,6 @@ dependencies { implementation project(":navi-pay") implementation project(":navi-payment") implementation project(":navi-rr") - implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar']) implementation libs.accompanist.systemuicontroller implementation libs.android.gms.playServicesAds implementation libs.android.gms.playServicesAuth diff --git a/android/app/libs/MiPush_SDK_Client_5_1_8-G_3rd.aar b/android/app/libs/MiPush_SDK_Client_5_1_8-G_3rd.aar deleted file mode 100644 index 91326908e6..0000000000 Binary files a/android/app/libs/MiPush_SDK_Client_5_1_8-G_3rd.aar and /dev/null differ diff --git a/android/app/proguard-rules.pro b/android/app/proguard-rules.pro index 08ce93de27..0f18bc0362 100644 --- a/android/app/proguard-rules.pro +++ b/android/app/proguard-rules.pro @@ -202,52 +202,8 @@ -dontwarn com.google.android.gms.location.** -keep class com.google.android.gms.location.** { *; } --keep class com.moe.pushlibrary.activities.** { *; } --keep class com.moe.pushlibrary.MoEHelper --keep class com.moengage.locationlibrary.GeofenceIntentService --keep class com.moe.pushlibrary.InstallReceiver --keep class com.moe.pushlibrary.providers.MoEProvider --keep class com.moe.pushlibrary.models.** { *;} --keep class com.moengage.core.GeoTask --keep class com.moengage.location.GeoManager --keep class com.moengage.inapp.InAppManager --keep class com.moengage.push.PushManager --keep class com.moengage.inapp.InAppController --keep class com.moe.pushlibrary.AppUpdateReceiver --keep class com.moengage.core.MoEAlarmReceiver --keep class com.moengage.core.MoEngage - -# Push --keep class com.moengage.pushbase.activities.PushTracker --keep class com.moengage.pushbase.activities.SnoozeTracker --keep class com.moengage.pushbase.push.MoEPushWorker --keep class com.moe.pushlibrary.MoEWorker - -# Real Time Triggers --keep class com.moengage.addon.trigger.DTHandlerImpl --keep class com.moengage.core.MoEDTManager --keep class com.moengage.core.MoEDTManager.DTHandler - -# Push Amplification --keep class com.moengage.addon.messaging.MessagingHandlerImpl --keep class com.moengage.push.MoEMessagingManager --keep class com.moengage.addon.messaging.MoEMessageSyncJob --keep class com.moengage.addon.messaging.MoEMessageSyncReceiver --keep class com.moengage.addon.messaging.MoEMessageSyncIntentService - --dontwarn com.moengage.location.GeoManager --dontwarn com.moengage.core.GeoTask --dontwarn com.moengage.receiver.* --dontwarn com.moengage.worker.* --dontwarn com.moengage.inapp.ViewEngine - -keep class com.delight.** { *; } -# only when using FCM --keep class com.moengage.firebase.MoEngaeFireBaseMessagingService --keep class com.moengage.firebase.MoEngageFireBaseInstanceIdService --keep class com.moengage.firebase.PushHandlerImpl - #for selfie : hyperverge -dontwarn co.hyperverge.** -keepclassmembers class * implements javax.net.ssl.SSLSocketFactory { diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 2351aaf6cf..76f070ad58 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -318,19 +318,6 @@ - - - - - - - - - - - ()V PLcom/google/type/a$b;->(Lcom/google/type/a$a;)V PLcom/google/type/a$b;->t(D)Lcom/google/type/a$b; PLcom/google/type/a$b;->v(D)Lcom/google/type/a$b; -Lcom/moengage/core/internal/global/c; -SPLcom/moengage/core/internal/global/c;->()V -SPLcom/moengage/core/internal/global/c;->()V -SPLcom/moengage/core/internal/global/c;->a()Z -Lcom/moengage/core/internal/logger/a; -SPLcom/moengage/core/internal/logger/a;->()V -SPLcom/moengage/core/internal/logger/a;->a(Lcom/moengage/core/internal/logger/c;)V -SPLcom/moengage/core/internal/logger/a;->b(ILjava/lang/Throwable;Lkotlin/jvm/functions/Function0;)V -Lcom/moengage/core/internal/logger/b; -SPLcom/moengage/core/internal/logger/b;->()V -SPLcom/moengage/core/internal/logger/b;->b(I)Z -Lcom/moengage/core/internal/logger/c; -Lcom/moengage/core/internal/logger/e; -SPLcom/moengage/core/internal/logger/e;->()V -SPLcom/moengage/core/internal/logger/e;->a()Lcom/moengage/core/internal/logger/a; -Lcom/moengage/core/internal/logger/e$a; -SPLcom/moengage/core/internal/logger/e$a;->()V -SPLcom/moengage/core/internal/logger/e$a;->(Lkotlin/jvm/internal/DefaultConstructorMarker;)V -SPLcom/moengage/core/internal/logger/e$a;->a(ILjava/lang/Throwable;Lkotlin/jvm/functions/Function0;)V -SPLcom/moengage/core/internal/logger/e$a;->d(Lcom/moengage/core/internal/logger/e$a;ILjava/lang/Throwable;Lkotlin/jvm/functions/Function0;ILjava/lang/Object;)V -Lcom/moengage/core/internal/utils/l; -SPLcom/moengage/core/internal/utils/l;->()V -SPLcom/moengage/core/internal/utils/l;->h()Ljava/lang/String; -Lcom/moengage/push/amp/plus/b; -SPLcom/moengage/push/amp/plus/b;->()V -SPLcom/moengage/push/amp/plus/b;->()V -SPLcom/moengage/push/amp/plus/b;->d(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Lcom/xiaomi/channel/commonutils/android/a;)V -SPLcom/moengage/push/amp/plus/b;->g()Z -Lcom/moengage/push/amp/plus/b$f; -SPLcom/moengage/push/amp/plus/b$f;->()V -SPLcom/moengage/push/amp/plus/b$f;->()V -Lcom/moengage/push/amp/plus/b$i; -SPLcom/moengage/push/amp/plus/b$i;->()V -SPLcom/moengage/push/amp/plus/b$i;->()V Lcom/navi/adverse/data/network/model/AdverseConfig; SPLcom/navi/adverse/data/network/model/AdverseConfig;->()V SPLcom/navi/adverse/data/network/model/AdverseConfig;->(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;J)V @@ -52506,7 +52472,6 @@ SPLcom/navi/analytics/firebase/a$c;->()V SPLcom/navi/analytics/firebase/a$c;->()V SPLcom/navi/analytics/firebase/a$c;->a()Lcom/navi/analytics/firebase/a; Lcom/navi/analytics/model/AnalyticsConfiguration; -SPLcom/navi/analytics/model/AnalyticsConfiguration;->(Ljava/lang/String;Ljava/lang/String;Lcom/navi/analytics/model/MoengageData;Lcom/navi/analytics/model/AppInfo;Ljava/lang/String;ZZLcom/navi/analytics/model/PulseConfig;)V SPLcom/navi/analytics/model/AnalyticsConfiguration;->getAlfredKey()Ljava/lang/String; SPLcom/navi/analytics/model/AnalyticsConfiguration;->getAppInfo()Lcom/navi/analytics/model/AppInfo; SPLcom/navi/analytics/model/AnalyticsConfiguration;->getAppsFlyerKey()Ljava/lang/String; @@ -52520,8 +52485,6 @@ SPLcom/navi/analytics/model/AppInfo;->getAppName()Ljava/lang/String; SPLcom/navi/analytics/model/AppInfo;->getAppVersionCode()Ljava/lang/String; SPLcom/navi/analytics/model/AppInfo;->getAppVersionName()Ljava/lang/String; Lcom/navi/analytics/model/EventData; -Lcom/navi/analytics/model/MoengageData; -SPLcom/navi/analytics/model/MoengageData;->(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;)V Lcom/navi/analytics/model/PulseConfig; SPLcom/navi/analytics/model/PulseConfig;->(Ljava/lang/String;II)V SPLcom/navi/analytics/model/PulseConfig;->getEventBatchSize()I @@ -66472,12 +66435,6 @@ SPLcom/truecaller/android/sdk/oAuth/g;->e(Landroid/content/Context;Ljava/lang/St SPLcom/truecaller/android/sdk/oAuth/g;->f([B)Ljava/lang/String; SPLcom/truecaller/android/sdk/oAuth/g;->g(Ljava/security/MessageDigest;[B)Ljava/lang/String; SPLcom/truecaller/android/sdk/oAuth/g;->h(Ljava/lang/String;[B)Ljava/lang/String; -Lcom/xiaomi/channel/commonutils/android/MIPushProvider; -SPLcom/xiaomi/channel/commonutils/android/MIPushProvider;->()V -SPLcom/xiaomi/channel/commonutils/android/MIPushProvider;->onCreate()Z -Lcom/xiaomi/channel/commonutils/android/a; -SPLcom/xiaomi/channel/commonutils/android/a;->()V -SPLcom/xiaomi/channel/commonutils/android/a;->(Ljava/lang/String;I)V Ldagger/a; Ldagger/hilt/a; HSPLdagger/hilt/a;->a(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object; diff --git a/android/app/src/main/java/com/moengage/push/amp/plus/MiPushHelper.kt b/android/app/src/main/java/com/moengage/push/amp/plus/MiPushHelper.kt deleted file mode 100644 index 15ce1ce0ba..0000000000 --- a/android/app/src/main/java/com/moengage/push/amp/plus/MiPushHelper.kt +++ /dev/null @@ -1,213 +0,0 @@ -/* - * - * * Copyright © 2014-2024 by Navi Technologies Limited - * * All rights reserved. Strictly confidential - * - */ - -package com.moengage.push.amp.plus - -import android.app.ActivityManager -import android.content.Context -import android.os.Process -import com.moengage.core.LogLevel -import com.moengage.core.internal.MANUFACTURER_XIAOMI -import com.moengage.core.internal.global.GlobalResources -import com.moengage.core.internal.logger.Logger -import com.moengage.core.internal.utils.MoEUtils -import com.moengage.core.internal.utils.jsonToBundle -import com.moengage.mi.MoEMiPushHelper -import com.moengage.pushbase.MoEPushHelper -import com.xiaomi.channel.commonutils.android.Region -import com.xiaomi.mipush.sdk.ErrorCode -import com.xiaomi.mipush.sdk.MiPushClient -import com.xiaomi.mipush.sdk.MiPushCommandMessage -import com.xiaomi.mipush.sdk.MiPushMessage -import org.json.JSONObject - -/** - * Helper class to integrate Push-Amp-Plus module of the MoEngage SDK. - * - * @author Umang Chamaria - * @since 1.0.0 - */ -object MiPushHelper { - - private const val tag = "MiPushHelper" - - /** - * Helper method to pass notification click callback to the MoEngage SDK. - * - * @param context instance of [Context] - * @param message instance of [MiPushMessage] - * @since 1.0.0 - */ - fun onNotificationClicked(context: Context, message: MiPushMessage) { - try { - Logger.print { "$tag onNotificationClicked() : Notification clicked: $message" } - val messageContent = message.content - if (messageContent.isNullOrBlank()) return - val pushPayload = jsonToBundle(JSONObject(messageContent)) ?: return - MoEMiPushHelper.getInstance().onNotificationClicked(context, pushPayload) - } catch (e: Throwable) { - Logger.print(LogLevel.ERROR, e) { "$tag onNotificationClicked() : " } - } - } - - /** - * Helper method to pass the notification payload to the MoEngage SDK. - * - * @param context instance of [Context] - * @param message instance of [MiPushMessage] - * @since 1.0.0 - */ - fun passPushPayload(context: Context, message: MiPushMessage) { - try { - Logger.print { "$tag passPushPayload() : $message" } - val messageContent = message.content - if (messageContent.isNullOrBlank()) return - val pushPayload = jsonToBundle(JSONObject(messageContent)) - MoEMiPushHelper.getInstance().passPushPayload(context, pushPayload) - } catch (e: Exception) { - Logger.print(LogLevel.ERROR, e) { "$tag passPushPayload() : " } - } - } - - /** - * Helper method to pass the Push token to the MoEngage SDK. - * - * @param context instance of [Context] - * @param message instance of [MiPushCommandMessage] - * @since 1.0.0 - */ - fun passPushToken(context: Context, message: MiPushCommandMessage) { - try { - Logger.print { "$tag passPushToken() : Message: $message" } - val command = message.command - if (MiPushClient.COMMAND_REGISTER != command) { - Logger.print { "$tag passPushToken() : Received command is not register command." } - return - } - if (message.resultCode != ErrorCode.SUCCESS.toLong()) { - Logger.print { "$tag passPushToken() : Registration failed." } - return - } - val arguments = message.commandArguments ?: return - val pushToken = if (arguments.size > 0) arguments[0] else null - if (pushToken.isNullOrEmpty()) { - Logger.print { "$tag passPushToken() : Token is null or empty." } - return - } - val region = MiPushClient.getAppRegion(context) - Logger.print { "$tag passPushToken() : App Region $region" } - setDataRegion(context, region) - MoEMiPushHelper.getInstance().passPushToken(context, pushToken) - } catch (e: Throwable) { - Logger.print(LogLevel.ERROR, e) { "$tag passPushToken() : " } - } - } - - /** - * Helper API to check if the payload is from MoEngage platform or not. - * - * @param message instance of [MiPushMessage] - * @since 1.0.0 - */ - fun isFromMoEngagePlatform(message: MiPushMessage): Boolean { - try { - val messageContent = message.content - if (messageContent.isNullOrBlank()) return false - val payload = jsonToBundle(JSONObject(messageContent)) - return MoEPushHelper.getInstance().isFromMoEngagePlatform(payload) - } catch (e: Throwable) { - Logger.print(LogLevel.ERROR, e) { "$tag isFromMoEngagePlatform() : " } - } - return false - } - - /** - * Initialise Mi SDK - * - * @param context instance of [Context] - * @param appId App-Id from the Mi Dashboard. - * @param appKey App-Key from the Mi Dashboard. - * @param region The region in which the Mi data should reside. Set the region using [Region]. - * @since 1.0.0 - */ - fun initialiseMiPush(context: Context, appKey: String, appId: String, region: Region) { - if (MANUFACTURER_XIAOMI != MoEUtils.deviceManufacturer()) { - Logger.print(LogLevel.WARN) { - "$tag initialiseMiPush() : Not a Xiaomi device, rejecting Mi token." - } - return - } - if (!MoEMiPushHelper.getInstance().hasMiUi()) { - Logger.print { - "$tag initialiseMiPush() : Device Does not have Mi Ui will not register for mi push" - } - return - } - initialise(context, appId, appKey, region) - } - - /** - * Set the region in which the Mi data reside. - * - * @param context: instance of [Context] - * @param region: The region in which the Mi data reside. Set the region using [Region]. - * @since 1.0.1 - */ - private fun setDataRegion(context: Context, region: String) { - try { - MoEMiPushHelper.getInstance().setDataRegion(context, region.lowercase()) - } catch (e: Throwable) { - Logger.print(LogLevel.ERROR, e) { "$tag setDataRegion() : " } - } - } - - private fun isMainProcess(context: Context): Boolean { - val am = - context.getSystemService(Context.ACTIVITY_SERVICE) as ActivityManager ?: return false - val processInfos = am.runningAppProcesses - val mainProcessName = context.packageName - val myPid = Process.myPid() - for (info in processInfos) { - if (info.pid == myPid && mainProcessName == info.processName) { - return true - } - } - return false - } - - private fun initialise(context: Context, appId: String, appKey: String, region: Region) { - try { - Logger.print { "$tag initialiseMiPush() : Will initialise Mi Push if required." } - Logger.print { "$tag initialiseMiPush(): AppId: $appId AppKey: $appKey" } - if (!isMainProcess(context)) { - Logger.print { - "$tag initialiseMiPush() : Will not initialise, not the main process" - } - return - } - Logger.print { "$tag initialiseMiPush() : Will register for Mi Push" } - GlobalResources.executor.execute { - MiPushClient.setRegion(region) - MiPushClient.registerPush(context.applicationContext, appId, appKey) - } - } catch (e: Throwable) { - Logger.print(LogLevel.ERROR, e) { "$tag initialiseMiPush() : " } - } - } - - fun isMiDevice(): Boolean { - if (MANUFACTURER_XIAOMI != MoEUtils.deviceManufacturer()) { - Logger.print(LogLevel.WARN) { "$tag isMiDevice() : Not a Xiaomi device" } - return false - } - if (!MoEMiPushHelper.getInstance().hasMiUi()) { - Logger.print { "$tag isMiDevice() : Device Does not have Mi Ui" } - return false - } - return true - } -} diff --git a/android/app/src/main/java/com/moengage/push/amp/plus/MiPushReceiver.kt b/android/app/src/main/java/com/moengage/push/amp/plus/MiPushReceiver.kt deleted file mode 100644 index 321e28a037..0000000000 --- a/android/app/src/main/java/com/moengage/push/amp/plus/MiPushReceiver.kt +++ /dev/null @@ -1,121 +0,0 @@ -/* - * - * * Copyright © 2014-2024 by Navi Technologies Limited - * * All rights reserved. Strictly confidential - * - */ - -package com.moengage.push.amp.plus - -import android.content.Context -import android.content.Intent -import android.content.Intent.FLAG_ACTIVITY_NEW_TASK -import com.google.firebase.crashlytics.FirebaseCrashlytics -import com.google.gson.Gson -import com.moengage.core.internal.logger.Logger -import com.moengage.core.internal.utils.jsonToBundle -import com.moengage.pushbase.MoEPushHelper -import com.navi.analytics.utils.NaviTrackEvent -import com.navi.common.firebaseremoteconfig.FirebaseRemoteConfigHelper -import com.navi.common.utils.getSessionId -import com.naviapp.home.compose.activity.HomePageActivity -import com.naviapp.utils.Constants -import com.xiaomi.mipush.sdk.MiPushCommandMessage -import com.xiaomi.mipush.sdk.MiPushMessage -import com.xiaomi.mipush.sdk.PushMessageReceiver -import org.json.JSONObject - -/** - * Callback receiver for Mi SDK - * - * @author Umang Chamaria - * @since 1.0.0 - */ -class MiPushReceiver : PushMessageReceiver() { - - companion object { - const val MI_PUSH_DELIVERED = "XM_DELIVERED" - const val MI_PUSH_CLICKED = "XM_CLICKED" - } - - private val tag = "MiPushReceiver" - - override fun onReceivePassThroughMessage(context: Context?, message: MiPushMessage?) { - Logger.print { "$tag onReceivePassThroughMessage() : $message" } - if (message == null || context == null) return - if (MiPushHelper.isFromMoEngagePlatform(message)) { - MiPushHelper.passPushPayload(context, message) - } - } - - override fun onNotificationMessageClicked(context: Context?, message: MiPushMessage?) { - try { - Logger.print { "$tag onNotificationMessageClicked() : $message" } - if (message == null || context == null) return - MiPushHelper.onNotificationClicked(context, message) - val pushPayloadContent = message.content - val isXmPushEnabled = - FirebaseRemoteConfigHelper.getBoolean(FirebaseRemoteConfigHelper.XM_PUSH_ENABLED) - if (isXmPushEnabled && !isNotificationFromMoEngage(pushPayloadContent)) { - handleNaviNotification(pushPayloadContent, context) - } - } catch (e: Exception) { - FirebaseCrashlytics.getInstance().recordException(e) - } - } - - override fun onNotificationMessageArrived(context: Context?, message: MiPushMessage?) { - try { - Logger.print { "$tag onNotificationMessageArrived() : $message" } - if (message == null || context == null) return - val pushPayloadContent = message.content - val isXmPushEnabled = - FirebaseRemoteConfigHelper.getBoolean(FirebaseRemoteConfigHelper.XM_PUSH_ENABLED) - if (isXmPushEnabled && !isNotificationFromMoEngage(pushPayloadContent)) { - val map = Gson().fromJson>(message.content, HashMap::class.java) - NaviTrackEvent.trackEventOnClickStream( - MI_PUSH_DELIVERED, - mapOf( - map[Constants.TEMPLATE_NAME].orEmpty() to getSessionId().orEmpty(), - map[Constants.MESSAGE_ID].orEmpty() to getSessionId().orEmpty() - ) - ) - } - } catch (e: Exception) { - FirebaseCrashlytics.getInstance().recordException(e) - } - } - - override fun onReceiveRegisterResult(context: Context?, message: MiPushCommandMessage?) { - Logger.print { "$tag onReceiveRegisterResult() : $message" } - if (message == null || context == null) return - MiPushHelper.passPushToken(context, message) - } - - override fun onCommandResult(context: Context?, message: MiPushCommandMessage?) { - Logger.print { "$tag onCommandResult() : $message" } - if (message == null || context == null) return - MiPushHelper.passPushToken(context, message) - } - - private fun isNotificationFromMoEngage(content: String): Boolean { - val pushPayload = jsonToBundle(JSONObject(content)) - return MoEPushHelper.getInstance().isFromMoEngagePlatform(pushPayload) - } - - private fun handleNaviNotification(payLoad: String, context: Context) { - try { - val map = Gson().fromJson>(payLoad, HashMap::class.java) - NaviTrackEvent.trackEventOnClickStream( - MI_PUSH_CLICKED, - mapOf(map[Constants.TEMPLATE_NAME].orEmpty() to getSessionId().orEmpty()) - ) - val deeplinkIntent = Intent(context, HomePageActivity::class.java) - map.forEach { deeplinkIntent.putExtra(it.key, it.value) } - deeplinkIntent.addFlags(FLAG_ACTIVITY_NEW_TASK) - context.startActivity(deeplinkIntent) - } catch (e: Exception) { - FirebaseCrashlytics.getInstance().recordException(e) - } - } -} diff --git a/android/app/src/main/java/com/naviapp/analytics/utils/NaviSDKHelper.kt b/android/app/src/main/java/com/naviapp/analytics/utils/NaviSDKHelper.kt index 16938c7c49..57bc6c3548 100644 --- a/android/app/src/main/java/com/naviapp/analytics/utils/NaviSDKHelper.kt +++ b/android/app/src/main/java/com/naviapp/analytics/utils/NaviSDKHelper.kt @@ -13,14 +13,12 @@ import android.content.Context import android.os.Build import android.os.Process import android.webkit.WebView -import com.moengage.push.amp.plus.MiPushHelper import com.navi.adverse.data.network.model.AdverseConfig import com.navi.adverse.sdk.sdkManager.AdverseSdkManager import com.navi.alfred.AlfredManager import com.navi.alfred.utils.AlfredConstants import com.navi.analytics.model.AnalyticsConfiguration import com.navi.analytics.model.AppInfo -import com.navi.analytics.model.MoengageData import com.navi.analytics.model.PulseConfig import com.navi.analytics.utils.NaviTrackEvent import com.navi.base.BuildConfig as BaseBuildConfig @@ -40,17 +38,14 @@ import com.navi.common.utils.updateSessionId import com.navi.pay.common.setup.NaviPayManager import com.navi.payment.razorpay.RazorpayHelper import com.naviapp.BuildConfig -import com.naviapp.R import com.naviapp.adverse.AdverseDependencyProvider import com.naviapp.analytics.deeplink.DeeplinkManager import com.naviapp.app.NaviApplication import com.naviapp.app.initializers.ApplicationComponent.applicationScope import com.naviapp.common.helper.UpiSdkHelperImpl import com.naviapp.common.navigator.NaviDeepLinkNavigator -import com.naviapp.home.compose.activity.HomePageActivity import com.naviapp.utils.getAppName import com.naviapp.utils.getVersionCode -import com.xiaomi.channel.commonutils.android.Region import io.branch.referral.Branch import kotlinx.coroutines.launch import timber.log.Timber @@ -64,19 +59,9 @@ object NaviSDKHelper { WebView.setDataDirectorySuffix(Application.getProcessName()) } } else { - val inAppOptOutScreens = mutableSetOf>() - inAppOptOutScreens.add(HomePageActivity::class.java) NaviTrackEvent.appInit( naviApplication, AnalyticsConfiguration( - moengageData = - MoengageData( - BuildConfig.MOENGAGE_KEY, - R.drawable.notifiaction_icon_small, - R.drawable.notifiaction_icon_large, - xiaomiPushAppId = BuildConfig.XIAOMI_PUSH_APP_ID, - xiaomiPushAppKey = BuildConfig.XIAOMI_PUSH_APP_KEY - ), appInfo = AppInfo( getAppName(), @@ -99,13 +84,6 @@ object NaviSDKHelper { .toInt() ) ), - inAppOptOutScreens - ) - MiPushHelper.initialiseMiPush( - naviApplication, - BuildConfig.XIAOMI_PUSH_APP_KEY, - BuildConfig.XIAOMI_PUSH_APP_ID, - Region.India ) // Branch initialization. // Should be removed from application startup @@ -202,8 +180,7 @@ object NaviSDKHelper { private fun getCurrentProcess(context: Context): String? { try { - val am = - context.getSystemService(Context.ACTIVITY_SERVICE) as ActivityManager ?: return null + val am = context.getSystemService(Context.ACTIVITY_SERVICE) as ActivityManager val processInfos = am.runningAppProcesses ?: emptyList() val myPid = Process.myPid() for (info in processInfos) { diff --git a/android/app/src/main/java/com/naviapp/personalloanrevamp/useridentificationv2/activities/PermissionV2Activity.kt b/android/app/src/main/java/com/naviapp/personalloanrevamp/useridentificationv2/activities/PermissionV2Activity.kt index 5d51c7b453..65d98f92f4 100644 --- a/android/app/src/main/java/com/naviapp/personalloanrevamp/useridentificationv2/activities/PermissionV2Activity.kt +++ b/android/app/src/main/java/com/naviapp/personalloanrevamp/useridentificationv2/activities/PermissionV2Activity.kt @@ -22,7 +22,6 @@ import androidx.recyclerview.widget.LinearLayoutManager import androidx.work.Data import androidx.work.OneTimeWorkRequestBuilder import androidx.work.WorkManager -import com.moengage.core.internal.utils.isNullOrEmpty import com.navi.analytics.utils.NaviTrackEvent import com.navi.base.model.CtaData import com.navi.base.model.LineItem @@ -145,12 +144,12 @@ class PermissionV2Activity : leftIconCode = permissionDetailsResponse.header?.leftIconCode, infoCta = permissionDetailsResponse.header?.infoCta, hideHelp = !(permissionDetailsResponse.header?.enableHelp ?: false), - hideLeftIcon = isNullOrEmpty(permissionDetailsResponse.header?.leftIconCode), + hideLeftIcon = permissionDetailsResponse.header?.leftIconCode.isNullOrEmpty(), colorInt = null, hideDivider = true ) setLeftIconVisibility( - !isNullOrEmpty(permissionDetailsResponse.header?.leftIconCode) + permissionDetailsResponse.header?.leftIconCode.isNullOrEmpty().not() ) binding.headerDescriptionView.setProperties(permissionDetailsResponse.header) permissionDetailsResponse.footer?.let { footerData -> setFooterData(footerData) } diff --git a/android/app/src/main/java/com/naviapp/personalloanrevamp/useridentificationv2/activities/PlMandatePermissionActivity.kt b/android/app/src/main/java/com/naviapp/personalloanrevamp/useridentificationv2/activities/PlMandatePermissionActivity.kt index 1445ec92d9..e834ea78b5 100644 --- a/android/app/src/main/java/com/naviapp/personalloanrevamp/useridentificationv2/activities/PlMandatePermissionActivity.kt +++ b/android/app/src/main/java/com/naviapp/personalloanrevamp/useridentificationv2/activities/PlMandatePermissionActivity.kt @@ -22,7 +22,6 @@ import androidx.recyclerview.widget.LinearLayoutManager import androidx.work.Data import androidx.work.OneTimeWorkRequestBuilder import androidx.work.WorkManager -import com.moengage.core.internal.utils.isNullOrEmpty import com.navi.analytics.utils.NaviTrackEvent import com.navi.base.model.CtaData import com.navi.base.model.StyledTextWithIconCode @@ -122,12 +121,12 @@ class PlMandatePermissionActivity : leftIconCode = permissionDetailsResponse.header?.leftIconCode, infoCta = permissionDetailsResponse.header?.infoCta, hideHelp = !(permissionDetailsResponse.header?.enableHelp ?: false), - hideLeftIcon = isNullOrEmpty(permissionDetailsResponse.header?.leftIconCode), + hideLeftIcon = permissionDetailsResponse.header?.leftIconCode.isNullOrEmpty(), colorInt = null, hideDivider = true ) setLeftIconVisibility( - !isNullOrEmpty(permissionDetailsResponse.header?.leftIconCode) + permissionDetailsResponse.header?.leftIconCode.isNullOrEmpty().not() ) binding.headerTitle.text = permissionDetailsResponse.header?.title binding.headerSubTitle.text = permissionDetailsResponse.header?.subtitle diff --git a/android/app/src/main/java/com/naviapp/pushnotification/NotificationHandler.kt b/android/app/src/main/java/com/naviapp/pushnotification/NotificationHandler.kt index 9a7b9b2b69..e059c99034 100644 --- a/android/app/src/main/java/com/naviapp/pushnotification/NotificationHandler.kt +++ b/android/app/src/main/java/com/naviapp/pushnotification/NotificationHandler.kt @@ -17,7 +17,6 @@ import com.google.android.gms.location.LocationRequest import com.google.android.gms.location.LocationServices import com.google.android.gms.tasks.OnCompleteListener import com.google.firebase.messaging.FirebaseMessaging -import com.moengage.push.amp.plus.MiPushHelper import com.navi.analytics.utils.NaviTrackEvent import com.navi.base.sharedpref.CommonPrefConstants import com.navi.base.sharedpref.PreferenceManager @@ -61,7 +60,6 @@ import com.naviapp.utils.EMPTY import com.naviapp.utils.FCM_TOKEN import com.naviapp.utils.FCM_TOKEN_LAST_UPDATED_TIME import com.naviapp.utils.GOOGLE_ADVERTISING_ID -import com.xiaomi.mipush.sdk.MiPushClient import kotlinx.coroutines.CoroutineExceptionHandler import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers @@ -129,7 +127,6 @@ object NotificationHandler { WifiDetails::class.java ), hardwareDetail = getHardwareDetails(context, screenRefreshRate), - miPushToken = getMiPushClientRegId(context), isInstalledOnProfiles = isInstalledInProfile(context), localStorageLocation = getLocalStorageLocation(context), sourceSignature = getDeviceSignature(context), @@ -173,13 +170,6 @@ object NotificationHandler { } } - fun getMiPushClientRegId(context: Context): String? { - if (MiPushHelper.isMiDevice()) { - return MiPushClient.getRegId(context) - } - return null - } - fun handleFcmToken(context: Context, screenRefreshRate: String?, naeScreenName: String) { if (isFcmTokenNeedToUpdate()) populateFcmToken(context, screenRefreshRate, naeScreenName = naeScreenName) @@ -201,7 +191,6 @@ object NotificationHandler { // Get new FCM registration token task.result?.let { fcmToken -> - setFcmTokenToMoengage(fcmToken) sendRegistrationToServer( fcmToken, context, @@ -213,18 +202,6 @@ object NotificationHandler { ) } - private fun setFcmTokenToMoengage(token: String) { - try { - PreferenceManager.setStringPreference(FCM_TOKEN, token) - NaviTrackEvent.trackEventOnClickStream( - com.navi.common.utils.Constants.FCM_TOKEN_STORED, - mapOf(com.navi.common.utils.Constants.FCM_TOKEN to token) - ) - } catch (e: Exception) { - e.log() - } - } - private fun isFcmTokenNeedToUpdate(): Boolean { val lastUpdatedTime = PreferenceManager.getLongPreference(FCM_TOKEN_LAST_UPDATED_TIME).orZero() diff --git a/android/application-platform/app/src/main/java/com/applicationplatform/MainApplication.kt b/android/application-platform/app/src/main/java/com/applicationplatform/MainApplication.kt index 86798542c9..828991545f 100644 --- a/android/application-platform/app/src/main/java/com/applicationplatform/MainApplication.kt +++ b/android/application-platform/app/src/main/java/com/applicationplatform/MainApplication.kt @@ -14,7 +14,6 @@ import com.google.firebase.remoteconfig.remoteConfig import com.navi.alfred.utils.AlfredConstants import com.navi.analytics.model.AnalyticsConfiguration import com.navi.analytics.model.AppInfo -import com.navi.analytics.model.MoengageData import com.navi.analytics.utils.NaviTrackEvent import com.navi.base.sharedpref.CommonPrefConstants import com.navi.base.sharedpref.PreferenceManager @@ -48,14 +47,6 @@ class MainApplication : MultiDexApplication() { NaviTrackEvent.appInit( this, AnalyticsConfiguration( - moengageData = - MoengageData( - "BuildConfig.MOENGAGE_KEY", - -1, - -1, - xiaomiPushAppId = "BuildConfig.XIAOMI_PUSH_APP_ID", - xiaomiPushAppKey = "BuildConfig.XIAOMI_PUSH_APP_KEY" - ), appInfo = AppInfo( "getAppName()", @@ -67,8 +58,7 @@ class MainApplication : MultiDexApplication() { alfredKey = "BuildConfig.ALFRED_API_KEY", disableAlfredLogs = FirebaseRemoteConfigHelper.getBoolean(AlfredConstants.DISABLE_ALFRED_LOGS) - ), - mutableSetOf() + ) ) PreferenceManager.setStringPreference(CommonPrefConstants.USER_EXTERNAL_ID, userId) diff --git a/android/application-platform/app/src/main/java/com/applicationplatform/NaviSDKHelper.kt b/android/application-platform/app/src/main/java/com/applicationplatform/NaviSDKHelper.kt index de0124be0e..ea33d958d0 100644 --- a/android/application-platform/app/src/main/java/com/applicationplatform/NaviSDKHelper.kt +++ b/android/application-platform/app/src/main/java/com/applicationplatform/NaviSDKHelper.kt @@ -18,7 +18,6 @@ import android.webkit.WebView import com.google.firebase.auth.FirebaseAuth import com.navi.analytics.model.AnalyticsConfiguration import com.navi.analytics.model.AppInfo -import com.navi.analytics.model.MoengageData import com.navi.analytics.utils.NaviTrackEvent import com.navi.base.deeplink.listener.DeepLinkListener import com.navi.base.model.CtaData @@ -40,19 +39,9 @@ object NaviSDKHelper { WebView.setDataDirectorySuffix(Application.getProcessName()) } } else { - // FirebaseRemoteConfigHelper.init() - val inAppOptOutScreens = mutableSetOf>() NaviTrackEvent.appInit( naviApplication, AnalyticsConfiguration( - moengageData = - MoengageData( - "BuildConfig.MOENGAGE_KEY", - -1, - -1, - xiaomiPushAppId = "BuildConfig.XIAOMI_PUSH_APP_ID", - xiaomiPushAppKey = "BuildConfig.XIAOMI_PUSH_APP_KEY" - ), appInfo = AppInfo( "getAppName()", @@ -63,44 +52,8 @@ object NaviSDKHelper { alfredKey = "BuildConfig.ALFRED_API_KEY", flavor = "BuildConfig.FLAVOR", disableAlfredLogs = true - ), - inAppOptOutScreens = inAppOptOutScreens + ) ) - // MiPushHelper.initialiseMiPush( - // naviApplication, - // BuildConfig.XIAOMI_PUSH_APP_KEY, - // BuildConfig.XIAOMI_PUSH_APP_ID, - // Region.India - // ) - // DeeplinkManager.init(naviApplication) - // AMC initialization - // AMCManager.init( - // applicationContext = naviApplication, - // baseUrl = getBaseUrl() ?: BuildConfig.BASE_URL, - // appVersionName = BuildConfig.VERSION_NAME, - // appVersionCode = getVersionCode(), - // applicationId = BuildConfig.APPLICATION_ID, - // flavor = BuildConfig.FLAVOR - // ) - // Gold initialization - // DigitalGoldManager.init( - // applicationContext = naviApplication, - // baseUrl = getBaseUrl() ?: BuildConfig.BASE_URL, - // appVersionName = BuildConfig.VERSION_NAME, - // appVersionCode = getVersionCode(), - // applicationId = BuildConfig.APPLICATION_ID, - // flavor = BuildConfig.FLAVOR - // ) - // Payment inititialization - // PaymentNetworkManager.init( - // applicationContext = naviApplication, - // baseUrl = getBaseUrl(), - // appVersionName = BuildConfig.VERSION_NAME, - // appVersionCode = getVersionCode(), - // applicationId = BuildConfig.APPLICATION_ID, - // flavor = BuildConfig.FLAVOR - // ) - // Common Lib initialization CommonLibManager.init( application = naviApplication, listener = @@ -130,29 +83,7 @@ object NaviSDKHelper { flavor = "QA", sslPinningKey = "sha256/nUU7NjGrGo/mxijjsX+MHerUbpIHBidF8LAYOEPFWA8=", ) - // Insurance initialization - // GILibManager.init( - // ctx = naviApplication, - // baseUrl = getBaseUrl(), - // appVersionName = BuildConfig.VERSION_NAME, - // appVersionCode = getVersionCode(), - // ) - // RRNetworkManager.init( - // applicationContext = naviApplication, - // baseUrl = BaseUtils.getUpdatedBaseUrl() ?: BuildConfig.BASE_URL, - // appVersionName = BuildConfig.VERSION_NAME, - // appVersionCode = BuildConfig.VERSION_CODE.toString(), - // applicationId = BuildConfig.APPLICATION_ID, - // flavor = BuildConfig.FLAVOR - // ) setupAnalyticsData(naviApplication) - // DeeplinkManager.fetchReferral(naviApplication) - // NaviPayManager.initAppInfo( - // baseUrl = getBaseUrl(), - // appVersionName = BuildConfig.VERSION_NAME, - // appVersionCode = getVersionCode(), - // ) - // NaviApplication.instance.naviPayManager.get().init() } } @@ -199,10 +130,7 @@ object NaviSDKHelper { fun logoutUser(context: Context) { NaviTrackEvent.logoutUser() FirebaseAuth.getInstance().signOut() - // RazorpayHelper().clearRazorPayData(context) UserManager.clearUser() - // DeeplinkManager.logOut() - // NaviApplication.instance.naviPayManager.get().logout() } fun setLocation(latitude: Double, longitude: Double) { diff --git a/android/application-platform/navi-ap/src/main/kotlin/com/navi/ap/common/renderer/Camera/CameraWidget.kt b/android/application-platform/navi-ap/src/main/kotlin/com/navi/ap/common/renderer/Camera/CameraWidget.kt index 876c414b4a..2bfefe216e 100644 --- a/android/application-platform/navi-ap/src/main/kotlin/com/navi/ap/common/renderer/Camera/CameraWidget.kt +++ b/android/application-platform/navi-ap/src/main/kotlin/com/navi/ap/common/renderer/Camera/CameraWidget.kt @@ -9,6 +9,7 @@ package com.navi.ap.common.renderer.Camera import android.content.Context import android.net.Uri +import android.widget.Toast import androidx.camera.core.ImageCapture import androidx.camera.core.ImageCapture.CAPTURE_MODE_MAXIMIZE_QUALITY import androidx.camera.core.ImageCapture.FLASH_MODE_AUTO @@ -44,7 +45,6 @@ import androidx.compose.ui.platform.LocalLifecycleOwner import androidx.compose.ui.unit.dp import androidx.compose.ui.viewinterop.AndroidView import androidx.lifecycle.LifecycleOwner -import com.moengage.core.internal.utils.showToast import com.navi.ap.common.models.WidgetModelDefinition import com.navi.ap.common.models.customwidget.CameraWidgetData import com.navi.ap.common.ui.composables.GenericShimmerLoader @@ -87,7 +87,12 @@ class CameraWidget { capturedImageUri = capturedImageUri.value, onImageCaptured = { uri -> capturedImageUri.value = uri }, onError = { exception -> - showToast(context, "${CAPTURE_ERROR_MEESAGE}${exception.message}") + Toast.makeText( + context, + "${CAPTURE_ERROR_MEESAGE}${exception.message}", + Toast.LENGTH_SHORT + ) + .show() }, cameraWidgetData = cameraWidgetData, viewModel = viewModel diff --git a/android/gradle/libs.versions.toml b/android/gradle/libs.versions.toml index b8c973376a..8470e10a41 100644 --- a/android/gradle/libs.versions.toml +++ b/android/gradle/libs.versions.toml @@ -92,10 +92,6 @@ lottie = "6.4.1" masayukiSuda-easingInterpolator = "v1.3.2" mlkit-barcodeScanning = "17.3.0" mockk = "1.13.10" -moengage-android-sdk = "12.6.02" -moengage-inapp = "6.5.0" -moengage-push-amp-plus = "6.2.1" -moengage-rich-notification = "4.3.2" mvel2 = "2.4.15.Final" navi-adverse = "1.9.0" navi-alfred = "1.18.0" @@ -347,11 +343,6 @@ mlkit-barcodeScanning = { module = "com.google.mlkit:barcode-scanning", version. mockk = { module = "io.mockk:mockk", version.ref = "mockk" } mockk-android = { module = "io.mockk:mockk-android", version.ref = "mockk" } -moengage-android-sdk = { module = "com.moengage:moe-android-sdk", version.ref = "moengage-android-sdk" } -moengage-inapp = { module = "com.moengage:inapp", version.ref = "moengage-inapp" } -moengage-push-amp-plus = { module = "com.moengage:push-amp-plus", version.ref = "moengage-push-amp-plus" } -moengage-rich-notification = { module = "com.moengage:rich-notification", version.ref = "moengage-rich-notification" } - mvel2 = { module = "org.mvel:mvel2", version.ref = "mvel2" } navi-adverse = { module = "com.navi.android:adverse", version.ref = "navi-adverse" } diff --git a/android/navi-amc/proguard-rules.pro b/android/navi-amc/proguard-rules.pro index cd6cdec186..934ed5aee2 100644 --- a/android/navi-amc/proguard-rules.pro +++ b/android/navi-amc/proguard-rules.pro @@ -168,52 +168,8 @@ -dontwarn com.google.android.gms.location.** -keep class com.google.android.gms.location.** { *; } --keep class com.moe.pushlibrary.activities.** { *; } --keep class com.moe.pushlibrary.MoEHelper --keep class com.moengage.locationlibrary.GeofenceIntentService --keep class com.moe.pushlibrary.InstallReceiver --keep class com.moe.pushlibrary.providers.MoEProvider --keep class com.moe.pushlibrary.models.** { *;} --keep class com.moengage.core.GeoTask --keep class com.moengage.location.GeoManager --keep class com.moengage.inapp.InAppManager --keep class com.moengage.push.PushManager --keep class com.moengage.inapp.InAppController --keep class com.moe.pushlibrary.AppUpdateReceiver --keep class com.moengage.core.MoEAlarmReceiver --keep class com.moengage.core.MoEngage - -# Push --keep class com.moengage.pushbase.activities.PushTracker --keep class com.moengage.pushbase.activities.SnoozeTracker --keep class com.moengage.pushbase.push.MoEPushWorker --keep class com.moe.pushlibrary.MoEWorker - -# Real Time Triggers --keep class com.moengage.addon.trigger.DTHandlerImpl --keep class com.moengage.core.MoEDTManager --keep class com.moengage.core.MoEDTManager.DTHandler - -# Push Amplification --keep class com.moengage.addon.messaging.MessagingHandlerImpl --keep class com.moengage.push.MoEMessagingManager --keep class com.moengage.addon.messaging.MoEMessageSyncJob --keep class com.moengage.addon.messaging.MoEMessageSyncReceiver --keep class com.moengage.addon.messaging.MoEMessageSyncIntentService - --dontwarn com.moengage.location.GeoManager --dontwarn com.moengage.core.GeoTask --dontwarn com.moengage.receiver.* --dontwarn com.moengage.worker.* --dontwarn com.moengage.inapp.ViewEngine - -keep class com.delight.** { *; } -# only when using FCM --keep class com.moengage.firebase.MoEngaeFireBaseMessagingService --keep class com.moengage.firebase.MoEngageFireBaseInstanceIdService --keep class com.moengage.firebase.PushHandlerImpl - -dontwarn com.google.android.material.** -keep class com.google.android.material.** { *; } diff --git a/android/navi-analytics/build.gradle b/android/navi-analytics/build.gradle index 26ad69ceea..d9190f533a 100644 --- a/android/navi-analytics/build.gradle +++ b/android/navi-analytics/build.gradle @@ -56,8 +56,6 @@ dependencies { api libs.firebase.firestore api libs.firebase.messaging api libs.firebase.perf - api libs.moengage.android.sdk - api libs.moengage.push.amp.plus api libs.navi.alfred api libs.retrofit.converter.gson api libs.retrofit.converter.scalars @@ -69,8 +67,6 @@ dependencies { implementation libs.androidx.room.runtime implementation libs.androidx.work.runtimeKtx implementation libs.appsflyer - implementation libs.moengage.inapp - implementation libs.moengage.rich.notification implementation libs.navi.pulse debugImplementation libs.chucker.library diff --git a/android/navi-analytics/proguard-rules.pro b/android/navi-analytics/proguard-rules.pro index fc960acae8..9804b48b21 100644 --- a/android/navi-analytics/proguard-rules.pro +++ b/android/navi-analytics/proguard-rules.pro @@ -20,34 +20,6 @@ # hide the original source file name. #-renamesourcefileattribute SourceFile -# only when using FCM --keep class com.moengage.firebase.MoEngaeFireBaseMessagingService --keep class com.moengage.firebase.MoEngageFireBaseInstanceIdService --keep class com.moengage.firebase.PushHandlerImpl - --keep class com.moe.pushlibrary.activities.** { *; } --keep class com.moe.pushlibrary.MoEHelper --keep class com.moe.pushlibrary.providers.MoEProvider --keep class com.moe.pushlibrary.models.** { *;} --keep class com.moengage.location.GeoManager --keep class com.moengage.push.PushManager --keep class com.moengage.inapp.InAppController --keep class com.moe.pushlibrary.AppUpdateReceiver --keep class com.moengage.core.MoEAlarmReceiver --keep class com.moengage.core.MoEngage - -# Push --keep class com.moengage.pushbase.activities.PushTracker --keep class com.moengage.pushbase.activities.SnoozeTracker --keep class com.moengage.pushbase.push.MoEPushWorker --keep class com.moe.pushlibrary.MoEWorker - --dontwarn com.moengage.location.GeoManager --dontwarn com.moengage.core.GeoTask --dontwarn com.moengage.receiver.* --dontwarn com.moengage.worker.* --dontwarn com.moengage.inapp.ViewEngine - #appsflyer -keep class com.appsflyer.** { *; } diff --git a/android/navi-analytics/src/main/java/com/navi/analytics/model/AnalyticsConfiguration.kt b/android/navi-analytics/src/main/java/com/navi/analytics/model/AnalyticsConfiguration.kt index 259e4f2228..41038b8144 100644 --- a/android/navi-analytics/src/main/java/com/navi/analytics/model/AnalyticsConfiguration.kt +++ b/android/navi-analytics/src/main/java/com/navi/analytics/model/AnalyticsConfiguration.kt @@ -14,7 +14,6 @@ import retrofit2.Response data class AnalyticsConfiguration( val appsFlyerKey: String, val alfredKey: String, - val moengageData: MoengageData, val appInfo: AppInfo, val flavor: String, val disableAlfred: Boolean, @@ -22,14 +21,6 @@ data class AnalyticsConfiguration( val pulseConfig: PulseConfig ) -data class MoengageData( - val moengageKey: String, - val smallIconId: Int, - val largeIconId: Int, - val xiaomiPushAppId: String, - val xiaomiPushAppKey: String -) - data class PulseConfig(val pulseUrl: String, val eventBatchSize: Int, val eventInterval: Int) { val pulseCallback = object : PulseCallback { diff --git a/android/navi-analytics/src/main/java/com/navi/analytics/utils/NaviTrackEvent.kt b/android/navi-analytics/src/main/java/com/navi/analytics/utils/NaviTrackEvent.kt index 7bd5328d16..46cb854b90 100644 --- a/android/navi-analytics/src/main/java/com/navi/analytics/utils/NaviTrackEvent.kt +++ b/android/navi-analytics/src/main/java/com/navi/analytics/utils/NaviTrackEvent.kt @@ -42,13 +42,9 @@ object NaviTrackEvent { fun appInit( appContext: Application, analyticsConfiguration: AnalyticsConfiguration, - inAppOptOutScreens: MutableSet>, ) { applicationContext = appContext FcmAnalyticsUtil.analytics.init() - this.analyticsConfiguration = analyticsConfiguration - this.inAppOptOutScreens = inAppOptOutScreens - this.appContext = appContext val pulseConfig = PulseSDKConfig.Configuration.Builder() .setAppName(analyticsConfiguration.appInfo.appName) diff --git a/android/navi-common/src/main/java/com/navi/common/firebaseremoteconfig/FirebaseRemoteConfigHelper.kt b/android/navi-common/src/main/java/com/navi/common/firebaseremoteconfig/FirebaseRemoteConfigHelper.kt index 85d09bcca4..3aa36c4db5 100644 --- a/android/navi-common/src/main/java/com/navi/common/firebaseremoteconfig/FirebaseRemoteConfigHelper.kt +++ b/android/navi-common/src/main/java/com/navi/common/firebaseremoteconfig/FirebaseRemoteConfigHelper.kt @@ -35,7 +35,6 @@ object FirebaseRemoteConfigHelper { const val VKYC_MAX_IMAGE_RESOLUTION_ALLOWED = "VKYC_MAX_IMAGE_RESOLUTION_ALLOWED" const val VKYC_MIN_FILE_SIZE_FOR_RESOLUTION_REDUCTION = "VKYC_MIN_FILE_SIZE_FOR_RESOLUTION_REDUCTION" - const val XM_PUSH_ENABLED = "XM_PUSH_ENABLED" const val FULL_SCREEN_VKYC_ENABLED = "FULL_SCREEN_VKYC_ENABLED" const val PAYMENT_CHANGES_DISABLE = "PAYMENT_CHANGES_DISABLE" const val PAYMENT_CHANGE_DISABLED = "PAYMENT_CHANGE_DISABLED" diff --git a/android/navi-common/src/main/java/com/navi/common/model/DeviceDetail.kt b/android/navi-common/src/main/java/com/navi/common/model/DeviceDetail.kt index 7b0fd65dd7..26d7bf320d 100644 --- a/android/navi-common/src/main/java/com/navi/common/model/DeviceDetail.kt +++ b/android/navi-common/src/main/java/com/navi/common/model/DeviceDetail.kt @@ -39,7 +39,6 @@ data class DeviceDetail( @SerializedName("appInstanceId") private val appInstanceId: String? = null, @SerializedName("wifiDetails") private val wifiDetails: WifiDetails? = null, @SerializedName("hardwareDetail") private val hardwareDetail: HardwareDetail? = null, - @SerializedName("miPushToken") var miPushToken: String? = null, @SerializedName("appVersionCode") private val appVersionCode: Int? = null, @SerializedName("appVersion") private val appVersion: String? = null, @SerializedName("installedOnProfiles") private val isInstalledOnProfiles: String? = null, diff --git a/android/navi-insurance/proguard-rules.pro b/android/navi-insurance/proguard-rules.pro index 4d813a272f..dfde25535a 100644 --- a/android/navi-insurance/proguard-rules.pro +++ b/android/navi-insurance/proguard-rules.pro @@ -157,52 +157,8 @@ -dontwarn com.google.android.gms.location.** -keep class com.google.android.gms.location.** { *; } --keep class com.moe.pushlibrary.activities.** { *; } --keep class com.moe.pushlibrary.MoEHelper --keep class com.moengage.locationlibrary.GeofenceIntentService --keep class com.moe.pushlibrary.InstallReceiver --keep class com.moe.pushlibrary.providers.MoEProvider --keep class com.moe.pushlibrary.models.** { *;} --keep class com.moengage.core.GeoTask --keep class com.moengage.location.GeoManager --keep class com.moengage.inapp.InAppManager --keep class com.moengage.push.PushManager --keep class com.moengage.inapp.InAppController --keep class com.moe.pushlibrary.AppUpdateReceiver --keep class com.moengage.core.MoEAlarmReceiver --keep class com.moengage.core.MoEngage - -# Push --keep class com.moengage.pushbase.activities.PushTracker --keep class com.moengage.pushbase.activities.SnoozeTracker --keep class com.moengage.pushbase.push.MoEPushWorker --keep class com.moe.pushlibrary.MoEWorker - -# Real Time Triggers --keep class com.moengage.addon.trigger.DTHandlerImpl --keep class com.moengage.core.MoEDTManager --keep class com.moengage.core.MoEDTManager.DTHandler - -# Push Amplification --keep class com.moengage.addon.messaging.MessagingHandlerImpl --keep class com.moengage.push.MoEMessagingManager --keep class com.moengage.addon.messaging.MoEMessageSyncJob --keep class com.moengage.addon.messaging.MoEMessageSyncReceiver --keep class com.moengage.addon.messaging.MoEMessageSyncIntentService - --dontwarn com.moengage.location.GeoManager --dontwarn com.moengage.core.GeoTask --dontwarn com.moengage.receiver.* --dontwarn com.moengage.worker.* --dontwarn com.moengage.inapp.ViewEngine - -keep class com.delight.** { *; } -# only when using FCM --keep class com.moengage.firebase.MoEngaeFireBaseMessagingService --keep class com.moengage.firebase.MoEngageFireBaseInstanceIdService --keep class com.moengage.firebase.PushHandlerImpl - #For install referrer -keep public class com.android.installreferrer.** { *; } -keep class com.appsflyer.** { *; } \ No newline at end of file diff --git a/android/navi-insurance/src/main/java/com/navi/insurance/analytics/NaviInsuranceAnalytics.kt b/android/navi-insurance/src/main/java/com/navi/insurance/analytics/NaviInsuranceAnalytics.kt index fd6553f179..f3a438a0ad 100644 --- a/android/navi-insurance/src/main/java/com/navi/insurance/analytics/NaviInsuranceAnalytics.kt +++ b/android/navi-insurance/src/main/java/com/navi/insurance/analytics/NaviInsuranceAnalytics.kt @@ -109,40 +109,6 @@ class NaviInsuranceAnalytics private constructor() { coroutineScope = CoroutineScope(Dispatchers.Default + exceptionHandler) } - fun trackAppInstall() { - /*val firebaseAnalytics = Firebase.analytics - val moe = MoEHelper.getInstance(NaviInsuranceApplication.instance.applicationContext) - moe.setAppStatus(AppStatus.INSTALL) - moe.setUserAttribute("userDeviceId", deviceId) - firebaseAnalytics.setUserProperty("userDeviceId", deviceId)*/ - } - - fun updateUserDetailsForAnalytics(userId: String, userPhoneNumber: String) { - - /*//User data to MoEngage - val moe = MoengageUtil.getInstance(NaviInsuranceApplication.instance.applicationContext) - moe.setUniqueId(userId) //Set userId as Unique Identifier on MoEngage - moe.trackDeviceLocale() - moe.setUserAttribute("userDeviceId", deviceId) - moe.setUserAttribute("userPhoneNumber", userPhoneNumber) - moe.setNumber(userPhoneNumber) - - //User data to Firebase Analytics - val firebaseAnalytics = Firebase.analytics - firebaseAnalytics.setUserId(userId) - firebaseAnalytics.setUserProperty("userDeviceId", deviceId) - firebaseAnalytics.setUserProperty("userPhoneNumber", userPhoneNumber) - - //User data to Firebase Crashlytics - FirebaseCrashlytics.getInstance().setCustomKey("userPhoneNumber", userPhoneNumber); - - AppsFlyerLib.getInstance().setCustomerUserId(userId); - - FirebaseCrashlytics.getInstance().setUserId(userPhoneNumber) - - updateUserLocation()*/ - } - fun updateUserLocation(context: Context) { val firebaseAnalytics = Firebase.analytics diff --git a/android/navi-insurance/src/main/java/com/navi/insurance/common/fragment/PolicyStatusFragment.kt b/android/navi-insurance/src/main/java/com/navi/insurance/common/fragment/PolicyStatusFragment.kt index c900c18e13..038021df57 100644 --- a/android/navi-insurance/src/main/java/com/navi/insurance/common/fragment/PolicyStatusFragment.kt +++ b/android/navi-insurance/src/main/java/com/navi/insurance/common/fragment/PolicyStatusFragment.kt @@ -19,7 +19,6 @@ import androidx.fragment.app.activityViewModels import androidx.fragment.app.viewModels import androidx.lifecycle.lifecycleScope import com.google.gson.reflect.TypeToken -import com.moengage.core.internal.REQUEST_ATTR_QUERY_PARAMS import com.navi.base.model.AnalyticsEvent import com.navi.base.model.CtaData import com.navi.base.model.CtaType @@ -49,6 +48,7 @@ import com.navi.insurance.util.ARG_APPLICATION_ID import com.navi.insurance.util.ASSET_DETAILS_EXTRA import com.navi.insurance.util.INITIAL_PAGE_UI import com.navi.insurance.util.PAGE_TYPE +import com.navi.insurance.util.QUERY_PARAMS import com.navi.insurance.util.QUOTE_ID_EXTRA import com.navi.insurance.util.SOURCE_TYPE import com.navi.naviwidgets.extensions.getJsonObject @@ -95,10 +95,8 @@ class PolicyStatusFragment : GiBaseFragment() { viewModel.sourceType = arguments?.getString(SOURCE_TYPE).orEmpty() val type = object : TypeToken() {}.type viewModel.requestBody = - getJsonObject( - type, - arguments?.getString(REQUEST_ATTR_QUERY_PARAMS) - ) ?: AadhaarVerificationData() + getJsonObject(type, arguments?.getString(QUERY_PARAMS)) + ?: AadhaarVerificationData() val assetType = object : TypeToken() {}.type viewModel.assetDetails = getJsonObject(assetType, arguments?.getString(ASSET_DETAILS_EXTRA)) diff --git a/android/navi-insurance/src/main/java/com/navi/insurance/health/card/HealthCardsFragment.kt b/android/navi-insurance/src/main/java/com/navi/insurance/health/card/HealthCardsFragment.kt index 0b438efa94..d5e6c4b732 100644 --- a/android/navi-insurance/src/main/java/com/navi/insurance/health/card/HealthCardsFragment.kt +++ b/android/navi-insurance/src/main/java/com/navi/insurance/health/card/HealthCardsFragment.kt @@ -11,6 +11,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.Toast import androidx.compose.animation.animateContentSize import androidx.compose.animation.core.tween import androidx.compose.foundation.ExperimentalFoundationApi @@ -40,7 +41,6 @@ import androidx.compose.ui.viewinterop.AndroidView import androidx.fragment.app.viewModels import androidx.lifecycle.lifecycleScope import com.facebook.shimmer.ShimmerFrameLayout -import com.moengage.core.internal.utils.showToast import com.navi.analytics.utils.NaviTrackEvent import com.navi.base.deeplink.DeepLinkManager import com.navi.base.model.AnalyticsEvent @@ -106,7 +106,10 @@ class HealthCardsFragment : BaseFragment(), WidgetCallback { downLoadShareUtil.downloadState.collect { when (it) { is DownloadState.Error -> { - context?.let { showToast(it, getString(R.string.ssw_try_again)) } + context?.let { + Toast.makeText(it, getString(R.string.ssw_try_again), Toast.LENGTH_LONG) + .show() + } } else -> {} } diff --git a/android/navi-insurance/src/main/java/com/navi/insurance/kyc/ui/GiAadhaarVerificationFragment.kt b/android/navi-insurance/src/main/java/com/navi/insurance/kyc/ui/GiAadhaarVerificationFragment.kt index 0c667b19d9..4b2035cf3a 100644 --- a/android/navi-insurance/src/main/java/com/navi/insurance/kyc/ui/GiAadhaarVerificationFragment.kt +++ b/android/navi-insurance/src/main/java/com/navi/insurance/kyc/ui/GiAadhaarVerificationFragment.kt @@ -18,7 +18,6 @@ import androidx.lifecycle.lifecycleScope import com.digitap.dtokyc.exception.DTException import com.digitap.dtokyc.handler.OKYCListener import com.google.gson.reflect.TypeToken -import com.moengage.core.internal.REQUEST_ATTR_QUERY_PARAMS import com.navi.base.model.CtaData import com.navi.base.model.LineItem import com.navi.base.utils.isNotNull @@ -50,6 +49,7 @@ import com.navi.insurance.network.ApiErrorTagType import com.navi.insurance.util.ARG_APPLICATION_ID import com.navi.insurance.util.Constants import com.navi.insurance.util.JOURNEY_KEY_EXTRA +import com.navi.insurance.util.QUERY_PARAMS import com.navi.insurance.util.TRUE import com.navi.naviwidgets.extensions.addOnMultipleClicksHandler import com.navi.naviwidgets.extensions.getJsonObject @@ -454,10 +454,7 @@ class GiAadhaarVerificationFragment : GiBaseFragment(), OKYCListener { if (viewModel.isNaviOnePRofileEnabled) { val params = viewModel.ctaData?.parameters?.toMutableList() params?.add( - LineItem( - REQUEST_ATTR_QUERY_PARAMS, - convertObjectToJsonString(aadhaarVerificationData) - ) + LineItem(QUERY_PARAMS, convertObjectToJsonString(aadhaarVerificationData)) ) params?.add(LineItem(PAGE_TYPE, arguments?.getString(PAGE_TYPE))) val redirectionCta = viewModel.ctaData?.copy(parameters = params) diff --git a/android/navi-insurance/src/main/java/com/navi/insurance/models/request/DeviceDetailsRequest.kt b/android/navi-insurance/src/main/java/com/navi/insurance/models/request/DeviceDetailsRequest.kt index a762dd529b..5710dfc37e 100644 --- a/android/navi-insurance/src/main/java/com/navi/insurance/models/request/DeviceDetailsRequest.kt +++ b/android/navi-insurance/src/main/java/com/navi/insurance/models/request/DeviceDetailsRequest.kt @@ -14,7 +14,6 @@ data class DeviceDetailsRequest( @SerializedName("channelId") val channelId: String, @SerializedName("notificationToken") val notificationToken: String? = null, @SerializedName("appsflyerId") val appsflyerId: String? = null, - @SerializedName("moengageId") val moengageId: String? = null, @SerializedName("googleAdsId") val googleAdsId: String? = null, @SerializedName("brand") private val brand: String? = null, @SerializedName("carrier") private val carrier: String? = null, diff --git a/android/navi-insurance/src/main/java/com/navi/insurance/services/NaviFireBaseMessagingService.java b/android/navi-insurance/src/main/java/com/navi/insurance/services/NaviFireBaseMessagingService.java deleted file mode 100644 index 4ca7e9b36b..0000000000 --- a/android/navi-insurance/src/main/java/com/navi/insurance/services/NaviFireBaseMessagingService.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * - * * Copyright © 2021-2024 by Navi Technologies Limited - * * All rights reserved. Strictly confidential - * - */ - -package com.navi.insurance.services; - -/* -public class NaviFireBaseMessagingService extends FirebaseMessagingService { - - - @Override - public void onNewToken(String newToken) { - super.onNewToken(newToken); - NaviPreferenceManager.INSTANCE.setStringPreference(USER_FCM_TOKEN, newToken); - NaviPreferenceManager.INSTANCE.setBooleanPreference(DEVICE_DETAILS_CAPTURED_PRE_INSTALL, false); - MoengageUtil.INSTANCE.passPushToken(getApplicationContext(), newToken); - } - - - @Override - public void onMessageReceived(RemoteMessage remoteMessage) { - super.onMessageReceived(remoteMessage); - - Map gcmPayLoad = remoteMessage.getData(); - - Bundle bundle; - try { - bundle = new Bundle(); - for (Map.Entry entry : gcmPayLoad.entrySet()) { - bundle.putString(entry.getKey(), entry.getValue()); - } - } catch (Exception e) { - FirebaseCrashlytics.getInstance().recordException(e); - } - - MessageDataModel messageDataModel = MessageDataModel.ModelMapper.INSTANCE.from(remoteMessage.getData()); - - if (MoengageUtil.INSTANCE.isFromMoEngagePlatform(gcmPayLoad) && !MoengageUtil.INSTANCE.isSilentPush(gcmPayLoad)) { - if (messageDataModel.getHandleViaDeepLink()) { - onPushNotificationReceived(messageDataModel); - } else { - MoengageUtil.INSTANCE.passPushPayload(getApplicationContext(), gcmPayLoad); - } - } else if (!MoengageUtil.INSTANCE.isFromMoEngagePlatform(gcmPayLoad)) { - onPushNotificationReceived(messageDataModel); - } - } - - public void onPushNotificationReceived(MessageDataModel messageDataModel) { - Notification notification = new Notification(messageDataModel); - notification.createNotification(); - } - - -} -*/ diff --git a/android/navi-insurance/src/main/java/com/navi/insurance/util/IntentConstants.kt b/android/navi-insurance/src/main/java/com/navi/insurance/util/IntentConstants.kt index b21af83674..0177190463 100644 --- a/android/navi-insurance/src/main/java/com/navi/insurance/util/IntentConstants.kt +++ b/android/navi-insurance/src/main/java/com/navi/insurance/util/IntentConstants.kt @@ -66,3 +66,4 @@ const val MOBILE_NUMBER_EXTRA = "mobileNumber" const val AADHAR_NUMBER_EXTRA = "aadhaarNumber" const val TXN_ID_EXTRA = "txnId" const val OTP_VALUE_EXTRA = "otpValue" +const val QUERY_PARAMS = "query_params" diff --git a/android/navi-insurance/src/main/res/values/strings.xml b/android/navi-insurance/src/main/res/values/strings.xml index 9e52b5be57..99ecc21c6c 100644 --- a/android/navi-insurance/src/main/res/values/strings.xml +++ b/android/navi-insurance/src/main/res/values/strings.xml @@ -12,9 +12,6 @@ Female - 2TJ3RTMPM5NIW4FHMNJULTKU - x9hwS5yKwppJX3Y78L8XnC - https://www.naviinsurance.com/terms_of_use/ App Update Required diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryDetailSectionV2.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryDetailSectionV2.kt index 42e0282a71..bead1d13a1 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryDetailSectionV2.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryDetailSectionV2.kt @@ -47,7 +47,6 @@ import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import androidx.core.content.ContextCompat import coil.compose.AsyncImage -import com.moengage.core.internal.utils.getSystemService import com.navi.common.R as CommonR import com.navi.common.utils.copyToClipboard import com.navi.design.font.FontWeightEnum @@ -109,8 +108,7 @@ fun TransactionHistoryDetailSectionV2( upiAppsIconList: List ) { val clipboardManager = remember { - getSystemService(context = naviPayActivity, serviceConstant = Context.CLIPBOARD_SERVICE) - as ClipboardManager + naviPayActivity.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager } val onKeyValueSectionToggleClicked = { diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/management/upinumber/list/ui/UpiNumberScreen.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/management/upinumber/list/ui/UpiNumberScreen.kt index f79d11056e..a7121b5032 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/management/upinumber/list/ui/UpiNumberScreen.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/management/upinumber/list/ui/UpiNumberScreen.kt @@ -50,7 +50,6 @@ import androidx.lifecycle.Lifecycle import androidx.lifecycle.LifecycleEventObserver import androidx.lifecycle.compose.LocalLifecycleOwner import androidx.lifecycle.compose.collectAsStateWithLifecycle -import com.moengage.core.internal.utils.getSystemService import com.navi.common.R as CommonR import com.navi.common.utils.Constants.MINUS import com.navi.common.utils.copyToClipboard @@ -163,8 +162,7 @@ fun UpiNumberScreen( upiNumberViewModel.isLinkToUpiNumberLottieEnabled.collectAsStateWithLifecycle() val clipboardManager = remember { - getSystemService(context = naviPayActivity, serviceConstant = Context.CLIPBOARD_SERVICE) - as ClipboardManager + naviPayActivity.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager } val bottomSheetState = diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/onboarding/account/detail/ui/LinkedAccountDetailScreen.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/onboarding/account/detail/ui/LinkedAccountDetailScreen.kt index b66f6da7cf..3c20fd326a 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/onboarding/account/detail/ui/LinkedAccountDetailScreen.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/onboarding/account/detail/ui/LinkedAccountDetailScreen.kt @@ -65,7 +65,6 @@ import androidx.compose.ui.window.DialogProperties import androidx.hilt.navigation.compose.hiltViewModel import androidx.lifecycle.compose.collectAsStateWithLifecycle import coil.compose.AsyncImage -import com.moengage.core.internal.utils.getSystemService import com.navi.base.utils.orFalse import com.navi.common.R as CommonR import com.navi.common.extensions.conditional @@ -171,8 +170,7 @@ fun LinkedAccountDetailScreen( linkedAccountDetailViewModel.accountDetailOptionListState.collectAsStateWithLifecycle() val clipboardManager = remember { - getSystemService(context = naviPayActivity, serviceConstant = Context.CLIPBOARD_SERVICE) - as ClipboardManager + naviPayActivity.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager } var selectedQR: QrDetails? = remember { null }