Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Closed
NicodeLee opened this issue Jan 21, 2021 · 5 comments
Closed

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

NicodeLee opened this issue Jan 21, 2021 · 5 comments

Comments

@NicodeLee
Copy link

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

@NicodeLee
Copy link
Author

导入报了个初始化的错,类型不对,1.4.4版
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)

@NicodeLee
Copy link
Author

上面报错看了源码的打包只保留这两个平台就好了。
abiFilters 'armeabi-v7a', 'arm64-v8a'

@lixiaoyu0123
Copy link
Contributor

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

对的, 如果需要全局使用的话,需要把创建的DataReporter对象保存为全局对象,一般是使用单例的形式。然后在各处需要上报的时候,直接调用push,把数据打进去。

@NicodeLee
Copy link
Author

还有个问题,一般挂时间久了全局对象可能被回收了。
发送数据前做了mDataReporter判断为空。
这时候如果为空,重新再初始化mDataReporter对象有问题吗?
不然会不会有数据上报不成功。

@lixiaoyu0123
Copy link
Contributor

纠正一点,全局对象不会被回收,回收的只是activity,全局对象不会被回收。除非整个进程被kill掉。
第二个问题,即使出现mDataReporter为空(但是这种情况基本不会出现),重新初始化mDataReporter也不会有任何问题,
因为初始化的时候会对上一次异常退出做恢复操作。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants