首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ACRA以编程方式更改formUri

ACRA以编程方式更改formUri
EN

Stack Overflow用户
提问于 2016-04-28 08:33:56
回答 3查看 372关注 0票数 3

既然ACRA.init只能调用一次,而ACRA.getConfig()ACRA.getConfig().setFormUri(uri)都是deprecated.Is,那么一旦ACRA已经初始化,有什么正确的方法可以编程地更改formUri呢?

在我们的开发应用程序中,我们是针对几个环境进行测试的,我们有不同的formUris来存储formUri错误,所以每次我们切换到一个新的环境时,我们都必须重新配置ACRA,以便将所有的错误发送到那个formUri。

现在我们正在使用ACRA.getConfig().setFormUri(uri).

但是我们担心这在不远的将来是不可能的,那么还有其他的选择吗?

EN

回答 3

Stack Overflow用户

发布于 2016-04-28 21:59:44

没有允许ACRA多次初始化的计划。它会在组件中引入不必要的复杂性,您需要尽可能地做到坚如磐石。

但是您仍然能够以编程方式设置formUri。你只能设置一次。

显然,运行时有一些事件知道/确定您所处的环境。因此,您可以在此设置一个SharedPreference,概述目标formUri。重新启动应用程序,让formUri从SharedPreference中获得。

注:这是一个非常不寻常的用例。为什么您为一个应用程序的不同环境有一个单独的formUri?为什么不基于报表中的某些属性(如环境)进行一个错误回复和筛选报告?

IMHO为一个应用程序的开发版本和发布版本提供了独立的错误报告服务器,这是个负面消息,因为这意味着在开发和发布之间还有一件事情是不需要更改的。较少的运动部件,较少的复杂性==更强的健壮性。

票数 1
EN

Stack Overflow用户

发布于 2016-04-28 21:57:05

但我们担心这在不远的将来是不可能的。

你说得对,4.9.0删除setFormUri

那还有别的选择吗?

目前没有。您可以观看讨论这里

票数 0
EN

Stack Overflow用户

发布于 2018-07-03 00:54:33

5.2.0版本的ACRA将允许重新初始化,所以正确的方法是改变配置重新初始化.

具体来说,ACRA.init()会成功,但是在第一次出现后,它会对所有的用户发出严厉的警告,但是它会丢弃旧的配置,并从新的配置中获取设置。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36909342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档