我正在嘗試將異常傳遞給意圖將相關信息轉儲到屏幕的活動。作爲包裹傳遞例外
目前我之通過捆綁:
try {
this.listPackageActivities();
} catch (Exception e) {
Intent intent = new Intent().setClass(this, ExceptionActivity.class).putExtra("Exception", e);
startActivity(intent);
}
但是,當它到達那裏:
if (!(this.bundle.getParcelable("Exception") != null))
throw new IndexOutOfBoundsException("Index \"Exception\" does not exist in the parcel." + "/n"
+ "Keys: " + this.bundle.keySet().toString());
這甜蜜的異常被拋出,但是當我看到密鑰集和包詳細信息,它告訴我有一個名爲「Exception」的鍵的可分區對象。
我明白,這與類型有關,但我不明白我做錯了什麼。我只想轉儲關於異常的信息,屏幕上的任何異常。有沒有辦法做到這一點,而不必每次都將所有信息壓縮成字符串?
哈哈,我不應該承擔。有沒有更好的方式將信息傳遞給活動? –
使之一:公共類ParcelableException擴展異常實現Parcelable {...} – yorkw
更新我的答案來解決這個問題。 –