无埋点数据采集问题
确认当前页面的方法有三种:
- 1.圈选时,查看圈选页面为当前页面
设置以下点击事件的控件会被采集点击事件。如果您自定义了控件的点击事件,不在下方列举之内,将无法采集点击事件,进而无法数据分析该控件点击事件。
onCheckedChanged(android/widget/CompoundButton)
onCheckedChanged(android/widget/RadioGroup)
onClick(android/content/DialogInterface)
onClick(android/view/View)
onItemClick(android/widget/AdapterView;android/view/View)
onItemSelected(android/widget/AdapterView;android/view/View)
onNewIntent(android/content/Intent)
onRatingChanged(android/widget/RatingBar)
onStopTrackingTouch(android/widget/SeekBar)
onFocusChange(android/view/View)
onMenuItemClick(android/view/MenuItem)
onOptionsItemSelected(android/view/MenuItem)
onGroupClick(android/widget/ExpandableListView;android/view/View)
onChildClick(android/widget/ExpandableListView;android/view/View)
如果您自定义了 Click 事件, 但又希望 SDK 采集,可以放置一个
onClickListener
作为代理。这种方案即使我们的 SDK 升级也会被兼容。注意,需设置 View 可点击:
//设置view Clickable, 如果不设置,则不能圈选该 View。
view.setClickable(true);
public void onCustomClick(View view){
// 您的业务
...
// 为了 GrowingIO 能够采集自定义点击事件,调用 android.view.OnClickListener
new View.OnClickListener() {
@Override
public void onClick(View view) {}
}.onClick(view);
}
例:
TabHost
的点击事件增加 onClickListener 后,可以采集到点击事件TabHost.OnTabChangeListener listener = new TabHost.OnTabChangeListener() {
public void onTabChanged(String tabId) {
// GrowingIO 点击事件采集适配 TabHost 添加代码
new View.OnClickListener() {
@Override
public void onClick(View view) {}
}.onClick(mTabHost.getCurrentTabView());
}
}
最后,如果您在布局文件中
view
上使用了 onClick
属性的点击事件,则不支持该点击事件采集。有以下多种方式,任选其一。
- 1.APP 唤起圈选,点击小红点,能够看到版本号;
- 2.使用 Mobile Debugger , 点击左侧截图区域的
i
图标,能够看到版本号; - 3.翻阅代码,app 目录层中的 build.gradle 文件中查找;
- 4.查看日志,每条 vst 事件中
av
字段值描述SDK版本号; - 5.抓包查看,网络请求中包含。
我们强烈不建议您自行定义设备ID有以下几个方面:
- 1.我们采集的设备 ID 为了能够唯一标识一台设备信息,如果您进行自定义,有可能用户卸载重新安装应用,设备 ID 会不一致,造成老用户被识别成新用户;
- 2.如果您未曾定义过设备ID,并且已经集成SDK并且发版过,则新旧设备 ID 不兼容,老用户被认为成新用户,导致新用户数量暴增;
在 Android 无埋点 SDK 集成步骤中,其中有一步需要在 manifest.xml 文件中配置
intent-filter
代码块,如果有多个 URLScheme
配置,请参照以下代码:<activity
android:name=".LauncherActivity"
android:launchMode="singleTop"
android:theme="@style/AppTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<!-- GrowingIO URLScheme -->
<intent-filter>
<data android:scheme="growing.xxxxxxxxxxxxxxxx" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
<!-- 测试多个 scheme 能够成功被唤醒 -->
<intent-filter>
<data
android:host="share"
android:scheme="will" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
最近更新 1yr ago