firebase / firebase-android-sdk

Firebase Android SDK
https://firebase.google.com
Apache License 2.0
2.29k stars 579 forks source link

In-app messaging popup(Android).java #378

Closed Dnyaneshwar1926 closed 5 years ago

Dnyaneshwar1926 commented 5 years ago

Step 1: Describe your environment

Step 2: Describe the problem:

Steps to reproduce:

Question 1:- In this popup the background color is not shown. It is always white (infact I changed the color on firebase console as per guidelines ). How can I change the background color?

Question 2:- In this popup is always triggering in splash screen. I want it to trigger in main activity. How to do it?

samtstern commented 5 years ago

@Dnyaneshwar1926 this sounds like it's an issue with the In-App Messaging SDK so I will transfer this over to that repo. Can you please also provide the code you're using (if any) to launch the pop up?

google-oss-bot commented 5 years ago

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.

Dnyaneshwar1926 commented 5 years ago

@samtstern There is no any code for popup. Popup will trigger automatically when activity gets start just we need implement library.

samtstern commented 5 years ago

@Dnyaneshwar1926 ok since there is no code could you please provide some more information:

Dnyaneshwar1926 commented 5 years ago

Inapp

Setting in In-app messaging

Dnyaneshwar1926 commented 5 years ago

Here I'm not getting green background only white screen is showing.

Dnyaneshwar1926 commented 5 years ago

Now popup also got stopped😥

samtstern commented 5 years ago

cc @JasonAHeron @MeghaB

MeghaB commented 5 years ago

Hi @Dnyaneshwar1926 - what triggering event (see the Scheduling section) are you providing? (There's an app foreground event that's the 'default' as it requires no additional integration work, but that will display at most 1/day, and only when the app starts or comes back into the foreground.

Re: The background color not showing (other than white) in-app - can you also let us know which version of the inappmessaging-display sdk you're using?

Cheers!

Dnyaneshwar1926 commented 5 years ago

Hello @MeghaB "inappmessaging-display:17.1.1" this is the sdk version i'm using. Thank you.

littleariel commented 5 years ago

@MeghaB @samtstern confirmed the issue on my side as well. The issue is that the background color of the "Modal" in-app message defined in the In-App Messaging dashboard is not reflected in the app and shows up as either white or black, seemingly randomly. This happens with the configuration below:

           // firebase
            firebase_core: "16.0.8",
            firebase_perf: "16.2.5",
            firebase_messaging: "17.6.0",
            firebase_crashlytics: "2.9.9",
            firebase_plugins: "1.1.5",
            firebase_inappmessaging: "17.1.1",
            firebase_config: "16.5.0"

Note that only the background color of the modal seems to have that issue - all other colors defined in the dashboard are reflected properly (text colors, button colors, etc.).

Downgrading the inappmessaging library from 17.1.1 to 17.0.4 fixes the issue and shows the right background color again.

Dnyaneshwar1926 commented 5 years ago

@littleariel Thank you. Working fine.

Dnyaneshwar1926 commented 5 years ago

@samtstern , @MeghaB, @littleariel , @google-oss-bot In this popup is always triggering in splash screen. I want it to trigger in main activity. How to do it? I don't want it to trigger in splash screen.

JasonAHeron commented 5 years ago

@littleariel: Thanks for the detailed report. I have confirmed this bug and this is now fixed for our next release. @Dnyaneshwar1926: Regarding triggering, from the console you can specify if the In-App Message should trigger based on the app opening or on a specific event. To make the message trigger at a specific time you can follow the example here. That example is how to trigger a message on a button click but it would be the same if you put that event specific code anywhere in your app.

I've also attached a screenshot of the trigger event configuration in the console

trigger
Dnyaneshwar1926 commented 5 years ago

I've tried this but also it is triggering in splash screen.

image

JasonAHeron commented 5 years ago

The message will trigger for any of those events so try removing "on_foreground" by clicking the white "X"

On Mon, May 6, 2019 at 10:03 PM Dnyaneshwar1926 notifications@github.com wrote:

I've tried this but also it is triggering in splash screen.

[image: image] https://user-images.githubusercontent.com/49900019/57272948-86879480-70b3-11e9-95c4-0debda58a664.png

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/firebase/firebase-android-sdk/issues/378#issuecomment-489909361, or mute the thread https://github.com/notifications/unsubscribe-auth/AA7WQCJL2YAC2P4YUUVWD4TPUEESDANCNFSM4HIRBW5A .

-- via mobile

Dnyaneshwar1926 commented 5 years ago

@JasonAHeron I have tried this also but its not working. It;s triggering in splash screen only.

JasonAHeron commented 5 years ago

@Dnyaneshwar1926: Another idea, set a contextual trigger such as "game_loaded" or something like that for when you actually want the message to be displayed. Then remove all other triggers and try to just trigger on that event. Let me know if that works for you.

Dnyaneshwar1926 commented 5 years ago

image

I tried it's not working.

ahmaddeeb commented 5 years ago

@Dnyaneshwar1926 Did you find any solution about: Question 2: In this popup is always triggering in splash screen. I want it to trigger in main activity. How to do it?

because i face the same problem...

Dnyaneshwar1926 commented 5 years ago

@ahmaddeeb Not yet. Searching for solution.

hasbisevinc commented 5 years ago

I face the same problem too

varunajaygupta commented 5 years ago

I am also facing a similar issue. As when there is a transition from Splash Activity to Another Activity. Pop up disappears and then reappears which is looking bad. So is there a way to show it on a particular screen.

Dnyaneshwar1926 commented 5 years ago

@varunajaygupta @hasbisevinc. Create log events to trigger where to display popup.

Use below code in Activity were u wanna trigger popup. To event work it will take some time. open/close ur application for 15 - 20 time. Make sure ur "MainActivity_open" should be show in "Events".

private void inAppMessageFire() { mFirebaseAnalytics = FirebaseAnalytics.getInstance(this); Bundle bundle = new Bundle(); bundle.putString(FirebaseAnalytics.Param.ITEM_ID, "ID"); mFirebaseAnalytics.logEvent("MainActivity_open", bundle); }

image

image

kartikj07 commented 5 years ago

Hi @Dnyaneshwar1926 @JasonAHeron I am currently facing the same issue and I have tried your method but this does not seem to work for me on all devices, The message is being displayed on Splash as well as Main Activity and message is not being stable on Main Activity as well. The message is being displayed and removed as soon as it is displayed. I have made the event trigger on MainActivity open but it is ignoring the Main Activity open call and opening on Splash Activity as well.

Dnyaneshwar1926 commented 5 years ago

@kartikj07 Please open/close the application for 15 - 20 times. Then only the event trigger starts working properly.