Code Monkey home page Code Monkey logo

growingio-sdk-android-autotracker's Introduction

GrowingIO Autotracker

GrowingIO
CI codecov GitHub Platform Android Commitizen friendly

GrowingIO简介

GrowingIO(北京易数科技有限公司)是基于用户行为数据的增长平台,国内领先的数据运营解决方案供应商。为产品、运营、市场、数据团队及管理者等,提供客户数据平台、获客分析、产品分析、智能运营等产品和咨询服务,帮助企业在数据化升级的路上,提升数据驱动能力,实现更好的增长。
GrowingIO 专注于零售、电商、金融、酒旅航司、教育、内容社区、B2B等行业,成立以来,服务上千家企业级客户,获得迪奥、安踏、喜茶、招商仁和人寿、上汽集团、东航、春航、首旅如家、陌陌、滴滴、爱奇艺、新东方等客户的青睐。

SDK 简介

GrowingIO Autotracker 具备自动采集基本的用户行为事件,比如访问和行为数据等。目前支持代码埋点、无埋点、可视化圈选、数据监测等功能。

集成文档

SDK 3.0 集成文档

License

Copyright (C) 2020 Beijing Yishu Technology Co., Ltd.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

growingio-sdk-android-autotracker's People

Contributors

caicaino avatar cpacm avatar gflkdns avatar gio-yanruixue avatar littersun avatar styluo avatar tianhui12 avatar yolomao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

growingio-sdk-android-autotracker's Issues

android.database.sqlite.SQLiteFullException database or disk is full (code 13)

描述你的问题以及如何重现

#3187452 android.database.sqlite.SQLiteFullException
database or disk is full (code 13)

com.growingio.android.sdk.track.middleware.EventsContentProvider.delete(EventsContentProvider.java:112)

请提供您看到的异常或错误

# com.growingio.android.sdk.track.middleware.EventSender(150)

android.database.sqlite.SQLiteFullException

database or disk is full (Sqlite code 13 SQLITE_FULL), (OS error - 28:No space left on device)

解析原始
1
android.database.sqlite.SQLiteConnection.nativeExecuteForChangedRowCount(Native Method)
2
android.database.sqlite.SQLiteConnection.executeForChangedRowCount(SQLiteConnection.java:793)
3
android.database.sqlite.SQLiteSession.executeForChangedRowCount(SQLiteSession.java:769)
4
android.database.sqlite.SQLiteStatement.executeUpdateDelete(SQLiteStatement.java:64)
5
android.database.sqlite.SQLiteDatabase.delete(SQLiteDatabase.java:1883)
6
com.growingio.android.sdk.track.middleware.EventsContentProvider.delete(EventsContentProvider.java:112)
7
android.content.ContentProvider$Transport.delete(ContentProvider.java:366)
8
android.content.ContentResolver.delete(ContentResolver.java:1726)
9
com.growingio.android.sdk.track.middleware.EventsSQLite.removeEvents(EventsSQLite.java:176)
10
com.growingio.android.sdk.track.middleware.EventSender.sendEvents(EventSender.java:215)
11
com.growingio.android.sdk.track.middleware.EventSender$SendHandler.handleMessage(EventSender.java:270)
12
android.os.Handler.dispatchMessage(Handler.java:112)
13
android.os.Looper.loop(Looper.java:216)
14
android.os.HandlerThread.run(HandlerThread.java:65)

请提供您发现此错误的环境

No response

其他信息

发生次数

10

影响设备数

2

java.lang.NullPointerException crash on com.growingio.android.sdk.track.ipc.MultiProcessDataSharer

描述你的问题以及如何重现

java.lang.NullPointerException

Attempt to invoke virtual method 'long java.lang.Long.longValue()' on a null object reference

请提供您看到的异常或错误

# TrackMainThread(15417)

java.lang.NullPointerException

Attempt to invoke virtual method 'long java.lang.Long.longValue()' on a null object reference

解析原始
1
com.growingio.android.sdk.track.ipc.MultiProcessDataSharer$7.run(MultiProcessDataSharer.java:344)
2
com.growingio.android.sdk.track.ipc.MultiProcessDataSharer.lockedRun(MultiProcessDataSharer.java:110)
3
com.growingio.android.sdk.track.ipc.MultiProcessDataSharer.getAndAddLong(MultiProcessDataSharer.java:341)
4
com.growingio.android.sdk.track.ipc.MultiProcessDataSharer.getAndIncrementLong(MultiProcessDataSharer.java:330)
5
com.growingio.android.sdk.track.data.PersistentDataProvider.getAndIncrement(PersistentDataProvider.java:81)
6
com.growingio.android.sdk.track.events.base.BaseEvent$BaseBuilder.readPropertyInTrackThread(BaseEvent.java:316)
7
com.growingio.android.sdk.track.events.AppClosedEvent$Builder.readPropertyInTrackThread(AppClosedEvent.java:49)
8
com.growingio.android.sdk.track.TrackMainThread.onGenerateGEvent(TrackMainThread.java:151)
9
com.growingio.android.sdk.track.TrackMainThread$1.run(TrackMainThread.java:118)
10
com.growingio.android.sdk.track.TrackMainThread.postActionToTrackMain(TrackMainThread.java:142)
11
com.growingio.android.sdk.track.TrackMainThread.postEventToTrackMain(TrackMainThread.java:102)
12
com.growingio.android.sdk.track.events.TrackEventGenerator.generateAppClosedEvent(TrackEventGenerator.java:63)
13
com.growingio.android.sdk.track.providers.SessionProvider$2.run(SessionProvider.java:148)
14
android.os.Handler.handleCallback(Handler.java:888)
15
android.os.Handler.dispatchMessage(Handler.java:100)
16
android.os.Looper.loop(Looper.java:213)
17
android.os.HandlerThread.run(HandlerThread.java:67)

请提供您发现此错误的环境

No response

其他信息

No response

插桩后,导致按钮点击失效的问题

描述你的问题以及如何重现

插桩后导致原来有效的点击事件失效

示例:

public class B implements View.OnClickListener{
@OverRide
public void onClick(View v) {
//点击逻辑
}
}

public class A extends B implements View.OnClickListener {

}

由于A没自己实现onClick方法,导致,插桩自动创建onClick方法,但创建后的方法没有调用super(),因此,实际在B中的点击逻辑会失效

接口类型是否不需要进行方法生成?

请提供您看到的异常或错误

No response

请提供您发现此错误的环境

No response

其他信息

No response

元素曝光功能一个疑问

看到官方文档说了,元素曝光功能采集例如 listview 复用控件时,会把复用的控件可能采集重复,为什么不考虑View+当前所在列表位置作为判定曝光限定条件呢?不是能解决这种问题吗?

思路:

  1. 设置曝光元素时,迭代判断该View的上级是否是列表控件,如果是,得到当前view所在列表index作为限定条件之一,如果不是,index = -1。
  2. 判定满足曝光条件时,判定index是否为当时设置时的位置,-1表示该控件非复用列表控件。

是有什么额外的考虑?

gradle:4.2.1 版本编译警告

描述你的问题以及如何重现

gradle设置到 4.2.1 版本,开启R8编译后,运行build。

这个警告不影响项目运行,也没发现影响SDK功能

我尝试关闭所有插件,仍然有这个异常输出,但会少很多

请提供您看到的异常或错误

Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.
Expected stack map table for method with non-linear control flow. In later version of R8, the method may be assumed not reachable.

请提供您发现此错误的环境

Android Studio Arctic Fox | 2020.3.1 Patch 2
Build #AI-203.7717.56.2031.7678000, built on August 27, 2021
Runtime version: 11.0.10+0-b96-7249189 amd64
VM: OpenJDK 64-Bit Server VM by Oracle Corporation
Windows 10 10.0
GC: G1 Young Generation, G1 Old Generation
Memory: 1280M
Cores: 8
Registry: external.system.auto.import.disabled=true, debugger.watches.in.variables=false
Non-Bundled Plugins: Gradle View, ASM Bytecode Viewer Support Kotlin, org.ollide.java2smali, com.intellij.marketplace, com.thoughtworks.gauge, org.jetbrains.kotlin, com.developerphil.adbidea, SequenceDiagram, cn.yiiguxing.plugin.translate, org.intellij.plugins.markdown

gio插件版本:classpath 'com.growingio.android:vds-gradle-plugin:autotrack-2.9.0'

其他信息

image

Unfortunately, an error has occurred while processing com/loc/bj. Please copy your build logs and the jar containing this class and visit https://www.growingio.com, thanks!

描述你的问题以及如何重现

Unfortunately, an error has occurred while processing com/loc/bj. Please copy your build logs and the jar containing this class and visit https://www.growingio.com, thanks!

请提供您看到的异常或错误

No response

请提供您发现此错误的环境

No response

其他信息

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.