Potentially Intent Spoofing

Description

The application is vulnerable to intent spoofing which could result in the access and exploitation of unauthorized components.

Recommendation

It is recommended to apply proper input validation and parameter filtering on intent action.

References
Technical details
[TAINT] String 'a.acquisition.custom.link_deferred' ==>>> Sink '['Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/adobe/mobile/ReferrerHandler;', 'processIntent', '(Landroid/content/Intent;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'handleV3Acquisition', '(Ljava/util/HashMap;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'triggerDeepLink', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;')]]

Use of a string value a.acquisition.custom.link_deferred to construct an Intent

Method com.adobe.mobile.ReferrerHandler.processIntent():


    public static void processIntent(android.content.Intent p5)
    {
        String v1 = com.adobe.mobile.ReferrerHandler.getReferrerURLFromIntent(p5);
        if ((v1 != null) && (v1.length() != 0)) {
            Object[] v3_2 = new Object[1];
            v3_2[0] = v1;
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Received referrer information(%s)", v3_2);
            java.util.HashMap v0 = com.adobe.mobile.ReferrerHandler.parseReferrerURLToMap(v1);
            if (!com.adobe.mobile.ReferrerHandler.isV3Response(v0)) {
                com.adobe.mobile.ReferrerHandler.handleGooglePlayAcquisition(v0);
            } else {
                com.adobe.mobile.ReferrerHandler.handleV3Acquisition(v0);
            }
        } else {
            Object[] v3_0 = new Object[0];
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Ignoring referrer due to the intent\'s referrer string being empty", v3_0);
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.handleV3Acquisition():


    protected static void handleV3Acquisition(java.util.HashMap p14)
    {
        String v5 = com.adobe.mobile.ReferrerHandler.processReferrerDataFromV3Server(com.adobe.mobile.ReferrerHandler.getReferrerDataFromV3Server(((String) p14.get("utm_content")), com.adobe.mobile.StaticMethods.getAdvertisingIdentifier()));
        if (!com.adobe.mobile.Lifecycle.lifecycleHasRun) {
            try {
                android.content.SharedPreferences$Editor v3 = com.adobe.mobile.StaticMethods.getSharedPreferencesEditor();
                v3.putString("ADMS_Referrer_ContextData_Json_String", v5);
                v3.commit();
            } catch (com.adobe.mobile.StaticMethods$NullContextException v2) {
                com.adobe.mobile.ReferrerHandler$3 v10_3 = new Object[1];
                v10_3[0] = v2.getMessage();
                com.adobe.mobile.StaticMethods.logErrorFormat("Analytics - Error persisting referrer data (%s)", v10_3);
            }
            com.adobe.mobile.ReferrerHandler._referrerProcessed = 1;
        } else {
            if (!com.adobe.mobile.ReferrerHandler._referrerProcessed) {
                java.util.HashMap v6_1 = new java.util.HashMap();
                org.json.JSONObject v7 = com.adobe.mobile.ReferrerHandler.translateV3StringResponseToJSONObject(v5);
                com.adobe.mobile.ReferrerHandler.triggerDeepLink(com.adobe.mobile.ReferrerHandler.getDeepLinkFromJSON(v7));
                java.util.HashMap v1 = com.adobe.mobile.ReferrerHandler.getDataFromJSON(v7, "contextData");
                v6_1.putAll(v1);
                if ((v1 != null) && (v1.size() > 0)) {
                    v6_1.putAll(com.adobe.mobile.ReferrerHandler.processV3ResponseAndReturnAdobeData(v5));
                }
                com.adobe.mobile.MobileConfig.getInstance().invokeAdobeDataCallback(com.adobe.mobile.Config$MobileDataEvent.MOBILE_EVENT_ACQUISITION_INSTALL, v6_1);
                com.adobe.mobile.StaticMethods.getAnalyticsExecutor().execute(new com.adobe.mobile.ReferrerHandler$3(v6_1));
                com.adobe.mobile.AnalyticsWorker.sharedInstance().kickWithReferrerData(v6_1);
            } else {
                com.adobe.mobile.ReferrerHandler$3 v10_4 = new Object[0];
                com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Acquisition referrer timed out", v10_4);
            }
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.triggerDeepLink():


    protected static void triggerDeepLink(String p7)
    {
        if (p7 != null) {
            try {
                android.app.Activity v0 = com.adobe.mobile.StaticMethods.getCurrentActivity();
                android.content.Intent v2_1 = new android.content.Intent("android.intent.action.VIEW");
                v2_1.setData(android.net.Uri.parse(p7));
                v0.startActivity(v2_1);
            } catch (Exception v1_1) {
                Object[] v4_2 = new Object[0];
                com.adobe.mobile.StaticMethods.logWarningFormat(v1_1.getMessage(), v4_2);
            } catch (Exception v1_0) {
                Object[] v4_1 = new Object[1];
                v4_1[0] = v1_0.toString();
                com.adobe.mobile.StaticMethods.logWarningFormat("Acquisition - Could not load deep link intent for Acquisition (%s)", v4_1);
            }
        }
        return;
    }

Method android.content.Intent.setData() not found.

[TAINT] String 'a.acquisition.custom.' ==>>> Sink '['Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/adobe/mobile/ReferrerHandler;', 'processIntent', '(Landroid/content/Intent;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'handleV3Acquisition', '(Ljava/util/HashMap;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'triggerDeepLink', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;')]]

Use of a string value a.acquisition.custom. to construct an Intent

Method com.adobe.mobile.ReferrerHandler.processIntent():


    public static void processIntent(android.content.Intent p5)
    {
        String v1 = com.adobe.mobile.ReferrerHandler.getReferrerURLFromIntent(p5);
        if ((v1 != null) && (v1.length() != 0)) {
            Object[] v3_2 = new Object[1];
            v3_2[0] = v1;
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Received referrer information(%s)", v3_2);
            java.util.HashMap v0 = com.adobe.mobile.ReferrerHandler.parseReferrerURLToMap(v1);
            if (!com.adobe.mobile.ReferrerHandler.isV3Response(v0)) {
                com.adobe.mobile.ReferrerHandler.handleGooglePlayAcquisition(v0);
            } else {
                com.adobe.mobile.ReferrerHandler.handleV3Acquisition(v0);
            }
        } else {
            Object[] v3_0 = new Object[0];
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Ignoring referrer due to the intent\'s referrer string being empty", v3_0);
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.handleV3Acquisition():


    protected static void handleV3Acquisition(java.util.HashMap p14)
    {
        String v5 = com.adobe.mobile.ReferrerHandler.processReferrerDataFromV3Server(com.adobe.mobile.ReferrerHandler.getReferrerDataFromV3Server(((String) p14.get("utm_content")), com.adobe.mobile.StaticMethods.getAdvertisingIdentifier()));
        if (!com.adobe.mobile.Lifecycle.lifecycleHasRun) {
            try {
                android.content.SharedPreferences$Editor v3 = com.adobe.mobile.StaticMethods.getSharedPreferencesEditor();
                v3.putString("ADMS_Referrer_ContextData_Json_String", v5);
                v3.commit();
            } catch (com.adobe.mobile.StaticMethods$NullContextException v2) {
                com.adobe.mobile.ReferrerHandler$3 v10_3 = new Object[1];
                v10_3[0] = v2.getMessage();
                com.adobe.mobile.StaticMethods.logErrorFormat("Analytics - Error persisting referrer data (%s)", v10_3);
            }
            com.adobe.mobile.ReferrerHandler._referrerProcessed = 1;
        } else {
            if (!com.adobe.mobile.ReferrerHandler._referrerProcessed) {
                java.util.HashMap v6_1 = new java.util.HashMap();
                org.json.JSONObject v7 = com.adobe.mobile.ReferrerHandler.translateV3StringResponseToJSONObject(v5);
                com.adobe.mobile.ReferrerHandler.triggerDeepLink(com.adobe.mobile.ReferrerHandler.getDeepLinkFromJSON(v7));
                java.util.HashMap v1 = com.adobe.mobile.ReferrerHandler.getDataFromJSON(v7, "contextData");
                v6_1.putAll(v1);
                if ((v1 != null) && (v1.size() > 0)) {
                    v6_1.putAll(com.adobe.mobile.ReferrerHandler.processV3ResponseAndReturnAdobeData(v5));
                }
                com.adobe.mobile.MobileConfig.getInstance().invokeAdobeDataCallback(com.adobe.mobile.Config$MobileDataEvent.MOBILE_EVENT_ACQUISITION_INSTALL, v6_1);
                com.adobe.mobile.StaticMethods.getAnalyticsExecutor().execute(new com.adobe.mobile.ReferrerHandler$3(v6_1));
                com.adobe.mobile.AnalyticsWorker.sharedInstance().kickWithReferrerData(v6_1);
            } else {
                com.adobe.mobile.ReferrerHandler$3 v10_4 = new Object[0];
                com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Acquisition referrer timed out", v10_4);
            }
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.triggerDeepLink():


    protected static void triggerDeepLink(String p7)
    {
        if (p7 != null) {
            try {
                android.app.Activity v0 = com.adobe.mobile.StaticMethods.getCurrentActivity();
                android.content.Intent v2_1 = new android.content.Intent("android.intent.action.VIEW");
                v2_1.setData(android.net.Uri.parse(p7));
                v0.startActivity(v2_1);
            } catch (Exception v1_1) {
                Object[] v4_2 = new Object[0];
                com.adobe.mobile.StaticMethods.logWarningFormat(v1_1.getMessage(), v4_2);
            } catch (Exception v1_0) {
                Object[] v4_1 = new Object[1];
                v4_1[0] = v1_0.toString();
                com.adobe.mobile.StaticMethods.logWarningFormat("Acquisition - Could not load deep link intent for Acquisition (%s)", v4_1);
            }
        }
        return;
    }

Method android.content.Intent.setData() not found.

[TAINT] String 'a.referrer.campaign.name' ==>>> Sink '['Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/adobe/mobile/ReferrerHandler;', 'processIntent', '(Landroid/content/Intent;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'handleV3Acquisition', '(Ljava/util/HashMap;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'triggerDeepLink', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;')]]

Use of a string value a.referrer.campaign.name to construct an Intent

Method com.adobe.mobile.ReferrerHandler.processIntent():


    public static void processIntent(android.content.Intent p5)
    {
        String v1 = com.adobe.mobile.ReferrerHandler.getReferrerURLFromIntent(p5);
        if ((v1 != null) && (v1.length() != 0)) {
            Object[] v3_2 = new Object[1];
            v3_2[0] = v1;
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Received referrer information(%s)", v3_2);
            java.util.HashMap v0 = com.adobe.mobile.ReferrerHandler.parseReferrerURLToMap(v1);
            if (!com.adobe.mobile.ReferrerHandler.isV3Response(v0)) {
                com.adobe.mobile.ReferrerHandler.handleGooglePlayAcquisition(v0);
            } else {
                com.adobe.mobile.ReferrerHandler.handleV3Acquisition(v0);
            }
        } else {
            Object[] v3_0 = new Object[0];
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Ignoring referrer due to the intent\'s referrer string being empty", v3_0);
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.handleV3Acquisition():


    protected static void handleV3Acquisition(java.util.HashMap p14)
    {
        String v5 = com.adobe.mobile.ReferrerHandler.processReferrerDataFromV3Server(com.adobe.mobile.ReferrerHandler.getReferrerDataFromV3Server(((String) p14.get("utm_content")), com.adobe.mobile.StaticMethods.getAdvertisingIdentifier()));
        if (!com.adobe.mobile.Lifecycle.lifecycleHasRun) {
            try {
                android.content.SharedPreferences$Editor v3 = com.adobe.mobile.StaticMethods.getSharedPreferencesEditor();
                v3.putString("ADMS_Referrer_ContextData_Json_String", v5);
                v3.commit();
            } catch (com.adobe.mobile.StaticMethods$NullContextException v2) {
                com.adobe.mobile.ReferrerHandler$3 v10_3 = new Object[1];
                v10_3[0] = v2.getMessage();
                com.adobe.mobile.StaticMethods.logErrorFormat("Analytics - Error persisting referrer data (%s)", v10_3);
            }
            com.adobe.mobile.ReferrerHandler._referrerProcessed = 1;
        } else {
            if (!com.adobe.mobile.ReferrerHandler._referrerProcessed) {
                java.util.HashMap v6_1 = new java.util.HashMap();
                org.json.JSONObject v7 = com.adobe.mobile.ReferrerHandler.translateV3StringResponseToJSONObject(v5);
                com.adobe.mobile.ReferrerHandler.triggerDeepLink(com.adobe.mobile.ReferrerHandler.getDeepLinkFromJSON(v7));
                java.util.HashMap v1 = com.adobe.mobile.ReferrerHandler.getDataFromJSON(v7, "contextData");
                v6_1.putAll(v1);
                if ((v1 != null) && (v1.size() > 0)) {
                    v6_1.putAll(com.adobe.mobile.ReferrerHandler.processV3ResponseAndReturnAdobeData(v5));
                }
                com.adobe.mobile.MobileConfig.getInstance().invokeAdobeDataCallback(com.adobe.mobile.Config$MobileDataEvent.MOBILE_EVENT_ACQUISITION_INSTALL, v6_1);
                com.adobe.mobile.StaticMethods.getAnalyticsExecutor().execute(new com.adobe.mobile.ReferrerHandler$3(v6_1));
                com.adobe.mobile.AnalyticsWorker.sharedInstance().kickWithReferrerData(v6_1);
            } else {
                com.adobe.mobile.ReferrerHandler$3 v10_4 = new Object[0];
                com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Acquisition referrer timed out", v10_4);
            }
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.triggerDeepLink():


    protected static void triggerDeepLink(String p7)
    {
        if (p7 != null) {
            try {
                android.app.Activity v0 = com.adobe.mobile.StaticMethods.getCurrentActivity();
                android.content.Intent v2_1 = new android.content.Intent("android.intent.action.VIEW");
                v2_1.setData(android.net.Uri.parse(p7));
                v0.startActivity(v2_1);
            } catch (Exception v1_1) {
                Object[] v4_2 = new Object[0];
                com.adobe.mobile.StaticMethods.logWarningFormat(v1_1.getMessage(), v4_2);
            } catch (Exception v1_0) {
                Object[] v4_1 = new Object[1];
                v4_1[0] = v1_0.toString();
                com.adobe.mobile.StaticMethods.logWarningFormat("Acquisition - Could not load deep link intent for Acquisition (%s)", v4_1);
            }
        }
        return;
    }

Method android.content.Intent.setData() not found.

[TAINT] String 'a.acquisition.custom.' ==>>> Sink '['Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/adobe/mobile/ReferrerHandler;', 'handleV3Acquisition', '(Ljava/util/HashMap;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'triggerDeepLink', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;')]]

Use of a string value a.acquisition.custom. to construct an Intent

Method com.adobe.mobile.ReferrerHandler.handleV3Acquisition():


    protected static void handleV3Acquisition(java.util.HashMap p14)
    {
        String v5 = com.adobe.mobile.ReferrerHandler.processReferrerDataFromV3Server(com.adobe.mobile.ReferrerHandler.getReferrerDataFromV3Server(((String) p14.get("utm_content")), com.adobe.mobile.StaticMethods.getAdvertisingIdentifier()));
        if (!com.adobe.mobile.Lifecycle.lifecycleHasRun) {
            try {
                android.content.SharedPreferences$Editor v3 = com.adobe.mobile.StaticMethods.getSharedPreferencesEditor();
                v3.putString("ADMS_Referrer_ContextData_Json_String", v5);
                v3.commit();
            } catch (com.adobe.mobile.StaticMethods$NullContextException v2) {
                com.adobe.mobile.ReferrerHandler$3 v10_3 = new Object[1];
                v10_3[0] = v2.getMessage();
                com.adobe.mobile.StaticMethods.logErrorFormat("Analytics - Error persisting referrer data (%s)", v10_3);
            }
            com.adobe.mobile.ReferrerHandler._referrerProcessed = 1;
        } else {
            if (!com.adobe.mobile.ReferrerHandler._referrerProcessed) {
                java.util.HashMap v6_1 = new java.util.HashMap();
                org.json.JSONObject v7 = com.adobe.mobile.ReferrerHandler.translateV3StringResponseToJSONObject(v5);
                com.adobe.mobile.ReferrerHandler.triggerDeepLink(com.adobe.mobile.ReferrerHandler.getDeepLinkFromJSON(v7));
                java.util.HashMap v1 = com.adobe.mobile.ReferrerHandler.getDataFromJSON(v7, "contextData");
                v6_1.putAll(v1);
                if ((v1 != null) && (v1.size() > 0)) {
                    v6_1.putAll(com.adobe.mobile.ReferrerHandler.processV3ResponseAndReturnAdobeData(v5));
                }
                com.adobe.mobile.MobileConfig.getInstance().invokeAdobeDataCallback(com.adobe.mobile.Config$MobileDataEvent.MOBILE_EVENT_ACQUISITION_INSTALL, v6_1);
                com.adobe.mobile.StaticMethods.getAnalyticsExecutor().execute(new com.adobe.mobile.ReferrerHandler$3(v6_1));
                com.adobe.mobile.AnalyticsWorker.sharedInstance().kickWithReferrerData(v6_1);
            } else {
                com.adobe.mobile.ReferrerHandler$3 v10_4 = new Object[0];
                com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Acquisition referrer timed out", v10_4);
            }
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.triggerDeepLink():


    protected static void triggerDeepLink(String p7)
    {
        if (p7 != null) {
            try {
                android.app.Activity v0 = com.adobe.mobile.StaticMethods.getCurrentActivity();
                android.content.Intent v2_1 = new android.content.Intent("android.intent.action.VIEW");
                v2_1.setData(android.net.Uri.parse(p7));
                v0.startActivity(v2_1);
            } catch (Exception v1_1) {
                Object[] v4_2 = new Object[0];
                com.adobe.mobile.StaticMethods.logWarningFormat(v1_1.getMessage(), v4_2);
            } catch (Exception v1_0) {
                Object[] v4_1 = new Object[1];
                v4_1[0] = v1_0.toString();
                com.adobe.mobile.StaticMethods.logWarningFormat("Acquisition - Could not load deep link intent for Acquisition (%s)", v4_1);
            }
        }
        return;
    }

Method android.content.Intent.setData() not found.

[TAINT] String 'a.referrer.campaign.name' ==>>> Sink '['Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/adobe/mobile/ReferrerHandler;', 'handleV3Acquisition', '(Ljava/util/HashMap;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'triggerDeepLink', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;')]]

Use of a string value a.referrer.campaign.name to construct an Intent

Method com.adobe.mobile.ReferrerHandler.handleV3Acquisition():


    protected static void handleV3Acquisition(java.util.HashMap p14)
    {
        String v5 = com.adobe.mobile.ReferrerHandler.processReferrerDataFromV3Server(com.adobe.mobile.ReferrerHandler.getReferrerDataFromV3Server(((String) p14.get("utm_content")), com.adobe.mobile.StaticMethods.getAdvertisingIdentifier()));
        if (!com.adobe.mobile.Lifecycle.lifecycleHasRun) {
            try {
                android.content.SharedPreferences$Editor v3 = com.adobe.mobile.StaticMethods.getSharedPreferencesEditor();
                v3.putString("ADMS_Referrer_ContextData_Json_String", v5);
                v3.commit();
            } catch (com.adobe.mobile.StaticMethods$NullContextException v2) {
                com.adobe.mobile.ReferrerHandler$3 v10_3 = new Object[1];
                v10_3[0] = v2.getMessage();
                com.adobe.mobile.StaticMethods.logErrorFormat("Analytics - Error persisting referrer data (%s)", v10_3);
            }
            com.adobe.mobile.ReferrerHandler._referrerProcessed = 1;
        } else {
            if (!com.adobe.mobile.ReferrerHandler._referrerProcessed) {
                java.util.HashMap v6_1 = new java.util.HashMap();
                org.json.JSONObject v7 = com.adobe.mobile.ReferrerHandler.translateV3StringResponseToJSONObject(v5);
                com.adobe.mobile.ReferrerHandler.triggerDeepLink(com.adobe.mobile.ReferrerHandler.getDeepLinkFromJSON(v7));
                java.util.HashMap v1 = com.adobe.mobile.ReferrerHandler.getDataFromJSON(v7, "contextData");
                v6_1.putAll(v1);
                if ((v1 != null) && (v1.size() > 0)) {
                    v6_1.putAll(com.adobe.mobile.ReferrerHandler.processV3ResponseAndReturnAdobeData(v5));
                }
                com.adobe.mobile.MobileConfig.getInstance().invokeAdobeDataCallback(com.adobe.mobile.Config$MobileDataEvent.MOBILE_EVENT_ACQUISITION_INSTALL, v6_1);
                com.adobe.mobile.StaticMethods.getAnalyticsExecutor().execute(new com.adobe.mobile.ReferrerHandler$3(v6_1));
                com.adobe.mobile.AnalyticsWorker.sharedInstance().kickWithReferrerData(v6_1);
            } else {
                com.adobe.mobile.ReferrerHandler$3 v10_4 = new Object[0];
                com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Acquisition referrer timed out", v10_4);
            }
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.triggerDeepLink():


    protected static void triggerDeepLink(String p7)
    {
        if (p7 != null) {
            try {
                android.app.Activity v0 = com.adobe.mobile.StaticMethods.getCurrentActivity();
                android.content.Intent v2_1 = new android.content.Intent("android.intent.action.VIEW");
                v2_1.setData(android.net.Uri.parse(p7));
                v0.startActivity(v2_1);
            } catch (Exception v1_1) {
                Object[] v4_2 = new Object[0];
                com.adobe.mobile.StaticMethods.logWarningFormat(v1_1.getMessage(), v4_2);
            } catch (Exception v1_0) {
                Object[] v4_1 = new Object[1];
                v4_1[0] = v1_0.toString();
                com.adobe.mobile.StaticMethods.logWarningFormat("Acquisition - Could not load deep link intent for Acquisition (%s)", v4_1);
            }
        }
        return;
    }

Method android.content.Intent.setData() not found.

[TAINT] String 'a.acquisition.custom.link_deferred' ==>>> Sink '['Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/adobe/mobile/ReferrerHandler;', 'handleV3Acquisition', '(Ljava/util/HashMap;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'triggerDeepLink', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;')]]

Use of a string value a.acquisition.custom.link_deferred to construct an Intent

Method com.adobe.mobile.ReferrerHandler.handleV3Acquisition():


    protected static void handleV3Acquisition(java.util.HashMap p14)
    {
        String v5 = com.adobe.mobile.ReferrerHandler.processReferrerDataFromV3Server(com.adobe.mobile.ReferrerHandler.getReferrerDataFromV3Server(((String) p14.get("utm_content")), com.adobe.mobile.StaticMethods.getAdvertisingIdentifier()));
        if (!com.adobe.mobile.Lifecycle.lifecycleHasRun) {
            try {
                android.content.SharedPreferences$Editor v3 = com.adobe.mobile.StaticMethods.getSharedPreferencesEditor();
                v3.putString("ADMS_Referrer_ContextData_Json_String", v5);
                v3.commit();
            } catch (com.adobe.mobile.StaticMethods$NullContextException v2) {
                com.adobe.mobile.ReferrerHandler$3 v10_3 = new Object[1];
                v10_3[0] = v2.getMessage();
                com.adobe.mobile.StaticMethods.logErrorFormat("Analytics - Error persisting referrer data (%s)", v10_3);
            }
            com.adobe.mobile.ReferrerHandler._referrerProcessed = 1;
        } else {
            if (!com.adobe.mobile.ReferrerHandler._referrerProcessed) {
                java.util.HashMap v6_1 = new java.util.HashMap();
                org.json.JSONObject v7 = com.adobe.mobile.ReferrerHandler.translateV3StringResponseToJSONObject(v5);
                com.adobe.mobile.ReferrerHandler.triggerDeepLink(com.adobe.mobile.ReferrerHandler.getDeepLinkFromJSON(v7));
                java.util.HashMap v1 = com.adobe.mobile.ReferrerHandler.getDataFromJSON(v7, "contextData");
                v6_1.putAll(v1);
                if ((v1 != null) && (v1.size() > 0)) {
                    v6_1.putAll(com.adobe.mobile.ReferrerHandler.processV3ResponseAndReturnAdobeData(v5));
                }
                com.adobe.mobile.MobileConfig.getInstance().invokeAdobeDataCallback(com.adobe.mobile.Config$MobileDataEvent.MOBILE_EVENT_ACQUISITION_INSTALL, v6_1);
                com.adobe.mobile.StaticMethods.getAnalyticsExecutor().execute(new com.adobe.mobile.ReferrerHandler$3(v6_1));
                com.adobe.mobile.AnalyticsWorker.sharedInstance().kickWithReferrerData(v6_1);
            } else {
                com.adobe.mobile.ReferrerHandler$3 v10_4 = new Object[0];
                com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Acquisition referrer timed out", v10_4);
            }
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.triggerDeepLink():


    protected static void triggerDeepLink(String p7)
    {
        if (p7 != null) {
            try {
                android.app.Activity v0 = com.adobe.mobile.StaticMethods.getCurrentActivity();
                android.content.Intent v2_1 = new android.content.Intent("android.intent.action.VIEW");
                v2_1.setData(android.net.Uri.parse(p7));
                v0.startActivity(v2_1);
            } catch (Exception v1_1) {
                Object[] v4_2 = new Object[0];
                com.adobe.mobile.StaticMethods.logWarningFormat(v1_1.getMessage(), v4_2);
            } catch (Exception v1_0) {
                Object[] v4_1 = new Object[1];
                v4_1[0] = v1_0.toString();
                com.adobe.mobile.StaticMethods.logWarningFormat("Acquisition - Could not load deep link intent for Acquisition (%s)", v4_1);
            }
        }
        return;
    }

Method android.content.Intent.setData() not found.

[TAINT] String 'a.acquisition.custom.link_deferred' ==>>> Sink '['Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/adobe/mobile/Lifecycle;', 'addInstallData', '(Ljava/util/Map; J)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'triggerDeepLink', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;')]]

Use of a string value a.acquisition.custom.link_deferred to construct an Intent

Method com.adobe.mobile.Lifecycle.addInstallData():


    private static void addInstallData(java.util.Map p11, long p12)
    {
        p11.put("a.InstallDate", new java.text.SimpleDateFormat("M/d/yyyy", java.util.Locale.US).format(Long.valueOf(p12)));
        p11.put("a.InstallEvent", "InstallEvent");
        p11.put("a.DailyEngUserEvent", "DailyEngUserEvent");
        p11.put("a.MonthlyEngUserEvent", "MonthlyEngUserEvent");
        try {
            if ((!com.adobe.mobile.StaticMethods.getSharedPreferences().contains("ADMS_Referrer_ContextData_Json_String")) && (!com.adobe.mobile.StaticMethods.getSharedPreferences().contains("utm_campaign"))) {
                if ((!com.adobe.mobile.MobileConfig.getInstance().mobileReferrerConfigured()) || (com.adobe.mobile.MobileConfig.getInstance().getReferrerTimeout() <= 0)) {
                    android.content.SharedPreferences$Editor v2 = com.adobe.mobile.StaticMethods.getSharedPreferencesEditor();
                    v2.putLong("ADMS_InstallDate", p12);
                    v2.commit();
                } else {
                    com.adobe.mobile.ReferrerHandler.setReferrerProcessed(0);
                    com.adobe.mobile.Messages.block3rdPartyCallbacksQueueForReferrer();
                }
            } else {
                java.util.Map v3 = com.adobe.mobile.Lifecycle.getReferrerDataFromSharedPreferences();
                com.adobe.mobile.ReferrerHandler.triggerDeepLink(com.adobe.mobile.ReferrerHandler.getDeepLinkFromJSON(com.adobe.mobile.ReferrerHandler.translateV3StringResponseToJSONObject(com.adobe.mobile.StaticMethods.getSharedPreferences().getString("ADMS_Referrer_ContextData_Json_String", 0))));
                if ((v3 == null) || (v3.size() < 0)) {
                } else {
                    p11.putAll(v3);
                    com.adobe.mobile.MobileConfig.getInstance().invokeAdobeDataCallback(com.adobe.mobile.Config$MobileDataEvent.MOBILE_EVENT_ACQUISITION_INSTALL, v3);
                }
            }
        } catch (com.adobe.mobile.StaticMethods$NullContextException v1) {
            com.adobe.mobile.Config$MobileDataEvent v7_10 = new Object[1];
            v7_10[0] = v1.getMessage();
            com.adobe.mobile.StaticMethods.logErrorFormat("Lifecycle - Error setting install data (%s).", v7_10);
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.triggerDeepLink():


    protected static void triggerDeepLink(String p7)
    {
        if (p7 != null) {
            try {
                android.app.Activity v0 = com.adobe.mobile.StaticMethods.getCurrentActivity();
                android.content.Intent v2_1 = new android.content.Intent("android.intent.action.VIEW");
                v2_1.setData(android.net.Uri.parse(p7));
                v0.startActivity(v2_1);
            } catch (Exception v1_1) {
                Object[] v4_2 = new Object[0];
                com.adobe.mobile.StaticMethods.logWarningFormat(v1_1.getMessage(), v4_2);
            } catch (Exception v1_0) {
                Object[] v4_1 = new Object[1];
                v4_1[0] = v1_0.toString();
                com.adobe.mobile.StaticMethods.logWarningFormat("Acquisition - Could not load deep link intent for Acquisition (%s)", v4_1);
            }
        }
        return;
    }

Method android.content.Intent.setData() not found.

[TAINT] String 'a.referrer.campaign.name' ==>>> Sink '['Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/adobe/mobile/Lifecycle;', 'addInstallData', '(Ljava/util/Map; J)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'triggerDeepLink', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;')]]

Use of a string value a.referrer.campaign.name to construct an Intent

Method com.adobe.mobile.Lifecycle.addInstallData():


    private static void addInstallData(java.util.Map p11, long p12)
    {
        p11.put("a.InstallDate", new java.text.SimpleDateFormat("M/d/yyyy", java.util.Locale.US).format(Long.valueOf(p12)));
        p11.put("a.InstallEvent", "InstallEvent");
        p11.put("a.DailyEngUserEvent", "DailyEngUserEvent");
        p11.put("a.MonthlyEngUserEvent", "MonthlyEngUserEvent");
        try {
            if ((!com.adobe.mobile.StaticMethods.getSharedPreferences().contains("ADMS_Referrer_ContextData_Json_String")) && (!com.adobe.mobile.StaticMethods.getSharedPreferences().contains("utm_campaign"))) {
                if ((!com.adobe.mobile.MobileConfig.getInstance().mobileReferrerConfigured()) || (com.adobe.mobile.MobileConfig.getInstance().getReferrerTimeout() <= 0)) {
                    android.content.SharedPreferences$Editor v2 = com.adobe.mobile.StaticMethods.getSharedPreferencesEditor();
                    v2.putLong("ADMS_InstallDate", p12);
                    v2.commit();
                } else {
                    com.adobe.mobile.ReferrerHandler.setReferrerProcessed(0);
                    com.adobe.mobile.Messages.block3rdPartyCallbacksQueueForReferrer();
                }
            } else {
                java.util.Map v3 = com.adobe.mobile.Lifecycle.getReferrerDataFromSharedPreferences();
                com.adobe.mobile.ReferrerHandler.triggerDeepLink(com.adobe.mobile.ReferrerHandler.getDeepLinkFromJSON(com.adobe.mobile.ReferrerHandler.translateV3StringResponseToJSONObject(com.adobe.mobile.StaticMethods.getSharedPreferences().getString("ADMS_Referrer_ContextData_Json_String", 0))));
                if ((v3 == null) || (v3.size() < 0)) {
                } else {
                    p11.putAll(v3);
                    com.adobe.mobile.MobileConfig.getInstance().invokeAdobeDataCallback(com.adobe.mobile.Config$MobileDataEvent.MOBILE_EVENT_ACQUISITION_INSTALL, v3);
                }
            }
        } catch (com.adobe.mobile.StaticMethods$NullContextException v1) {
            com.adobe.mobile.Config$MobileDataEvent v7_10 = new Object[1];
            v7_10[0] = v1.getMessage();
            com.adobe.mobile.StaticMethods.logErrorFormat("Lifecycle - Error setting install data (%s).", v7_10);
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.triggerDeepLink():


    protected static void triggerDeepLink(String p7)
    {
        if (p7 != null) {
            try {
                android.app.Activity v0 = com.adobe.mobile.StaticMethods.getCurrentActivity();
                android.content.Intent v2_1 = new android.content.Intent("android.intent.action.VIEW");
                v2_1.setData(android.net.Uri.parse(p7));
                v0.startActivity(v2_1);
            } catch (Exception v1_1) {
                Object[] v4_2 = new Object[0];
                com.adobe.mobile.StaticMethods.logWarningFormat(v1_1.getMessage(), v4_2);
            } catch (Exception v1_0) {
                Object[] v4_1 = new Object[1];
                v4_1[0] = v1_0.toString();
                com.adobe.mobile.StaticMethods.logWarningFormat("Acquisition - Could not load deep link intent for Acquisition (%s)", v4_1);
            }
        }
        return;
    }

Method android.content.Intent.setData() not found.

[TAINT] String 'a.referrer.campaign.name' ==>>> Sink '['Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/adobe/mobile/Analytics$10;', 'run', '()V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'processIntent', '(Landroid/content/Intent;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'handleV3Acquisition', '(Ljava/util/HashMap;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'triggerDeepLink', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;')]]

Use of a string value a.referrer.campaign.name to construct an Intent

Method com.adobe.mobile.Analytics$10.run():


    public void run()
    {
        com.adobe.mobile.ReferrerHandler.processIntent(this.val$intent);
        return;
    }

Method com.adobe.mobile.ReferrerHandler.processIntent():


    public static void processIntent(android.content.Intent p5)
    {
        String v1 = com.adobe.mobile.ReferrerHandler.getReferrerURLFromIntent(p5);
        if ((v1 != null) && (v1.length() != 0)) {
            Object[] v3_2 = new Object[1];
            v3_2[0] = v1;
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Received referrer information(%s)", v3_2);
            java.util.HashMap v0 = com.adobe.mobile.ReferrerHandler.parseReferrerURLToMap(v1);
            if (!com.adobe.mobile.ReferrerHandler.isV3Response(v0)) {
                com.adobe.mobile.ReferrerHandler.handleGooglePlayAcquisition(v0);
            } else {
                com.adobe.mobile.ReferrerHandler.handleV3Acquisition(v0);
            }
        } else {
            Object[] v3_0 = new Object[0];
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Ignoring referrer due to the intent\'s referrer string being empty", v3_0);
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.handleV3Acquisition():


    protected static void handleV3Acquisition(java.util.HashMap p14)
    {
        String v5 = com.adobe.mobile.ReferrerHandler.processReferrerDataFromV3Server(com.adobe.mobile.ReferrerHandler.getReferrerDataFromV3Server(((String) p14.get("utm_content")), com.adobe.mobile.StaticMethods.getAdvertisingIdentifier()));
        if (!com.adobe.mobile.Lifecycle.lifecycleHasRun) {
            try {
                android.content.SharedPreferences$Editor v3 = com.adobe.mobile.StaticMethods.getSharedPreferencesEditor();
                v3.putString("ADMS_Referrer_ContextData_Json_String", v5);
                v3.commit();
            } catch (com.adobe.mobile.StaticMethods$NullContextException v2) {
                com.adobe.mobile.ReferrerHandler$3 v10_3 = new Object[1];
                v10_3[0] = v2.getMessage();
                com.adobe.mobile.StaticMethods.logErrorFormat("Analytics - Error persisting referrer data (%s)", v10_3);
            }
            com.adobe.mobile.ReferrerHandler._referrerProcessed = 1;
        } else {
            if (!com.adobe.mobile.ReferrerHandler._referrerProcessed) {
                java.util.HashMap v6_1 = new java.util.HashMap();
                org.json.JSONObject v7 = com.adobe.mobile.ReferrerHandler.translateV3StringResponseToJSONObject(v5);
                com.adobe.mobile.ReferrerHandler.triggerDeepLink(com.adobe.mobile.ReferrerHandler.getDeepLinkFromJSON(v7));
                java.util.HashMap v1 = com.adobe.mobile.ReferrerHandler.getDataFromJSON(v7, "contextData");
                v6_1.putAll(v1);
                if ((v1 != null) && (v1.size() > 0)) {
                    v6_1.putAll(com.adobe.mobile.ReferrerHandler.processV3ResponseAndReturnAdobeData(v5));
                }
                com.adobe.mobile.MobileConfig.getInstance().invokeAdobeDataCallback(com.adobe.mobile.Config$MobileDataEvent.MOBILE_EVENT_ACQUISITION_INSTALL, v6_1);
                com.adobe.mobile.StaticMethods.getAnalyticsExecutor().execute(new com.adobe.mobile.ReferrerHandler$3(v6_1));
                com.adobe.mobile.AnalyticsWorker.sharedInstance().kickWithReferrerData(v6_1);
            } else {
                com.adobe.mobile.ReferrerHandler$3 v10_4 = new Object[0];
                com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Acquisition referrer timed out", v10_4);
            }
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.triggerDeepLink():


    protected static void triggerDeepLink(String p7)
    {
        if (p7 != null) {
            try {
                android.app.Activity v0 = com.adobe.mobile.StaticMethods.getCurrentActivity();
                android.content.Intent v2_1 = new android.content.Intent("android.intent.action.VIEW");
                v2_1.setData(android.net.Uri.parse(p7));
                v0.startActivity(v2_1);
            } catch (Exception v1_1) {
                Object[] v4_2 = new Object[0];
                com.adobe.mobile.StaticMethods.logWarningFormat(v1_1.getMessage(), v4_2);
            } catch (Exception v1_0) {
                Object[] v4_1 = new Object[1];
                v4_1[0] = v1_0.toString();
                com.adobe.mobile.StaticMethods.logWarningFormat("Acquisition - Could not load deep link intent for Acquisition (%s)", v4_1);
            }
        }
        return;
    }

Method android.content.Intent.setData() not found.

[TAINT] String 'a.acquisition.custom.' ==>>> Sink '['Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/adobe/mobile/Analytics$10;', 'run', '()V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'processIntent', '(Landroid/content/Intent;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'handleV3Acquisition', '(Ljava/util/HashMap;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'triggerDeepLink', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;')]]

Use of a string value a.acquisition.custom. to construct an Intent

Method com.adobe.mobile.Analytics$10.run():


    public void run()
    {
        com.adobe.mobile.ReferrerHandler.processIntent(this.val$intent);
        return;
    }

Method com.adobe.mobile.ReferrerHandler.processIntent():


    public static void processIntent(android.content.Intent p5)
    {
        String v1 = com.adobe.mobile.ReferrerHandler.getReferrerURLFromIntent(p5);
        if ((v1 != null) && (v1.length() != 0)) {
            Object[] v3_2 = new Object[1];
            v3_2[0] = v1;
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Received referrer information(%s)", v3_2);
            java.util.HashMap v0 = com.adobe.mobile.ReferrerHandler.parseReferrerURLToMap(v1);
            if (!com.adobe.mobile.ReferrerHandler.isV3Response(v0)) {
                com.adobe.mobile.ReferrerHandler.handleGooglePlayAcquisition(v0);
            } else {
                com.adobe.mobile.ReferrerHandler.handleV3Acquisition(v0);
            }
        } else {
            Object[] v3_0 = new Object[0];
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Ignoring referrer due to the intent\'s referrer string being empty", v3_0);
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.handleV3Acquisition():


    protected static void handleV3Acquisition(java.util.HashMap p14)
    {
        String v5 = com.adobe.mobile.ReferrerHandler.processReferrerDataFromV3Server(com.adobe.mobile.ReferrerHandler.getReferrerDataFromV3Server(((String) p14.get("utm_content")), com.adobe.mobile.StaticMethods.getAdvertisingIdentifier()));
        if (!com.adobe.mobile.Lifecycle.lifecycleHasRun) {
            try {
                android.content.SharedPreferences$Editor v3 = com.adobe.mobile.StaticMethods.getSharedPreferencesEditor();
                v3.putString("ADMS_Referrer_ContextData_Json_String", v5);
                v3.commit();
            } catch (com.adobe.mobile.StaticMethods$NullContextException v2) {
                com.adobe.mobile.ReferrerHandler$3 v10_3 = new Object[1];
                v10_3[0] = v2.getMessage();
                com.adobe.mobile.StaticMethods.logErrorFormat("Analytics - Error persisting referrer data (%s)", v10_3);
            }
            com.adobe.mobile.ReferrerHandler._referrerProcessed = 1;
        } else {
            if (!com.adobe.mobile.ReferrerHandler._referrerProcessed) {
                java.util.HashMap v6_1 = new java.util.HashMap();
                org.json.JSONObject v7 = com.adobe.mobile.ReferrerHandler.translateV3StringResponseToJSONObject(v5);
                com.adobe.mobile.ReferrerHandler.triggerDeepLink(com.adobe.mobile.ReferrerHandler.getDeepLinkFromJSON(v7));
                java.util.HashMap v1 = com.adobe.mobile.ReferrerHandler.getDataFromJSON(v7, "contextData");
                v6_1.putAll(v1);
                if ((v1 != null) && (v1.size() > 0)) {
                    v6_1.putAll(com.adobe.mobile.ReferrerHandler.processV3ResponseAndReturnAdobeData(v5));
                }
                com.adobe.mobile.MobileConfig.getInstance().invokeAdobeDataCallback(com.adobe.mobile.Config$MobileDataEvent.MOBILE_EVENT_ACQUISITION_INSTALL, v6_1);
                com.adobe.mobile.StaticMethods.getAnalyticsExecutor().execute(new com.adobe.mobile.ReferrerHandler$3(v6_1));
                com.adobe.mobile.AnalyticsWorker.sharedInstance().kickWithReferrerData(v6_1);
            } else {
                com.adobe.mobile.ReferrerHandler$3 v10_4 = new Object[0];
                com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Acquisition referrer timed out", v10_4);
            }
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.triggerDeepLink():


    protected static void triggerDeepLink(String p7)
    {
        if (p7 != null) {
            try {
                android.app.Activity v0 = com.adobe.mobile.StaticMethods.getCurrentActivity();
                android.content.Intent v2_1 = new android.content.Intent("android.intent.action.VIEW");
                v2_1.setData(android.net.Uri.parse(p7));
                v0.startActivity(v2_1);
            } catch (Exception v1_1) {
                Object[] v4_2 = new Object[0];
                com.adobe.mobile.StaticMethods.logWarningFormat(v1_1.getMessage(), v4_2);
            } catch (Exception v1_0) {
                Object[] v4_1 = new Object[1];
                v4_1[0] = v1_0.toString();
                com.adobe.mobile.StaticMethods.logWarningFormat("Acquisition - Could not load deep link intent for Acquisition (%s)", v4_1);
            }
        }
        return;
    }

Method android.content.Intent.setData() not found.

[TAINT] String 'a.acquisition.custom.link_deferred' ==>>> Sink '['Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Lcom/adobe/mobile/Analytics$10;', 'run', '()V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'processIntent', '(Landroid/content/Intent;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'handleV3Acquisition', '(Ljava/util/HashMap;)V'), ('Lcom/adobe/mobile/ReferrerHandler;', 'triggerDeepLink', '(Ljava/lang/String;)V'), ('Landroid/content/Intent;', 'setData', '(Landroid/net/Uri;)Landroid/content/Intent;')]]

Use of a string value a.acquisition.custom.link_deferred to construct an Intent

Method com.adobe.mobile.Analytics$10.run():


    public void run()
    {
        com.adobe.mobile.ReferrerHandler.processIntent(this.val$intent);
        return;
    }

Method com.adobe.mobile.ReferrerHandler.processIntent():


    public static void processIntent(android.content.Intent p5)
    {
        String v1 = com.adobe.mobile.ReferrerHandler.getReferrerURLFromIntent(p5);
        if ((v1 != null) && (v1.length() != 0)) {
            Object[] v3_2 = new Object[1];
            v3_2[0] = v1;
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Received referrer information(%s)", v3_2);
            java.util.HashMap v0 = com.adobe.mobile.ReferrerHandler.parseReferrerURLToMap(v1);
            if (!com.adobe.mobile.ReferrerHandler.isV3Response(v0)) {
                com.adobe.mobile.ReferrerHandler.handleGooglePlayAcquisition(v0);
            } else {
                com.adobe.mobile.ReferrerHandler.handleV3Acquisition(v0);
            }
        } else {
            Object[] v3_0 = new Object[0];
            com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Ignoring referrer due to the intent\'s referrer string being empty", v3_0);
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.handleV3Acquisition():


    protected static void handleV3Acquisition(java.util.HashMap p14)
    {
        String v5 = com.adobe.mobile.ReferrerHandler.processReferrerDataFromV3Server(com.adobe.mobile.ReferrerHandler.getReferrerDataFromV3Server(((String) p14.get("utm_content")), com.adobe.mobile.StaticMethods.getAdvertisingIdentifier()));
        if (!com.adobe.mobile.Lifecycle.lifecycleHasRun) {
            try {
                android.content.SharedPreferences$Editor v3 = com.adobe.mobile.StaticMethods.getSharedPreferencesEditor();
                v3.putString("ADMS_Referrer_ContextData_Json_String", v5);
                v3.commit();
            } catch (com.adobe.mobile.StaticMethods$NullContextException v2) {
                com.adobe.mobile.ReferrerHandler$3 v10_3 = new Object[1];
                v10_3[0] = v2.getMessage();
                com.adobe.mobile.StaticMethods.logErrorFormat("Analytics - Error persisting referrer data (%s)", v10_3);
            }
            com.adobe.mobile.ReferrerHandler._referrerProcessed = 1;
        } else {
            if (!com.adobe.mobile.ReferrerHandler._referrerProcessed) {
                java.util.HashMap v6_1 = new java.util.HashMap();
                org.json.JSONObject v7 = com.adobe.mobile.ReferrerHandler.translateV3StringResponseToJSONObject(v5);
                com.adobe.mobile.ReferrerHandler.triggerDeepLink(com.adobe.mobile.ReferrerHandler.getDeepLinkFromJSON(v7));
                java.util.HashMap v1 = com.adobe.mobile.ReferrerHandler.getDataFromJSON(v7, "contextData");
                v6_1.putAll(v1);
                if ((v1 != null) && (v1.size() > 0)) {
                    v6_1.putAll(com.adobe.mobile.ReferrerHandler.processV3ResponseAndReturnAdobeData(v5));
                }
                com.adobe.mobile.MobileConfig.getInstance().invokeAdobeDataCallback(com.adobe.mobile.Config$MobileDataEvent.MOBILE_EVENT_ACQUISITION_INSTALL, v6_1);
                com.adobe.mobile.StaticMethods.getAnalyticsExecutor().execute(new com.adobe.mobile.ReferrerHandler$3(v6_1));
                com.adobe.mobile.AnalyticsWorker.sharedInstance().kickWithReferrerData(v6_1);
            } else {
                com.adobe.mobile.ReferrerHandler$3 v10_4 = new Object[0];
                com.adobe.mobile.StaticMethods.logDebugFormat("Analytics - Acquisition referrer timed out", v10_4);
            }
        }
        return;
    }

Method com.adobe.mobile.ReferrerHandler.triggerDeepLink():


    protected static void triggerDeepLink(String p7)
    {
        if (p7 != null) {
            try {
                android.app.Activity v0 = com.adobe.mobile.StaticMethods.getCurrentActivity();
                android.content.Intent v2_1 = new android.content.Intent("android.intent.action.VIEW");
                v2_1.setData(android.net.Uri.parse(p7));
                v0.startActivity(v2_1);
            } catch (Exception v1_1) {
                Object[] v4_2 = new Object[0];
                com.adobe.mobile.StaticMethods.logWarningFormat(v1_1.getMessage(), v4_2);
            } catch (Exception v1_0) {
                Object[] v4_1 = new Object[1];
                v4_1[0] = v1_0.toString();
                com.adobe.mobile.StaticMethods.logWarningFormat("Acquisition - Could not load deep link intent for Acquisition (%s)", v4_1);
            }
        }
        return;
    }

Method android.content.Intent.setData() not found.

[TAINT] String 'androidx.browser.browseractions.browser_action_open' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri; I Ljava/util/ArrayList; Landroid/app/PendingIntent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', '<init>', '(Landroid/content/Context; Landroid/net/Uri;)V'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V')]]

Use of a string value androidx.browser.browseractions.browser_action_open to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3, int p4, java.util.ArrayList p5, android.app.PendingIntent p6)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).setUrlType(p4).setCustomItems(p5).setOnItemSelectedAction(p6).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.<init>():


    public BrowserActionsIntent$Builder(android.content.Context p4, android.net.Uri p5)
    {
        this.mIntent = new android.content.Intent("androidx.browser.browseractions.browser_action_open");
        this.mMenuItems = 0;
        this.mOnItemSelectedPendingIntent = 0;
        this.mContext = p4;
        this.mUri = p5;
        this.mType = 0;
        this.mMenuItems = new java.util.ArrayList();
        return;
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'https://www.example.com' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V', '1', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri; I Ljava/util/ArrayList; Landroid/app/PendingIntent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent;', 'launchIntent', '(Landroid/content/Context; Landroid/content/Intent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent;', 'getBrowserActionsIntentHandlers', '(Landroid/content/Context;)Ljava/util/List;'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V')]]

Use of a string value https://www.example.com to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3, int p4, java.util.ArrayList p5, android.app.PendingIntent p6)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).setUrlType(p4).setCustomItems(p5).setOnItemSelectedAction(p6).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent.launchIntent():


    public static void launchIntent(android.content.Context p1, android.content.Intent p2)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p1, p2, androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers(p1));
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers():


    private static java.util.List getBrowserActionsIntentHandlers(android.content.Context p4)
    {
        return p4.getPackageManager().queryIntentActivities(new android.content.Intent("androidx.browser.browseractions.browser_action_open", android.net.Uri.parse("https://www.example.com")), 131072);
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri; I Ljava/util/ArrayList; Landroid/app/PendingIntent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', 'build', '()Landroidx/browser/browseractions/BrowserActionsIntent;'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3, int p4, java.util.ArrayList p5, android.app.PendingIntent p6)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).setUrlType(p4).setCustomItems(p5).setOnItemSelectedAction(p6).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.build():


    public androidx.browser.browseractions.BrowserActionsIntent build()
    {
        this.mIntent.setData(this.mUri);
        this.mIntent.putExtra("androidx.browser.browseractions.extra.TYPE", this.mType);
        this.mIntent.putParcelableArrayListExtra("androidx.browser.browseractions.extra.MENU_ITEMS", this.mMenuItems);
        this.mIntent.putExtra("androidx.browser.browseractions.APP_ID", android.app.PendingIntent.getActivity(this.mContext, 0, new android.content.Intent(), 0));
        if (this.mOnItemSelectedPendingIntent != null) {
            this.mIntent.putExtra("androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT", this.mOnItemSelectedPendingIntent);
        }
        return new androidx.browser.browseractions.BrowserActionsIntent(this.mIntent);
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'androidx.browser.browseractions.browser_action_open' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri; I Ljava/util/ArrayList; Landroid/app/PendingIntent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent;', 'launchIntent', '(Landroid/content/Context; Landroid/content/Intent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent;', 'getBrowserActionsIntentHandlers', '(Landroid/content/Context;)Ljava/util/List;'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V')]]

Use of a string value androidx.browser.browseractions.browser_action_open to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3, int p4, java.util.ArrayList p5, android.app.PendingIntent p6)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).setUrlType(p4).setCustomItems(p5).setOnItemSelectedAction(p6).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent.launchIntent():


    public static void launchIntent(android.content.Context p1, android.content.Intent p2)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p1, p2, androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers(p1));
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers():


    private static java.util.List getBrowserActionsIntentHandlers(android.content.Context p4)
    {
        return p4.getPackageManager().queryIntentActivities(new android.content.Intent("androidx.browser.browseractions.browser_action_open", android.net.Uri.parse("https://www.example.com")), 131072);
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'androidx.browser.browseractions.extra.TYPE' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; I)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri; I Ljava/util/ArrayList; Landroid/app/PendingIntent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', 'build', '()Landroidx/browser/browseractions/BrowserActionsIntent;'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; I)Landroid/content/Intent;')]]

Use of a string value androidx.browser.browseractions.extra.TYPE to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3, int p4, java.util.ArrayList p5, android.app.PendingIntent p6)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).setUrlType(p4).setCustomItems(p5).setOnItemSelectedAction(p6).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.build():


    public androidx.browser.browseractions.BrowserActionsIntent build()
    {
        this.mIntent.setData(this.mUri);
        this.mIntent.putExtra("androidx.browser.browseractions.extra.TYPE", this.mType);
        this.mIntent.putParcelableArrayListExtra("androidx.browser.browseractions.extra.MENU_ITEMS", this.mMenuItems);
        this.mIntent.putExtra("androidx.browser.browseractions.APP_ID", android.app.PendingIntent.getActivity(this.mContext, 0, new android.content.Intent(), 0));
        if (this.mOnItemSelectedPendingIntent != null) {
            this.mIntent.putExtra("androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT", this.mOnItemSelectedPendingIntent);
        }
        return new androidx.browser.browseractions.BrowserActionsIntent(this.mIntent);
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'androidx.browser.browseractions.APP_ID' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri; I Ljava/util/ArrayList; Landroid/app/PendingIntent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', 'build', '()Landroidx/browser/browseractions/BrowserActionsIntent;'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value androidx.browser.browseractions.APP_ID to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3, int p4, java.util.ArrayList p5, android.app.PendingIntent p6)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).setUrlType(p4).setCustomItems(p5).setOnItemSelectedAction(p6).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.build():


    public androidx.browser.browseractions.BrowserActionsIntent build()
    {
        this.mIntent.setData(this.mUri);
        this.mIntent.putExtra("androidx.browser.browseractions.extra.TYPE", this.mType);
        this.mIntent.putParcelableArrayListExtra("androidx.browser.browseractions.extra.MENU_ITEMS", this.mMenuItems);
        this.mIntent.putExtra("androidx.browser.browseractions.APP_ID", android.app.PendingIntent.getActivity(this.mContext, 0, new android.content.Intent(), 0));
        if (this.mOnItemSelectedPendingIntent != null) {
            this.mIntent.putExtra("androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT", this.mOnItemSelectedPendingIntent);
        }
        return new androidx.browser.browseractions.BrowserActionsIntent(this.mIntent);
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'androidx.browser.browseractions.browser_action_open' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent;', 'launchIntent', '(Landroid/content/Context; Landroid/content/Intent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent;', 'getBrowserActionsIntentHandlers', '(Landroid/content/Context;)Ljava/util/List;'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V')]]

Use of a string value androidx.browser.browseractions.browser_action_open to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent.launchIntent():


    public static void launchIntent(android.content.Context p1, android.content.Intent p2)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p1, p2, androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers(p1));
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers():


    private static java.util.List getBrowserActionsIntentHandlers(android.content.Context p4)
    {
        return p4.getPackageManager().queryIntentActivities(new android.content.Intent("androidx.browser.browseractions.browser_action_open", android.net.Uri.parse("https://www.example.com")), 131072);
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'androidx.browser.browseractions.APP_ID' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', 'build', '()Landroidx/browser/browseractions/BrowserActionsIntent;'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value androidx.browser.browseractions.APP_ID to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.build():


    public androidx.browser.browseractions.BrowserActionsIntent build()
    {
        this.mIntent.setData(this.mUri);
        this.mIntent.putExtra("androidx.browser.browseractions.extra.TYPE", this.mType);
        this.mIntent.putParcelableArrayListExtra("androidx.browser.browseractions.extra.MENU_ITEMS", this.mMenuItems);
        this.mIntent.putExtra("androidx.browser.browseractions.APP_ID", android.app.PendingIntent.getActivity(this.mContext, 0, new android.content.Intent(), 0));
        if (this.mOnItemSelectedPendingIntent != null) {
            this.mIntent.putExtra("androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT", this.mOnItemSelectedPendingIntent);
        }
        return new androidx.browser.browseractions.BrowserActionsIntent(this.mIntent);
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'androidx.browser.browseractions.extra.TYPE' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; I)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', 'build', '()Landroidx/browser/browseractions/BrowserActionsIntent;'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; I)Landroid/content/Intent;')]]

Use of a string value androidx.browser.browseractions.extra.TYPE to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.build():


    public androidx.browser.browseractions.BrowserActionsIntent build()
    {
        this.mIntent.setData(this.mUri);
        this.mIntent.putExtra("androidx.browser.browseractions.extra.TYPE", this.mType);
        this.mIntent.putParcelableArrayListExtra("androidx.browser.browseractions.extra.MENU_ITEMS", this.mMenuItems);
        this.mIntent.putExtra("androidx.browser.browseractions.APP_ID", android.app.PendingIntent.getActivity(this.mContext, 0, new android.content.Intent(), 0));
        if (this.mOnItemSelectedPendingIntent != null) {
            this.mIntent.putExtra("androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT", this.mOnItemSelectedPendingIntent);
        }
        return new androidx.browser.browseractions.BrowserActionsIntent(this.mIntent);
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'https://www.example.com' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V', '1', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent;', 'launchIntent', '(Landroid/content/Context; Landroid/content/Intent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent;', 'getBrowserActionsIntentHandlers', '(Landroid/content/Context;)Ljava/util/List;'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V')]]

Use of a string value https://www.example.com to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent.launchIntent():


    public static void launchIntent(android.content.Context p1, android.content.Intent p2)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p1, p2, androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers(p1));
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers():


    private static java.util.List getBrowserActionsIntentHandlers(android.content.Context p4)
    {
        return p4.getPackageManager().queryIntentActivities(new android.content.Intent("androidx.browser.browseractions.browser_action_open", android.net.Uri.parse("https://www.example.com")), 131072);
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'androidx.browser.browseractions.browser_action_open' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', '<init>', '(Landroid/content/Context; Landroid/net/Uri;)V'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V')]]

Use of a string value androidx.browser.browseractions.browser_action_open to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.<init>():


    public BrowserActionsIntent$Builder(android.content.Context p4, android.net.Uri p5)
    {
        this.mIntent = new android.content.Intent("androidx.browser.browseractions.browser_action_open");
        this.mMenuItems = 0;
        this.mOnItemSelectedPendingIntent = 0;
        this.mContext = p4;
        this.mUri = p5;
        this.mType = 0;
        this.mMenuItems = new java.util.ArrayList();
        return;
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'openBrowserAction', '(Landroid/content/Context; Landroid/net/Uri;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', 'build', '()Landroidx/browser/browseractions/BrowserActionsIntent;'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.openBrowserAction():


    public static void openBrowserAction(android.content.Context p2, android.net.Uri p3)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p2, new androidx.browser.browseractions.BrowserActionsIntent$Builder(p2, p3).build().getIntent());
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.build():


    public androidx.browser.browseractions.BrowserActionsIntent build()
    {
        this.mIntent.setData(this.mUri);
        this.mIntent.putExtra("androidx.browser.browseractions.extra.TYPE", this.mType);
        this.mIntent.putParcelableArrayListExtra("androidx.browser.browseractions.extra.MENU_ITEMS", this.mMenuItems);
        this.mIntent.putExtra("androidx.browser.browseractions.APP_ID", android.app.PendingIntent.getActivity(this.mContext, 0, new android.content.Intent(), 0));
        if (this.mOnItemSelectedPendingIntent != null) {
            this.mIntent.putExtra("androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT", this.mOnItemSelectedPendingIntent);
        }
        return new androidx.browser.browseractions.BrowserActionsIntent(this.mIntent);
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'https://www.example.com' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V', '1', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'launchIntent', '(Landroid/content/Context; Landroid/content/Intent; Ljava/util/List;)V'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V')]]

Use of a string value https://www.example.com to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.launchIntent():


    static void launchIntent(android.content.Context p7, android.content.Intent p8, java.util.List p9)
    {
        if ((p9 != null) && (p9.size() != 0)) {
            if (p9.size() != 1) {
                android.content.pm.ResolveInfo v0 = p7.getPackageManager().resolveActivity(new android.content.Intent("android.intent.action.VIEW", android.net.Uri.parse("https://www.example.com")), 65536);
                if (v0 != null) {
                    String v1 = v0.activityInfo.packageName;
                    int v2 = 0;
                    while (v2 < p9.size()) {
                        if (!v1.equals(((android.content.pm.ResolveInfo) p9.get(v2)).activityInfo.packageName)) {
                            v2++;
                        } else {
                            p8.setPackage(v1);
                            break;
                        }
                    }
                }
            } else {
                p8.setPackage(((android.content.pm.ResolveInfo) p9.get(0)).activityInfo.packageName);
            }
            android.support.v4.content.ContextCompat.startActivity(p7, p8, 0);
        } else {
            androidx.browser.browseractions.BrowserActionsIntent.openFallbackBrowserActionsMenu(p7, p8);
        }
        return;
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'androidx.browser.browseractions.browser_action_open' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'launchIntent', '(Landroid/content/Context; Landroid/content/Intent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent;', 'getBrowserActionsIntentHandlers', '(Landroid/content/Context;)Ljava/util/List;'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V')]]

Use of a string value androidx.browser.browseractions.browser_action_open to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.launchIntent():


    public static void launchIntent(android.content.Context p1, android.content.Intent p2)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p1, p2, androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers(p1));
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers():


    private static java.util.List getBrowserActionsIntentHandlers(android.content.Context p4)
    {
        return p4.getPackageManager().queryIntentActivities(new android.content.Intent("androidx.browser.browseractions.browser_action_open", android.net.Uri.parse("https://www.example.com")), 131072);
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'https://www.example.com' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V', '1', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'launchIntent', '(Landroid/content/Context; Landroid/content/Intent;)V'), ('Landroidx/browser/browseractions/BrowserActionsIntent;', 'getBrowserActionsIntentHandlers', '(Landroid/content/Context;)Ljava/util/List;'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V')]]

Use of a string value https://www.example.com to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.launchIntent():


    public static void launchIntent(android.content.Context p1, android.content.Intent p2)
    {
        androidx.browser.browseractions.BrowserActionsIntent.launchIntent(p1, p2, androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers(p1));
        return;
    }

Method androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers():


    private static java.util.List getBrowserActionsIntentHandlers(android.content.Context p4)
    {
        return p4.getPackageManager().queryIntentActivities(new android.content.Intent("androidx.browser.browseractions.browser_action_open", android.net.Uri.parse("https://www.example.com")), 131072);
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'androidx.browser.browseractions.browser_action_open' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'getBrowserActionsIntentHandlers', '(Landroid/content/Context;)Ljava/util/List;'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V')]]

Use of a string value androidx.browser.browseractions.browser_action_open to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers():


    private static java.util.List getBrowserActionsIntentHandlers(android.content.Context p4)
    {
        return p4.getPackageManager().queryIntentActivities(new android.content.Intent("androidx.browser.browseractions.browser_action_open", android.net.Uri.parse("https://www.example.com")), 131072);
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'https://www.example.com' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V', '1', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent;', 'getBrowserActionsIntentHandlers', '(Landroid/content/Context;)Ljava/util/List;'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String; Landroid/net/Uri;)V')]]

Use of a string value https://www.example.com to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent.getBrowserActionsIntentHandlers():


    private static java.util.List getBrowserActionsIntentHandlers(android.content.Context p4)
    {
        return p4.getPackageManager().queryIntentActivities(new android.content.Intent("androidx.browser.browseractions.browser_action_open", android.net.Uri.parse("https://www.example.com")), 131072);
    }

Method android.content.Intent.<init>() not found.

[TAINT] String 'androidx.browser.browseractions.APP_ID' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', 'build', '()Landroidx/browser/browseractions/BrowserActionsIntent;'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value androidx.browser.browseractions.APP_ID to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.build():


    public androidx.browser.browseractions.BrowserActionsIntent build()
    {
        this.mIntent.setData(this.mUri);
        this.mIntent.putExtra("androidx.browser.browseractions.extra.TYPE", this.mType);
        this.mIntent.putParcelableArrayListExtra("androidx.browser.browseractions.extra.MENU_ITEMS", this.mMenuItems);
        this.mIntent.putExtra("androidx.browser.browseractions.APP_ID", android.app.PendingIntent.getActivity(this.mContext, 0, new android.content.Intent(), 0));
        if (this.mOnItemSelectedPendingIntent != null) {
            this.mIntent.putExtra("androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT", this.mOnItemSelectedPendingIntent);
        }
        return new androidx.browser.browseractions.BrowserActionsIntent(this.mIntent);
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', 'build', '()Landroidx/browser/browseractions/BrowserActionsIntent;'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; Landroid/os/Parcelable;)Landroid/content/Intent;')]]

Use of a string value androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.build():


    public androidx.browser.browseractions.BrowserActionsIntent build()
    {
        this.mIntent.setData(this.mUri);
        this.mIntent.putExtra("androidx.browser.browseractions.extra.TYPE", this.mType);
        this.mIntent.putParcelableArrayListExtra("androidx.browser.browseractions.extra.MENU_ITEMS", this.mMenuItems);
        this.mIntent.putExtra("androidx.browser.browseractions.APP_ID", android.app.PendingIntent.getActivity(this.mContext, 0, new android.content.Intent(), 0));
        if (this.mOnItemSelectedPendingIntent != null) {
            this.mIntent.putExtra("androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT", this.mOnItemSelectedPendingIntent);
        }
        return new androidx.browser.browseractions.BrowserActionsIntent(this.mIntent);
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'androidx.browser.browseractions.extra.TYPE' ==>>> Sink '['Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; I)Landroid/content/Intent;', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', 'build', '()Landroidx/browser/browseractions/BrowserActionsIntent;'), ('Landroid/content/Intent;', 'putExtra', '(Ljava/lang/String; I)Landroid/content/Intent;')]]

Use of a string value androidx.browser.browseractions.extra.TYPE to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.build():


    public androidx.browser.browseractions.BrowserActionsIntent build()
    {
        this.mIntent.setData(this.mUri);
        this.mIntent.putExtra("androidx.browser.browseractions.extra.TYPE", this.mType);
        this.mIntent.putParcelableArrayListExtra("androidx.browser.browseractions.extra.MENU_ITEMS", this.mMenuItems);
        this.mIntent.putExtra("androidx.browser.browseractions.APP_ID", android.app.PendingIntent.getActivity(this.mContext, 0, new android.content.Intent(), 0));
        if (this.mOnItemSelectedPendingIntent != null) {
            this.mIntent.putExtra("androidx.browser.browseractions.extra.SELECTED_ACTION_PENDING_INTENT", this.mOnItemSelectedPendingIntent);
        }
        return new androidx.browser.browseractions.BrowserActionsIntent(this.mIntent);
    }

Method android.content.Intent.putExtra() not found.

[TAINT] String 'androidx.browser.browseractions.browser_action_open' ==>>> Sink '['Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V', '0', 'IPC_SINK']' [[('Landroidx/browser/browseractions/BrowserActionsIntent$Builder;', '<init>', '(Landroid/content/Context; Landroid/net/Uri;)V'), ('Landroid/content/Intent;', '<init>', '(Ljava/lang/String;)V')]]

Use of a string value androidx.browser.browseractions.browser_action_open to construct an Intent

Method androidx.browser.browseractions.BrowserActionsIntent$Builder.<init>():


    public BrowserActionsIntent$Builder(android.content.Context p4, android.net.Uri p5)
    {
        this.mIntent = new android.content.Intent("androidx.browser.browseractions.browser_action_open");
        this.mMenuItems = 0;
        this.mOnItemSelectedPendingIntent = 0;
        this.mContext = p4;
        this.mUri = p5;
        this.mType = 0;
        this.mMenuItems = new java.util.ArrayList();
        return;
    }

Method android.content.Intent.<init>() not found.