TP-24860 | Install PROD and NON-PROD apps in parallel on device (#6022)

* TP-24860 | Install PROD and NON-PROD apps in parallel on device

* TP-24860 | Add Config for Non Prod

* TP-24860 | Rename SECOND to FPS

* TP-24860 | remove hardcoded FACEBOOK_APP_ID & FACEBOOK_CLIENT_TOKEN

* TP-24860 | refactor

* TP-24860 | apply-spotless

* TP-24860 | add back client-token

* TP-24860 | revert

* TP-24860 | set FB app id to 0
This commit is contained in:
Shivam Goyal
2023-04-17 22:25:27 +05:30
committed by GitHub Enterprise
parent 93fc2b2638
commit 4a06a6b7e8
8 changed files with 35 additions and 24 deletions

View File

@@ -26,6 +26,7 @@ ARG XIAOMI_PUSH_APP_ID
ARG XIAOMI_PUSH_APP_KEY
ARG YOUTUBE_KEY
ARG GOOGLE_MAPS_KEY
ARG FACEBOOK_APP_ID
ENV WORK_DIR="/android/navi" \
ANDROID_APK_DIR="app/build/outputs/apk" \
@@ -50,7 +51,7 @@ RUN bash -c " \
\
elif [ $FLAVOR = PROD ] ; then \
./gradlew clean \
:app:bundleProd -PBASE_URL=${BASE_URL} -PUXCAM_KEY=${UXCAM_KEY} -PRAZORPAY_KEY=${RAZORPAY_KEY} -PMOENGAGE_KEY=${MOENGAGE_KEY} -PAPPSFLYER_KEY=${APPSFLYER_KEY} -PFLAVOR=${FLAVOR} -PRELEASE_STORE_PASSWORD=${RELEASE_STORE_PASSWORD} -PRELEASE_KEY_PASSWORD=${RELEASE_KEY_PASSWORD} -PRELEASE_KEY_ALIAS=${RELEASE_KEY_ALIAS} -PHYPERVERGE_APP_KEY=${HYPERVERGE_APP_KEY} -PHYPERVERGE_APP_ID=${HYPERVERGE_APP_ID} -PSINGULAR_APP_KEY=${SINGULAR_APP_KEY} -PSINGULAR_SECRET=${SINGULAR_SECRET} -PTRUECALLER_KEY=${TRUECALLER_KEY} -PGI_SECRET_KEY=${GI_SECRET_KEY} -PDIGITAP_CLIENT_ID=${DIGITAP_CLIENT_ID} -PDIGITAP_CLIENT_SECRET=${DIGITAP_CLIENT_SECRET} -PGI_RAZORPAY_KEY=${GI_RAZORPAY_KEY} -PXIAOMI_PUSH_APP_ID=${XIAOMI_PUSH_APP_ID} -PXIAOMI_PUSH_APP_KEY=${XIAOMI_PUSH_APP_KEY} -PYOUTUBE_KEY=${YOUTUBE_KEY} -PGOOGLE_MAPS_KEY=${GOOGLE_MAPS_KEY} ; \
:app:bundleProd -PBASE_URL=${BASE_URL} -PUXCAM_KEY=${UXCAM_KEY} -PRAZORPAY_KEY=${RAZORPAY_KEY} -PMOENGAGE_KEY=${MOENGAGE_KEY} -PAPPSFLYER_KEY=${APPSFLYER_KEY} -PFLAVOR=${FLAVOR} -PRELEASE_STORE_PASSWORD=${RELEASE_STORE_PASSWORD} -PRELEASE_KEY_PASSWORD=${RELEASE_KEY_PASSWORD} -PRELEASE_KEY_ALIAS=${RELEASE_KEY_ALIAS} -PHYPERVERGE_APP_KEY=${HYPERVERGE_APP_KEY} -PHYPERVERGE_APP_ID=${HYPERVERGE_APP_ID} -PSINGULAR_APP_KEY=${SINGULAR_APP_KEY} -PSINGULAR_SECRET=${SINGULAR_SECRET} -PTRUECALLER_KEY=${TRUECALLER_KEY} -PGI_SECRET_KEY=${GI_SECRET_KEY} -PDIGITAP_CLIENT_ID=${DIGITAP_CLIENT_ID} -PDIGITAP_CLIENT_SECRET=${DIGITAP_CLIENT_SECRET} -PGI_RAZORPAY_KEY=${GI_RAZORPAY_KEY} -PXIAOMI_PUSH_APP_ID=${XIAOMI_PUSH_APP_ID} -PXIAOMI_PUSH_APP_KEY=${XIAOMI_PUSH_APP_KEY} -PYOUTUBE_KEY=${YOUTUBE_KEY} -PGOOGLE_MAPS_KEY=${GOOGLE_MAPS_KEY} -PFACEBOOK_APP_ID=${FACEBOOK_APP_ID}; \
\
else echo 'ERROR: Flavor not mentioned' ; \
fi ;"

View File

@@ -133,7 +133,7 @@ android {
buildConfigField 'String', 'HYPERVERGE_APP_ID', formatString('2c007b')
buildConfigField 'String', 'XIAOMI_PUSH_APP_ID', formatString('2882303761520048763')
buildConfigField 'String', 'XIAOMI_PUSH_APP_KEY', formatString('5712004833763')
manifestPlaceholders = [TRUECALLER_KEY: "6E6TX0cd28bada2b14cf28534dfce68c6a245"]
manifestPlaceholders = [TRUECALLER_KEY: "6E6TX0cd28bada2b14cf28534dfce68c6a245", FACEBOOK_APP_ID: "0"]
buildConfigField 'String', 'GI_SECRET_KEY', formatString('navi-gi')
buildConfigField 'String', 'YOUTUBE_KEY', formatString('AIzaSyDlbxag2dCc-a9ac8JTfH3nnVw41pdI-1U')
buildConfigField 'String', 'GOOGLE_MAPS_KEY', formatString("AIzaSyD-7-YhOAzX4VJfVLsHUz8KEn-1MGJq46o")
@@ -148,7 +148,7 @@ android {
buildConfigField 'String', 'HYPERVERGE_APP_ID', formatString('2c007b')
buildConfigField 'String', 'XIAOMI_PUSH_APP_ID', formatString('2882303761520048763')
buildConfigField 'String', 'XIAOMI_PUSH_APP_KEY', formatString('5712004833763')
manifestPlaceholders = [TRUECALLER_KEY: "aBkmX155b2ed283a44b008d62e8975388a4d5"]
manifestPlaceholders = [TRUECALLER_KEY: "aBkmX155b2ed283a44b008d62e8975388a4d5", FACEBOOK_APP_ID: "0"]
buildConfigField 'String', 'GI_SECRET_KEY', formatString('navi-gi')
buildConfigField 'String', 'YOUTUBE_KEY', formatString('AIzaSyDlbxag2dCc-a9ac8JTfH3nnVw41pdI-1U')
buildConfigField 'String', 'GOOGLE_MAPS_KEY', formatString("AIzaSyD-7-YhOAzX4VJfVLsHUz8KEn-1MGJq46o")
@@ -156,7 +156,7 @@ android {
prod {
dimension "app"
if (project.hasProperty('BASE_URL') && project.hasProperty('MOENGAGE_KEY') && project.hasProperty('APPSFLYER_KEY') && project.hasProperty('UXCAM_KEY') && project.hasProperty('HYPERVERGE_APP_KEY') && project.hasProperty('HYPERVERGE_APP_ID') && project.hasProperty('TRUECALLER_KEY') && project.hasProperty('GI_SECRET_KEY')
&& project.hasProperty('GI_RAZORPAY_KEY') && project.hasProperty('XIAOMI_PUSH_APP_ID') && project.hasProperty('XIAOMI_PUSH_APP_KEY') && project.hasProperty('GOOGLE_MAPS_KEY') && project.hasProperty('GI_RAZORPAY_KEY')) {
&& project.hasProperty('GI_RAZORPAY_KEY') && project.hasProperty('XIAOMI_PUSH_APP_ID') && project.hasProperty('XIAOMI_PUSH_APP_KEY') && project.hasProperty('GOOGLE_MAPS_KEY') && project.hasProperty('GI_RAZORPAY_KEY') && project.hasProperty('FACEBOOK_APP_ID')) {
buildConfigField 'String', 'BASE_URL', formatString("$BASE_URL")
buildConfigField 'String', 'MOENGAGE_KEY', formatString("$MOENGAGE_KEY")
buildConfigField 'String', 'APPSFLYER_KEY', formatString("$APPSFLYER_KEY")
@@ -164,8 +164,7 @@ android {
buildConfigField 'String', 'HYPERVERGE_APP_ID', formatString("$HYPERVERGE_APP_ID")
buildConfigField 'String', 'XIAOMI_PUSH_APP_ID', formatString("$XIAOMI_PUSH_APP_ID")
buildConfigField 'String', 'XIAOMI_PUSH_APP_KEY', formatString("$XIAOMI_PUSH_APP_KEY")
manifestPlaceholders = [TRUECALLER_KEY : "$TRUECALLER_KEY",
GOOGLE_MAPS_KEY: "$GOOGLE_MAPS_KEY"]
manifestPlaceholders = [TRUECALLER_KEY : "$TRUECALLER_KEY", GOOGLE_MAPS_KEY: "$GOOGLE_MAPS_KEY", FACEBOOK_APP_ID: "$FACEBOOK_APP_ID"]
buildConfigField 'String', 'GOOGLE_MAPS_KEY', formatString("$GOOGLE_MAPS_KEY")
buildConfigField 'String', 'GI_SECRET_KEY', formatString("$GI_SECRET_KEY")
buildConfigField 'String', 'YOUTUBE_KEY', formatString("$YOUTUBE_KEY")
@@ -182,7 +181,7 @@ android {
buildConfigField 'String', 'HYPERVERGE_APP_ID', formatString('2c007b')
buildConfigField 'String', 'XIAOMI_PUSH_APP_ID', formatString('2882303761520048763')
buildConfigField 'String', 'XIAOMI_PUSH_APP_KEY', formatString('5712004833763')
manifestPlaceholders = [TRUECALLER_KEY: "6E6TX0cd28bada2b14cf28534dfce68c6a245"]
manifestPlaceholders = [TRUECALLER_KEY: "6E6TX0cd28bada2b14cf28534dfce68c6a245", FACEBOOK_APP_ID: "0"]
buildConfigField 'String', 'GI_SECRET_KEY', formatString('navi-gi')
buildConfigField 'String', 'YOUTUBE_KEY', formatString('AIzaSyDlbxag2dCc-a9ac8JTfH3nnVw41pdI-1U')
buildConfigField 'String', 'GOOGLE_MAPS_KEY', formatString("AIzaSyD-7-YhOAzX4VJfVLsHUz8KEn-1MGJq46o")

View File

@@ -469,7 +469,7 @@
<provider
android:name="com.facebook.FacebookContentProvider"
android:authorities="com.facebook.app.FacebookContentProvider238258890720575"
android:authorities="com.facebook.app.FacebookContentProvider${FACEBOOK_APP_ID}"
android:exported="true" />
<meta-data
android:name="com.truecaller.android.sdk.PartnerKey"

View File

@@ -28,6 +28,7 @@ import com.naviapp.common.navigator.NaviDeepLinkNavigator
import com.naviapp.databinding.DownloadPopupFragmentBinding
import com.naviapp.models.response.Header
import com.naviapp.utils.Constants
import com.naviapp.utils.getIntentPackageNameForFpsMigration
class DownLoadPopupFragment : BaseDialogFragment<DownloadPopupFragmentBinding>(
R.layout.download_popup_fragment,
@@ -97,7 +98,9 @@ class DownLoadPopupFragment : BaseDialogFragment<DownloadPopupFragmentBinding>(
if (actionData.url == Constants.OPEN_APP) {
val packageManager: PackageManager? = context?.packageManager
val intent: Intent? =
packageManager?.getLaunchIntentForPackage(if (packageName(context) == Constants.NAVI_PACKAGE) Constants.NAVI_PACKAGE_SECOND else Constants.NAVI_PACKAGE)
packageManager?.getLaunchIntentForPackage(
getIntentPackageNameForFpsMigration(packageName = packageName(context))
)
if (intent != null) {
startActivity(intent)
activity?.finish()

View File

@@ -132,6 +132,7 @@ import com.naviapp.utils.LOAN_ACCOUNT_NUMBER
import com.naviapp.utils.LOAN_APPLICATION_ID
import com.naviapp.utils.OFFER_ID
import com.naviapp.utils.WHATSAPP_COMMUNICATION_ENABLED
import com.naviapp.utils.getIntentPackageNameForFpsMigration
import com.naviapp.utils.giDeeplink
import com.naviapp.utils.isAppInstalled
import dagger.hilt.android.AndroidEntryPoint
@@ -347,7 +348,7 @@ class HomeFragment : PaymentBaseFragment(), WidgetCallback, PlayStoreActionListe
private fun initObservers() {
isSecondaryAppAvailable = isAppInstalled(
context = requireContext(),
if (activity?.packageName == Constants.NAVI_PACKAGE) Constants.NAVI_PACKAGE_SECOND else Constants.NAVI_PACKAGE
pkgName = getIntentPackageNameForFpsMigration(packageName = activity?.packageName)
)
viewModel.appStoriesData.observeNonNull(viewLifecycleOwner) { toShowAvatar() }
viewModel.homeFeatures.observeNonNull(viewLifecycleOwner) {
@@ -755,10 +756,7 @@ class HomeFragment : PaymentBaseFragment(), WidgetCallback, PlayStoreActionListe
val packageManager: PackageManager? = context?.packageManager
val intent: Intent? =
packageManager?.getLaunchIntentForPackage(
if (packageName(
context
) == Constants.NAVI_PACKAGE
) Constants.NAVI_PACKAGE_SECOND else Constants.NAVI_PACKAGE
getIntentPackageNameForFpsMigration(packageName = packageName(context))
)
if (intent != null) {
startActivity(intent)

View File

@@ -30,7 +30,7 @@ import com.airbnb.lottie.RenderMode
import com.facebook.FacebookSdk
import com.facebook.applinks.AppLinkData
import com.facebook.bolts.AppLinks
import com.google.android.datatransport.runtime.scheduling.persistence.EventStoreModule_PackageNameFactory
import com.google.android.datatransport.runtime.scheduling.persistence.EventStoreModule_PackageNameFactory.packageName
import com.navi.analytics.appsflyer.AppsFlyerUtil
import com.navi.analytics.appsflyer.DeepLinkListener
import com.navi.analytics.utils.NaviTrackEvent
@@ -95,8 +95,6 @@ import com.naviapp.utils.Constants.IS_DEFERRED
import com.naviapp.utils.Constants.LOGIN_EXP_TYPE
import com.naviapp.utils.Constants.LOGIN_WITH_SKIP
import com.naviapp.utils.Constants.MANDATORY_LOGIN
import com.naviapp.utils.Constants.NAVI_PACKAGE
import com.naviapp.utils.Constants.NAVI_PACKAGE_SECOND
import com.naviapp.utils.Constants.NOTIFICATION_SENT_TIME
import com.naviapp.utils.Constants.OPEN_APP_COUNT_SINCE_LAST_LOGIN
import com.naviapp.utils.Constants.ORIGINAL_DEEPLINK
@@ -299,7 +297,7 @@ class SplashActivity : BaseActivity(), DeepLinkListener {
isAppConfigApiInProgress = true
isSecondaryAppAvailable = isAppInstalled(
context = this@SplashActivity,
if (packageName == NAVI_PACKAGE) NAVI_PACKAGE_SECOND else NAVI_PACKAGE
pkgName = getIntentPackageNameForFpsMigration(packageName = packageName)
)
configVM.fetchLoginSettings(isSecondaryAppAvailable)
}
@@ -788,10 +786,7 @@ class SplashActivity : BaseActivity(), DeepLinkListener {
val packageManager: PackageManager? = this.packageManager
val navigationIntent: Intent? =
packageManager?.getLaunchIntentForPackage(
if (EventStoreModule_PackageNameFactory.packageName(
this
) == NAVI_PACKAGE
) NAVI_PACKAGE_SECOND else NAVI_PACKAGE
getIntentPackageNameForFpsMigration(packageName = packageName(this))
)
navigationIntent?.let { nonNullNavigationIntent ->
nonNullNavigationIntent.data = intent.data

View File

@@ -382,7 +382,9 @@ object Constants {
const val OPEN_APP = "OPEN_APP"
const val IS_APP_LOGO_CHANGE = "IS_APP_LOGO_CHANGE"
const val NAVI_PACKAGE = "com.naviapp"
const val NAVI_PACKAGE_SECOND = "com.naviapp.fps"
const val NAVI_PACKAGE_NON_PROD = "com.naviapp.dev"
const val NAVI_PACKAGE_FPS = "com.naviapp.fps"
const val NAVI_PACKAGE_FPS_NON_PROD = "com.naviapp.fps.dev"
const val OK = "Ok"
const val SKIP_PERMISSION = "SKIP_PERMISSION"
const val SECONDARY_CTA = "SECONDARY_CTA"

View File

@@ -71,6 +71,10 @@ import com.naviapp.utils.Constants.ATLEAST_ONE_ALPHANUMERIC
import com.naviapp.utils.Constants.INDIAN_COUNTRY_CODE
import com.naviapp.utils.Constants.MINIMUM_NUMBER_OF_CHARACTERS_IN_NAME
import com.naviapp.utils.Constants.MIN_COMPANY_NAME_LENGTH
import com.naviapp.utils.Constants.NAVI_PACKAGE
import com.naviapp.utils.Constants.NAVI_PACKAGE_FPS
import com.naviapp.utils.Constants.NAVI_PACKAGE_FPS_NON_PROD
import com.naviapp.utils.Constants.NAVI_PACKAGE_NON_PROD
import com.naviapp.utils.Constants.PLAY_STORE_REQUEST_CODE
import com.naviapp.utils.Constants.UTF_8
import com.naviapp.utils.Constants.VALID_COMPANY_NAME_REGEX
@@ -557,6 +561,15 @@ fun isAppInstalled(context: Context, pkgName: String): Boolean {
}
}
fun getIntentPackageNameForFpsMigration(packageName: String?) =
if (BuildConfig.FLAVOR == PROD) {
if (packageName == NAVI_PACKAGE) NAVI_PACKAGE_FPS
else NAVI_PACKAGE
} else {
if (packageName == NAVI_PACKAGE_NON_PROD) NAVI_PACKAGE_FPS_NON_PROD
else NAVI_PACKAGE_NON_PROD
}
fun removeCodeFromPhoneNumber(number: String): String {
return number.replace("+91", "")
}
@@ -982,4 +995,4 @@ fun getCurrentProcess(context: Context): String? {
} catch (e: Exception) {
}
return null
}
}