ACRA 자체가 이상한 문제에 충돌되어도서관 프로젝트에서 ACRA를 사용할 수 있습니까?
IllegalStateException: Cannot access ErrorReporter before ACRA#init
나는 완벽하게 작동 ACRA 4.3.0 응용 프로그램을 가지고있다. 전체 응용 프로그램을 라이브러리로 변경하여 사소한 변형을 만들 수 있습니다. 매니페스트가 아닌 완전히 새로운 새 프로젝트를 만들고이 새 라이브러리에 연결됩니다. AcraApplication.java에서 이것을 시도하는 다른 사용자는 "resToastText = R.string.crash_toast_text"라인을 제거하고 Acra.init (이) 아래에 새로운 라인을 추가해야합니다.
ACRA.getConfig().setResToastText(R.string.crash_toast_text);
이 프로젝트는 잘 빌드 및 디버그에 나는 ACRA.init (이) 확인했습니다; 내 주 프로그램 코드 이전에 오류가 발생하기 전에 실행됩니다. 주요 프로그램에서 시점에서 우리는 몇 가지 사용자 정의 데이터 설정 여기서 그것은 충돌이 발생
ACRA.getErrorReporter().putCustomData("Orientation", "L");
을 (또는 더 정확하게, ACRA 자체가 오류가 발생합니다) 더 ACRA 보고서가 생성되지 않습니다.
어떤 아이디어를 다음에 시도해보아야합니까? ACRA는 라이브러리와 호환되지 않을 수 있습니다.이 경우 라이브러리를 다르게 처리 할 수는 있지만 일종의 라이브러리 목적에 어긋납니다.
솔루션 :
ACRAConfiguration config = ACRA.getNewDefaultConfig(this);
config.setResToastText(R.string.crash_toast_text);
ACRA.setConfig(config);
ACRA.init(this);
참고이 단지 V4.3.0에서 작동 이상 : 대신 Acra.init(this);
아래의 라인을 추가하는 초기화 라인 이전에 다음 세 줄을 추가합니다.
안녕을 작동합니다 내 proguard.cfg에서, 나는 여전히 내 릴리스에서 "NoSuchFieldError : SILENT"를 얻습니다. 나는 그것을 이해할 수 없다. – Arnaud