2014-11-24 5 views
0

편집 : 이것은 활동주기와 관련이 없습니다. PowerSaver 모드에서 내 정적 변수를 재활용 한 참고 3을 사용하여 문제가 발생했습니다. 그 이후로 나는 모든 것이 구원 받고, 통과되고, 제대로 회복 될 수 있도록 극단적 인 조치를 취했다.임의의 ACRA가 응용 프로그램의 여러 활동에서 충돌 함

내 응용 프로그램에는 다소 고유 한 로그인 시스템이 있습니다. 사용자는 Server에서 최신 파일을 가져올 때까지 로그인 할 수 없으며 (기본 활동을 열 수 없습니다.) 해당 파일을 기반으로 로그인을 확인할 수 있습니다. 로그인은 로그인 할 때 환경 설정에 저장되고 로그 아웃 될 때 지워집니다. 응용 프로그램이 다시 시작되면 로그인이 해제됩니다. 모든 충돌 로깅은 ACRA를 통해 수행됩니다.

편집 : 응용 프로그램의 수명주기와 관련이 없으며 일부 파일이 없어져 충돌이 두 번 발생했습니다. 이러한 활동을 시작하는 유일한 방법은 로그인 화면에서 시작되는 주 활동 (성공적인 로그인 및 사용 가능한 옵션을 처리하기 위해 구성 파일을 확인 및 사용)입니다. 활동이 필요한 파일/변수 (로그인 등)없이 직접 실행되는 것 같습니다.

IP를 San Jose, CA로 좁힐 수 있습니다. 빌드 정보는 다음과 같습니다.

BOARD=herring 
BOOTLOADER=D720SPRLC1 
BRAND=Android 
CPU_ABI=armeabi-v7a 
CPU_ABI2=armeabi 
DEVICE=crespo4g 
DISPLAY=full_crespo4g-eng 4.1.1 JRO03R eng.azhang.20141014.185122 test-keys 
FINGERPRINT=Android/full_crespo4g/crespo4g:4.1.1/JRO03R/eng.azhang.20141014.185122:eng/test-keys 
HARDWARE=herring 
HOST=lima 
ID=JRO03R 
IS_DEBUGGABLE=true 
MANUFACTURER=unknown 
MODEL=Full Android on Crespo4G 
PRODUCT=full_crespo4g 
RADIO=D720SPRLF2 
SERIAL=3434F1EE0F3100EC 
TAGS=test-keys 
TIME=1413337943000 
TYPE=eng 
UNKNOWN=unknown 
USER=azhang 
VERSION.CODENAME=REL 
VERSION.INCREMENTAL=eng.azhang.20141014.185122 
VERSION.RELEASE=4.1.1 
VERSION.RESOURCES_SDK_INT=16 
VERSION.SDK=16 
VERSION.SDK_INT=16 

나는이 보고서를 어떻게 작성해야할지 모르겠다. 내가 걱정해야하거나 비슷한 것을 본 사람이 있습니까?

+0

앱은 잠시 동안 백그라운드에서있었습니다 후 사용자가 다시 전환 할 때 무엇을 하는가 http://developer.android.com/training/basics/activity-lifecycle/recreating.html를 참조하십시오? 상태를 올바르게 저장하고 복원 했습니까? 시스템은 사용자가 마지막으로 떠난 장소 인 경우 실행 활동이 아닌 다른 활동에서 앱을 다시 초기화 할 수 있습니다. –

+0

소스 코드와 logcat 파일이 도움이 될 것입니다. – nathansizemore

+0

불행히도 소스 코드를 추가 할 수 없으며 이러한 충돌에 대한 logcat 파일이 없습니다. 편집 : 일반 사용이 이런 종류의 충돌 보고서가 없습니다. 일반 사용자에게는 충돌 보고서에 첨부 할 라이센스 파일도 있습니다. 그것이 이상한 이유는 액티비티가 호출되어 질서 정연 해 보이지 않기 때문입니다. – user3334691

답변

0

앱이 백그라운드로 들어갔을 때 상태를 올바르게 저장하고 복원하지 못하는 것 같습니다. 따라서 이전에 로그인 한 적이 있고 현재 응용 프로그램 중간에있는 사용자가 갑자기 앱을 백그라운드로 돌려 놓았을 때 예상되는 상태가되지 않습니다.

+0

자신을 올바르게 표현하지 않으면 유감입니다. 이것이 두 번째로 일어난 일입니다 (약 한 달 전 처음). 그것은 항상 이상한 장치로 작동하지 못하는 활동을하는 것처럼 보이지 않습니다. 이러한 크래시 보고서의 이상한 특징은 티켓을 발급하려고 시도하는 로그인 화면을 지나서 설정 파일이 존재하지 않는다는 것입니다. 나에게는 무작위 활동에서 앱을 시작하는 것처럼 보입니다. – user3334691

+0

사용자가 이러한 활동을 직접 할 수없는 방식으로 앱을 구현했다고 가정합니다. 그것이 사실이라면, 거의 확실하게 당신이보고있는 사람들은 로그인 한 사람들이고, 당신의 앱을 돌아 다니며 전화를 걸기 같은 다른 일을 할 전환했습니다. 앱을 종료하지 않았지만 방금 배경을 보았습니다. 앱을 다시 시작하면 떠난 활동을 시작합니다. 그러나 그 상태를 저장하는 것은 그 활동에 달려 있습니다. 그렇지 않으면 그들은 당신이보고있는 것으로 의심되는 어떤 상태로 돌아올 수 없습니다. – William

+0

윌리엄, 전에이 문제를 다루었습니다. 나는 모든 정적 변수를 환경 설정 파일에 저장합니다 (정적 변수는 다른 프로그램에 의해 많이 재활용됨을 알았습니다). 클래스 변수에 대해서는 저장 및 복원 방법을 사용합니다.충돌 보고서는 두 번 (한 달에 한 번 에뮬레이터에서 세 번) 각각 5 초 간격으로 다른 장치에서 26 번 발생했습니다. 나를 의심스럽게 만드는 것은 티켓을 발급 할 때 차량 조회를하는 것입니다. IssueTicket 활동을 열려고 시도한 후 5 초 후에 동일한 예외가있는 VehicleLookup 활동이 중단되었습니다. – user3334691

관련 문제