ACRA如何获取应用程序的安装ID?

时间:2014-06-18 08:29:58

标签: android acra

ACRA user manual提及安装ID(搜索术语INSTALLATION_ID)作为每个应用程序安装的唯一标识符

  

您可以在每个报告行的第一个字段中看到的怪物   代表INSTALLATION_ID。它可以被视为等同物   你的用户您的应用的每次安装都会生成   唯一标识符,通过应用更新保留。   生成这些怪物的每个怪物都有不同的变化   安装ID,允许您直观地查找相同的报告   用户在列表中。

我试图找到有关应用的更多信息。安装ID,但没有任何关于它的信息,除了一个页面,谷歌的人提到像安装ID,但用非常简短的话。

那么ACRA如何获取这个唯一ID?术语INSTALLATION_ID是否是自己的术语,并且在Android中没有基础,也许?

1 个答案:

答案 0 :(得分:3)

我找到了解决方案,希望其他人也能使用它。

如果您通过ACRA.getErrorReporter().handleSilentException(new Throwable(message));报告自定义ACRA消息,那么您会在像Acralyzer这样的云工具中看到有一个字段installation id,它基本上是每个用户的唯一ID。这样,您可以监视特定用户并解决他遇到的错误。

从Github下载Acra源代码并导航到课程org/acra/util/Installation.java。这是生成唯一安装ID的类。

如果您导航到第67行,您将看到安装ID只是随机UUID编号(注意:如果您卸载并安装该应用程序,将重新生成此ID)。

 final String id = UUID.randomUUID().toString();

因此,通过静态变量sID检索实际ID,并将其保存到应用程序私人文件目录中的文件ACRA-INSTALLATION

那么如何获得用户的安装ID并将其与Acralyzer报告进行比较?只需创建一个读取此ACRA-INSTALLATION文件的逻辑,并将其内容复制到外部存储器。之后,用户可以将该文件通过电子邮件发送给您,或者您甚至可以将其自动传递给您自己的云脚本。

如果有人需要更多信息,请不要犹豫。