Git Product home page Git Product logo

datareporter's People

Contributors

lixiaoyu0123 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  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

datareporter's Issues

upload数据重复

当本地多条数据上传失败后本地数据会重复
这个方法是转换成STring
private String getDataToString(byte[][] data) {
ByteArrayOutputStream out = new ByteArrayOutputStream();
try {
for (int i = 0; i < data.length; i++) {
if (data[i] != null) {
out.write(data[i]);
}
}
out.close();
} catch (Exception e) {

            }

多条数据上传失败后,数据重复
数据监听_DataReporter获取地址: /data/user/0/com.iflytek.apm/files/tombstones/tombstone_00001662382446920000_1.0__com.iflytek.apm.java.xcrash/data/user/0/com.iflytek.apm/files/tombstones/tombstone_00001662382449409000_1.0__com.iflytek.apm.java.xcrash/data/user/0/com.iflytek.apm/files/tombstones/tombstone_00001662382452176000_1.0__com.iflytek.apm.java.xcrash/data/user/0/com.iflytek.apm/files/tombstones/Martix_exception1662382457344.txt/data/user/0/com.iflytek.apm/files/tombstones/Martix_exception1662382460344.txt

正常数据为:/data/user/0/com.iflytek.apm/files/tombstones/Martix_exception1662383143151.txt

java.lang.UnsatisfiedLinkError

No implementation found for long com.iget.datareporter.DataReporter.makeReporter(java.lang.String, java.lang.String, java.lang.String, com.iget.datareporter.IReport) (tried Java_com_iget_datareporter_DataReporter_makeReporter and Java_com_iget_datareporter_DataReporter_makeReporter__Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2Lcom_iget_datareporter_IReport_2)

gradle:
minSdkVersion 21
targetSdkVersion 30
versionCode 23
versionName "1.1.6"
ndk {
abiFilters 'armeabi-v7a', 'arm64-v8a'
}

packagingOptions {
    pickFirst 'lib/arm64-v8a/libc++_shared.so'
    pickFirst 'lib/armeabi-v7a/libc++_shared.so'
}

使用的版本: api 'com.luojilab.component:datareporter:1.4.4'

1.3.3和1.3.4的用户麻烦尽快升级1.3.5

1.3.3 和 1.3.4版本的用户麻烦尽快升级1.3.5
1.3.3和 1.3.4 为了修复 reweaken不及时问题,有概率性造成数据上报顺序不正确 和 上报数据不及时问题。 1.3.5已经修复该问题。
麻烦尽快升级1.3.5
1.3.5接口进行了重新封装,功能不变,只是把native指针封装起来,不再对外暴漏,请知悉。

解码时造成的crash

Binder:21540_1(21589)

SIGSEGV(SEGV_MAPERR)
#00 pc 0005f48c /apex/com.android.runtime/lib/bionic/libc.so (__memcpy_base_a55+180) [armeabi-v7a]
#1 pc 000a81d7 /apex/com.android.runtime/lib/bionic/libc.so (fread_unlocked+102) [armeabi-v7a]
#2 pc 000a813f /apex/com.android.runtime/lib/bionic/libc.so (fread+38) [armeabi-v7a]
#3 pc 0002b3fc libdata-reporter.so DecodeData (/Users/lzt/Downloads/DataReporter-master/src/core/base/MiniPBCoder.cpp:193) [armeabi-v7a]
#4 pc 0002ae9c libdata-reporter.so DecodeItem (/Users/lzt/Downloads/DataReporter-master/src/core/base/MiniPBCoder.cpp:31) [armeabi-v7a]
#5 pc 0003cc5c libdata-reporter.so ReadData (/Users/lzt/Downloads/DataReporter-master/src/core/reporter/FileInputStream.cpp:68) [armeabi-v7a]
#6 pc 00030c2c libdata-reporter.so ReadFromFile (/Users/lzt/Downloads/DataReporter-master/src/core/reporter/DataProvider.cpp:114) [armeabi-v7a]
#7 pc 0002f398 libdata-reporter.so ReadData (/Users/lzt/Downloads/DataReporter-master/src/core/reporter/DataProvider.cpp:58) [armeabi-v7a]
#8 pc 0003f238 libdata-reporter.so Report (/Users/lzt/Downloads/DataReporter-master/src/core/reporter/Reporter.cpp:203) [armeabi-v7a]
#9 pc 0004a750 libdata-reporter.so __call<std::__ndk1::__bind<void (future::Reporter::*)(), future::Reporter *> &> (/Users/lzt/android-ndk-r16b/sources/cxx-stl/llvm-libc++/include/functional:2227 [Inline: __mu<future::Reporter , std::__ndk1::tuple<> >]) [armeabi-v7a]
#10 pc 0004a4a8 libdata-reporter.so operator() (/Users/lzt/android-ndk-r16b/sources/cxx-stl/llvm-libc++/include/functional:1562) [armeabi-v7a]
#11 pc 0005740c libdata-reporter.so operator() (/Users/lzt/android-ndk-r16b/sources/cxx-stl/llvm-libc++/include/functional:1924) [armeabi-v7a]
#12 pc 00058194 libdata-reporter.so operator() (/Users/lzt/Downloads/DataReporter-master/src/core/reporter/Reporter.cpp:424) [armeabi-v7a]
#13 pc 00058138 libdata-reporter.so __call<(lambda at /Users/lzt/Downloads/DataReporter-master/src/core/reporter/Reporter.cpp:422:26) &> (/Users/lzt/android-ndk-r16b/sources/cxx-stl/llvm-libc++/include/__functional_base:349 [Inline: forward<(lambda at /Users/lzt/Downloads/DataReporter-master/src/core/reporter/Reporter.cpp:422:26) &>]) [armeabi-v7a]
#14 pc 00057eec libdata-reporter.so operator() (/Users/lzt/android-ndk-r16b/sources/cxx-stl/llvm-libc++/include/functional:1562) [armeabi-v7a]
#15 pc 0005740c libdata-reporter.so operator() (/Users/lzt/android-ndk-r16b/sources/cxx-stl/llvm-libc++/include/functional:1924) [armeabi-v7a]
#16 pc 000624f4 libdata-reporter.so run (/Users/lzt/Downloads/DataReporter-master/src/core/thread/HandlerThread.cpp:89) [armeabi-v7a]
#17 pc 00064ee8 libdata-reporter.so __call<std::__ndk1::__bind<void (WTF::HandlerThread::
)(), WTF::HandlerThread *> &> (/Users/lzt/android-ndk-r16b/sources/cxx-stl/llvm-libc++/include/functional:2227 [Inline: __mu<WTF::HandlerThread , std::__ndk1::tuple<> >]) [armeabi-v7a]
#18 pc 00064c60 libdata-reporter.so operator() (/Users/lzt/android-ndk-r16b/sources/cxx-stl/llvm-libc++/include/functional:1562) [armeabi-v7a]
#19 pc 0005740c libdata-reporter.so operator() (/Users/lzt/android-ndk-r16b/sources/cxx-stl/llvm-libc++/include/functional:1924) [armeabi-v7a]
#20 pc 00065060 libdata-reporter.so __thread_proxy<std::__ndk1::tuple<std::__ndk1::unique_ptr<std::__ndk1::__thread_struct, std::__ndk1::default_deletestd::__ndk1::__thread_struct >, std::__ndk1::function<void ()> > > (/Users/lzt/android-ndk-r16b/sources/cxx-stl/llvm-libc++/include/thread:352 [Inline: __thread_execute<std::__ndk1::unique_ptr<std::__ndk1::__thread_struct, std::__ndk1::default_deletestd::__ndk1::__thread_struct >, std::__ndk1::function<void ()>>]) [armeabi-v7a]
#21 pc 000ac4dd /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void
)+20) [armeabi-v7a]
#22 pc 00062989 /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+30) [armeabi-v7a]

armeabi libdata-reporter.so

因项目仅支持armeabi下so,请问armeabi-v7a 下so可以放入armeabi下吗? 或者提供下armeabi so
谢谢

UnsatisfiedLinkError

使用Kotlin代码实例化mDataReporter的时候报错。

使用这行代码实例化:
mDataReporter = DataReporter.makeDataReporter(uuid, applicationContext.filesDir.path, key, reportImp)

报错信息如下:
java.lang.UnsatisfiedLinkError: No implementation found for long com.iget.datareporter.DataReporter.makeReporter(java.lang.String, java.lang.String, java.lang.String, com.iget.datareporter.IReport) (tried Java_com_iget_datareporter_DataReporter_makeReporter and Java_com_iget_datareporter_DataReporter_makeReporter__Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2Lcom_iget_datareporter_IReport_2) at com.iget.datareporter.DataReporter.makeReporter(Native Method) at com.iget.datareporter.DataReporter.<init>(DataReporter.java:82) at com.iget.datareporter.DataReporter.makeDataReporter(DataReporter.java:37)

gradle是这样引入的:
api 'com.luojilab.component:datareporter:1.3.8'

未做代码混淆

会有APP长时间使用时上报线程被杀死的情形

从用户反馈的文件分析看,初始的一段时间上报都是正常的,APP连续使用超过二十个小时后,只有push记录,没有upload记录,怀疑是线程挂了。
目前版本1.3.9,尚未升级到最新版本。
这是一个已知问题吗,当前最新版本里有修复这个问题吗?

接入后出现crash: SIGBUS(BUS_ADRERR)

版本:1.3.9
image

image

麻烦看下

额外说明下,我们项目里配置只会把armeabi-v7a的so打进apk,但是我看出现这个crash的设备CPU架构基本都是arm64-v8a。之前版本接的是1.3.8,并没有看到有报这个问题,新版本换到1.3.9发布后,突然报上来100多次crash。

数据不上报问题

我push了很多条数据,却一直不会走到upload回调,不知道是什么情况?和我这边是多进程APP有关吗,reporter的实例化是放在Application的onCreate()中做的

上报间隔传参问题

image
demo里写的10秒间隔传的是10,我怎么觉得是传10*1000呢,是我哪个地方没注意到吗

爆内存的风险

发送速度跟不上产生数据的速度,这个时候内存一直在涨,长时间下来有可能爆内存。

SIGSEGV(SEGV_MAPERR)

版本:1.3.9
image
麻烦看下
额外说明下,我们项目里配置只会把armeabi-v7a的so打进apk,但是我看出现这个crash的设备CPU架构基本都是arm64-v8a。之前版本接的是1.3.8,并没有看到有报这个问题,新版本换到1.3.9发布后,突然报上来100多次crash。

【Android】关于使用\文档问题

关于使用有几点疑惑:
看了demo的代码,还是有点疑惑,
一般以为使用是这样的,启动统一初始化DataReporter(相关设置)、在各处需要上传的时候添加到上报队列、上报(处理回调)
疑问在第二点添加上报数据哪里,初始化的时候把DataReporter设置为全局对象,添加直接拿到对象添加吗?

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.