종료 메시지 또는 예외가 발생했습니다. 이상하게도 에뮬레이터에서는 2.2와 2.3.3에서 잘 돌아갑니다. Nexus 1을 실행할 때만 종료됩니다. 2.2.1SharedPreferences.Editor.apply 힘이 나는 다음과 같은 코드를 사용하고
위의 해결 방법이 있지만 가까운 원인에 관심이 있습니다.
아무도 도와 줄 수 있습니까?
건배, Venatu
종료 메시지 또는 예외가 발생했습니다. 이상하게도 에뮬레이터에서는 2.2와 2.3.3에서 잘 돌아갑니다. Nexus 1을 실행할 때만 종료됩니다. 2.2.1SharedPreferences.Editor.apply 힘이 나는 다음과 같은 코드를 사용하고
위의 해결 방법이 있지만 가까운 원인에 관심이 있습니다.
아무도 도와 줄 수 있습니까?
건배, Venatu
apply()
는 API 레벨 9 (일명, 안드로이드 2.3)에서 추가되었다. Android 2.2에서 사용하지 마십시오. UI를 차단하는 것은 그 문제의 경우가 될 수 있도록하면서
public static boolean respondsTo(Object object, String methodName) {
try {
object.getClass().getMethod(methodName, (Class<?>[]) null);
return Yes;
} catch (NoSuchMethodException e) {
return No;
}
}
public static Object invoke(Object object, String methodName) {
try {
return object.getClass().getMethod(methodName, (Class<?>[]) null).invoke(object);
} catch (Exception e) {
return INVOKE_FAILED;
}
}
은 실행 커밋 ..
if (respondsTo(editor, "apply")) invoke(editor, "apply”);
else editor.commit();
을하고 난 고정 수입으로 두 마법 방법이 있습니다
Doh! 나는 그것이 그렇게 단순 할 것이라고 생각하지 않았다. 답장을 보내 주셔서 감사합니다 – Venatu
내가 같이 KODE를 사용하여 간단합니다 큰 데이터를 절약 할 수 있습니다. 나는 커밋을 위해 배경 스레드를 사용했다. (문제가있어 ...)하지만 이제는 많은 사용자가 2.3을 가지고 있으므로 나이를 전환해야한다고 생각한다.
강제 종료한다는 것은 로그에 상세한 스택 추적이 있음을 의미한다. 게시 해주세요. – EboMike