2012-11-06 56 views
0

我的acra錯誤報告在BugSense中顯示爲「Android ID」字段。acra:不發送「android id」

enter image description here

我測試此,它仍然應用程序安裝之間恆定。我們不想發送任何可用於追蹤用戶的信息。有沒有辦法避免發送這樣的數據?

我沒有自定義報表數據,所以這都是默認設置。我不會授予READ_PHONE_STATE權限,所以我希望這會防止將「Android ID」發送給BugSense。

有什麼想法? 謝謝。

回答

1

您可以試試customReportContent,根據https://github.com/ACRA/acra/wiki/AdvancedUsage#wiki-Choosing_which_fields_to_be_included_in_reports。根據文檔,「只有在customReportContent中設置的字段才被實際處理」。

從他們的示例代碼:

@ReportsCrashes(formKey = "xxxxxxxxxxxxxxxx", 
      customReportContent = { APP_VERSION, ANDROID_VERSION, PHONE_MODEL, CUSTOM_DATA, STACK_TRACE, LOGCAT },     
      mode = ReportingInteractionMode.TOAST, 
      resToastText = R.string.crash_toast_text) 
+0

我希望有排除值的方式,對枚舉比Android ID等每一個領域。 –

+0

@JeffreyBlattman:我不知道ACRA提供這個功能。有問題的值大概是android.provider.Settings.System的ANDROID_ID值。我同意這應該獨立地切換,但這可能是您需要請求的功能。 – CommonsWare

+0

這工作,雖然我不知道爲什麼。有一個用於設備ID的「ReportField」,但是它表示這是IMEI號碼,並且需要發送READ_PHONE_STATE(我沒有授予)。我不知道確切地說我刪除了哪個字段導致android id未被髮送。 –

0

啓用/禁用其中的DeviceID#

如果您添加的READ_PHONE_STATE許可到您的應用程序,但想要讓你的用戶能夠禁用列入他們的設備ID在崩潰報告中,您可以包括以下CheckBoxPreference:

<CheckBoxPreference android:key="acra.deviceid.enable" 
    android:title="@string/pref_acra_deviceid" 
    android:summaryOn="@string/pref_acra_deviceid_enabled" 
    android:summaryOff="@string/pref_acra_deviceid_disabled" 
    android:defaultValue="true"/> 

不要忘記在strings.xml文件中添加必需的字符串。

https://github.com/ACRA/acra/wiki/AdvancedUsage#wiki-Enable/disable_including_DeviceID

+0

不起作用。我沒有添加該權限,也沒有啓用它,否則。我的猜測是「android ID」與設備ID不同。唯一有用的是顯式調用'customReportContent'。 –