> For the complete documentation index, see [llms.txt](https://growingio.gitbook.io/mp/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://growingio.gitbook.io/mp/faq/popup.md).

# 弹窗 FAQ

## **弹窗流程**

![](/files/-M3pqo_dfkf_yaBAKK5Q)

### **1. 想修改已经在运行的弹窗怎么办？**

在弹窗详情页规则右上角可以点击修改，为了降低对线上弹窗影响，需要先将线上的弹窗下线，再进去编辑页，修改条件并测试没有问题后，可以再次上线弹窗，再次上线后之前收到过的用户不会再收到。

### 消息中止后再上线，之前收到过弹窗的用户还会再收到吗？

不会。每一个弹窗有唯一ID，会在SDK做去重。不管下线几次再上线，都是记录之前收到人的信息的。

### 2.设置了埋点事件弹窗或者用户变量弹窗，但是没有弹窗？

如果是对已经弹过的弹窗的修改成埋点事件的话，建议创建新的弹窗试下。\
确认用户是否在分群内。可从用户细查确认。\
确认用户满足弹窗条件，可以从mobile debugger 看下埋点事件和 用户变量是否满足，是否与后台设置的一致，大小写没有错误。

### **3. 同一用户有多个弹窗，都满足时，优先级处理？**

App 弹窗可以设置优先级，相同优先级按照更新时间排序弹窗。小程序和H5弹窗按照更新时间顺序弹窗。在同一个触发条件，且用户同时属于这两个弹窗的目标分群，那么在同一个时间只会收到一个弹窗，即最近**更新**过的弹窗消息。下次打开会看到第二个，是按更新时间优先级来展示。web弹窗里各个位置的弹窗支持同时弹。我们会持续优化这个逻辑的自定义配置功能，欢迎提出你的需求。

### **4. 为什么活动还没上线，但是已经有了点击/展示数据？**

弹窗上线前，自己进行测试时的展示和点击数据也会计算进来，所以在弹窗数据页看到的是全部的数据。

### 5. 弹窗功能是否稳定，上线后是否影响性能，是否页面加载时间过长?

GIO弹窗功能是后台加载的，不会影响用户现有的页面加载速度。已经有不少客户在线上环境验证过，弹窗稳定性应该是可以保证的。

### **6. 上线后收不到弹窗是为什么？**

1. 先用设备扫码测试，看是否能正常弹出。（扫码测试用的设备，必须安装了相应App，且App内成功安装了弹窗SDK）
2. 如果测试设备也无法弹出，请联系GIO技术支持。
3. 弹窗上线后，会有最多3分钟的延时，如果是第一次设置后的时间可能会久一些，如果1个小时后仍然没有收到，请联系GIO技术支持。
4. 如果测试能正常弹出，上线后却收不到，可能为以下原因，请一一排查：

* 请检查**是否关闭了埋点功能**，因为**弹窗SDK依赖埋点**功能。
* 你使用的设备在所选分群中，可以再复制一个同样的弹窗，修改分群为**全部访问用户**，测试能否收到。
* 已经点击过弹窗，所以不会再出现。
* 触发条件没有匹配，可以先选择系统触发条件，打开app的时候弹出。然后退出APP后台，重新启动。
* 重新冷启动APP，查看日志是否有类似下面内容，如果**popupWindows/PopupWindowEvent** 字段不为**null**表示弹窗正确获取到了，如果为**null**表示该设备不在群组中。

iOS

```
GTouch.GTouchManager: Load touch event config success, eventConfig is <GTouchEventConfig: self.splashs=(null), self.popupWindows=(
    "<GrowingPopupWindowEvent: self.id=452, self.state=activated, self.content=https://statics.growingio.com/pages/20190410/1114/1554862553584/1554862553584-popupWindow.html?url_scheme=growing.4458a0c50d7fd57c, self.priority=1, self.updateAt=1554862553666, self.rule=<GrowingRule: self.action=appOpen, self.type=system, self.startAt=1176171353583, self.endAt=1933553753583, self.limit=5>>"
), self.idMappings=<GrowingIdMappings: self.bu=2787622, self.bcs=248881>>
```

Android

```
D/GTouch.GTouchManager: Loading touch event config success result is TouchEventConfig{idMappings=IdMappings{bu=976846, bcs=137554}, splashs=[], popupWindows=[PopupWindowEvent{id=297, state='null', content='https://statics.growingio.com/pages/20190328/3/1553767879538/1553767879538-popupWindow.html?url_scheme=growing.638b52710867187c', priority=1, updateAt=1553767879559, rule=Rule{action='appOpen', type='system', startAt=1175076679537, endAt=1932459079537, limit=1}}]}
```

或者重新冷启动APP，通过抓包软件获取类似[https://messages.growingio.com/v3/xxxxxx/notifications?url\_scheme=xxxxx](https://messages.growingio.com/v1/xxxxxx/notifications?url_scheme=xxxxx) 的url的响应包，其中响应 json 中 popupWindows 字段不为 null 表示弹窗正确获取到了，如果为null表示该设备不在群组中。

### **7. 扫码测试时唤醒了app，但是没有弹出弹窗?**

如果 SDK 没有问题，刷新下二维码页面，然后试试杀死 app 后台进程，再次扫码唤醒。

### 8. 为什么目标分群人数会和实际展示的人数略有差异？

* 用户网络环境差，导致加载弹窗资源超时或者失败。
* 在极少数机型上面WebView会初始化失败，所以弹窗无法弹出。
* 分群是每天早上更新，有可能用户上午活跃，弹窗是下午上线，但用户之后并没有打开App

### 9. 是否Scheme必须配置正确，才能弹出弹窗?

是的，Scheme是用于标示产品，没有产品无法过滤弹窗

### 10. Scheme要在哪里获取 ？

在**项目管理 -** 「应用管理」

在应用列表中可以看到应用的scheme

### 11. 选择了某个分群作为弹窗的目标人群，但该分群中只有部分人收到了弹窗，为什么？

1. 这些用户的APP需要升级到了有弹窗SDK的App版本。
2. 因为网络环境或者手机版本兼容性等问题，可能有极少数用户是弹不出来的。

### 12. 我的App有闪屏广告，如何能在闪屏结束后再弹出弹窗？

appOpen是App从后台到前台，第一个activity onStarted 的时候触发，如果把握不准appOpen的时机，建议自定义事件（埋点），可以更精准的控制弹窗弹出的时机。

如下图，选择触发时机为您的打点时间，可以更精准的控制。

![](/files/-LqylChRmZgRQ91BOTgN)

### **13. Android SDK 支持的最低版本是 Android 4.2，那低于这个版本的话会是什么表现？**

由于 GTouch SDK 依赖埋点 SDK ，在低于 Android 4.2 的系统中，埋点 SDK 会自动关闭，这样我们的弹窗功能也会自动关闭，不会影响任何业务。

### 14. 弹窗设置了只弹出一次，为什么同一个设备或者同一个用户仍然会多次收到弹窗？

1. 用户删除APP后重新下载了APP。
2. 用户同一个设备上切换了不同账号。&#x20;
3. 用户在多台设备上登录了同一个账号。
4. 手机清除缓存&#x20;
5. 有极少数用户由于手机硬盘或者系统低概率出现问题，导致弹窗数据无法正常写入到本地，导致下次弹窗仍然会弹出(基本可以忽略)。

### 15. 预览弹窗连续弹两次或多次？

&#x20; 为了快速验证，预览弹窗只检验埋点事件是否满足，您有可能在同一时间触发了两次对应的埋点事件，在预览模式下我们的sdk是触发一次对应的事件就弹一次对应的预览弹窗。

### 16. 弹窗的展示数比实际分群人数少？

* 部分用户更新了app的话，app当天采集的用户属性会被清空，导致这部分用户未能满足弹窗条件。
* GIO的分群人数会在每日凌晨重新计算，3-5点计算完毕。这期间基于分群发出去的弹窗还是旧分群范围，部分新范围内的用户无法命中，导致当天白天查看弹窗数据时，分群人数与弹窗展示数对不上。

### 17. 用户没有上报访问事件却上报弹窗展示事件？

* 访问事件由GIO埋点SDK上报，弹窗展示事件由GIO触达SDK上报，这是两个SDK。
* 埋点SDK数据上报策略默认为30秒一次，安卓用户打开APP后立马清后台的话，埋点的数据是不会上报上来的，但弹窗SDK的数据是实时上报的。所以会出现某个用户在某时间段有弹窗展示数据，但访问次数为0的情况。
* iOS埋点SDK一般不会有这种情况，有强制数据上报策略，避免清App后台导致数据不上报的情况。

### 18. 扫码预览不弹窗？

* 建议刷新下网页，重新扫码。
* 还不行的话建议把弹窗设置成AppOpen事件触发，再扫码预览。先确认app能弹窗。
* 还是不行的话请立即联系我们。
* 小米手机扫码链接使用http唤醒不了app，浏览器有限制，需要用https。
* 扫码后出现null，刷新网页重新扫码

### 19. 弹窗自定义协议跳转获取不到openUrl？

* 换张不同图片的测试，图片加载出来会有缓存
