2012-11-21 3 views
0

충돌보고를 위해 ACRA를 사용하고 있지만 갑자기 문제가 발생합니다. 내 애플리케이션이 시작되지 않고 충돌 보고서 알림이 표시되지만 아무 것도하지 않습니다. ACRA가 충돌합니다.

11-20 19:25:53.093: E/ACRA(16233): ACRA caught a RuntimeException exception for com.skipmorrow.phca. Building report. 
11-20 19:25:53.763: D/ApplicationPolicy(716): isStatusBarNotificationAllowed: packageName = com.skipmorrow.phca 
11-20 19:25:53.763: E/ACRA(16233): com.skipmorrow.phca fatal error : Unable to create application com.skipmorrow.phca.ACRA: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer 
11-20 19:25:53.763: E/ACRA(16233): java.lang.RuntimeException: Unable to create application com.skipmorrow.phca.ACRA: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer 
11-20 19:25:53.763: E/ACRA(16233):  at com.skipmorrow.phca.ACRA.onCreate(ACRA.java:89) 

많이하지

가 가고 있지만, ACRA 자체가 문제가되는 것 같습니다 : 로그 캣 열기, 나는 다음과 같은 항목을 볼 수 있습니다. 여기

내 ACRA 구현 클래스입니다 :

package com.skipmorrow.phca; 

import org.acra.annotation.*; 
import org.acra.ReportingInteractionMode; 

import android.app.Application; 

@ReportsCrashes(
formKey = "dFdSMXh...E6MQ", 
mode = ReportingInteractionMode.NOTIFICATION, 
resNotifTickerText = R.string.crash_notif_ticker_text, 
resNotifTitle = R.string.crash_notif_title, 
resNotifText = R.string.crash_notif_text, 
resNotifIcon = android.R.drawable.stat_notify_error, // optional. default is a warning sign 
resDialogText = R.string.crash_dialog_text, 
resDialogIcon = android.R.drawable.ic_dialog_info, //optional. default is a warning sign 
resDialogTitle = R.string.crash_dialog_title, // optional. default is your application name 
resDialogCommentPrompt = R.string.crash_dialog_comment_prompt, // optional. when defined, adds a user text field input with this text resource as a label 
resDialogOkToast = R.string.crash_dialog_ok_toast, // optional. displays a Toast message when the user accepts to send a report. 
logcatArguments = { 
     "-t" 
     ,"2000" 
     ,"-v" 
     ,"time" 
     ,"PHCA_ActionCommand:D" 
     ,"ActionParameterEditTextActivity:D" 
     ,"ActionParameterSeekbarActivity:D" 
     ,"PHCA_C2DMReceiver:D" 
     ,"PHCA_CommonActivity:D" 
     ,"PHCA_ConfigurationActionCommandChooser:D" 
     ,"PHCA_ConfigurationAddNewAction:D" 
     ,"PHCA_ConfigurationAddNewPage:D" 
     ,"PHCA_ConfigurationAddNewPagelink:D" 
     ,"PHCA_ConfigurationAddNewPageStatus:D" 
     ,"PHCA_ConfigurationEditActionCommand:D" 
     ,"PHCA_ConfigurationEditPageRefreshUpdateActivity:D" 
     ,"PHCA_ConfigurationEditVariable:D" 
     ,"PHCA_ConfigurationEditVariableValueSetting:D" 
     ,"PHCA_ConfigurationLandingPage:D" 
     ,"PHCA_ConfigurationPageChooserActivity:D" 
     ,"PHCA_ConfigurationPageObjectChooserActivity:D" 
     ,"PHCA_ConfigurationRefreshUpdateChooserActivity:D" 
     ,"PHCA_DBAdapter:D" 
     ,"PHCA_DragListener:D" 
     ,"PHCA_DragNDropAdapter:D" 
     ,"PHCA_DragNDropListView:D" 
     ,"PHCA_DropListener:D" 
     ,"PHCA_EditC2dmSettingsActivity:D" 
     ,"PHCA_EditGlobalPrefsActivity:D" 
     ,"PHCA_EnterFilenameForBackup:D" 
     ,"PHCA_EnterPinActivity:D" 
     ,"PHCA_EnterPinDialog:D" 
     ,"PHCA_HttpNetworking:D" 
     ,"PHCA_ListLabels:D" 
     ,"PHCA_MyListArrayAdapter:D" 
     ,"PHCA_Page:D" 
     ,"PHCA_PageAction:D" 
     ,"PHCA_PageChooserDialog:D" 
     ,"PHCA_PageImageActivity:D" 
     ,"PHCA_PageLink:D" 
     ,"PHCA_PageListActivity:D" 
     ,"PHCA_PageRefreshUpdate:D" 
     ,"PHCA_PageStatus:D" 
     ,"PHCA_PhcaActivity:D" 
     ,"PHCA_PhcaAppWidgetConfigurator:D" 
     ,"PHCA_PhcaAppWidgetProvider:D" 
     ,"PHCA_PhcaMenu:D" 
     ,"PHCA_PhcaPrefs:D" 
     ,"PHCA_PhcaUtils:D" 
     ,"PHCA_RemoveListener:D" 
     ,"PHCA_SocketServerNetworking:D" 
     ,"PHCA_Variable:D" 
     ,"PHCA_VariableChooser:D" 
     ,"PHCA_VariableSetting:D" 
     ,"PHCA_VariableValueSettingChooser:D" 
     ,"PHCA_VisiblePhcaPageObject:D" 
     ,"PHCA_WidgetDialogResponseActivity:D" 
     ,"PHCA_XmlFileChooser:D" 
     ,"PHCA_XmlNodeCounter:D" 
     ,"PHCA_XmlParser:D" 
     ,"*:S" 
     } 
) 

public class ACRA extends Application { 
    @Override 
    public void onCreate() { 
     // The following line triggers the initialization of ACRA 
     org.acra.ACRA.init(this); // <<<<====== LINE 89 
     super.onCreate(); 
    } 
} 

또 다른 단서 (내가 생각하는) 내 ACRA 클래스에서에서 onCreate에, 나는 완전한

으로 초기화를 호출 할 필요가 있다는 사실은
org.acra.ACRA.init(this) 

EDIT 나는 이것이 처음으로 나온 것을 믿을 수 없다. 이것은 com.skipmorrow.phca.ACRA의 89 번째 줄입니다.

ACRA를 사용했던 다른 프로젝트에서 나는 그렇게 할 필요가 없었습니다. 실제로 ACRA.init 만 사용하여 init()을 호출합니다. (이). 즉, 함께 할 수있는 뭔가가 있을까?

+0

ACRA를 사용하여 ACRA 충돌을 잡아냅니다 ... 시작! ;) –

+0

@ WebnetMobile.com +1 좋아요! :) – MrGibbage

답변

3

를 충돌이 ACRA 내에 있지 않습니다.

을 그것은 (이 클래스 com.skipmorrow.phca.ACRA.onCreate의 라인 89에 ACRA.java입니다 : 89)

이것은 ACRA 클래스가 아닙니다. 모든 ACRA 클래스는 org.acra 패키지에 포함되어 있습니다. com.skipmorrow.phca.ACRA의 출처는 확실하지 않지만 t 이리.

+0

나는 작전을 편집했다. 89 행은 init()에 대한 호출입니다. 나는 왜 그것이 그 선에서 부서 지는지 전혀 모른다. – MrGibbage

+0

크래시는 예기치 못한 가져 오기 및 오래된 acra 공유 환경 설정의 잘못된 취급으로 인해 발생했습니다. – MrGibbage

+0

@MrGibbage는이 취급 부주의에 대해 자세한 정보를 제공 할 수 있습니까? –