によってスローされた例外を処理する安全な方法はありsuper.onCreate(savedInstanceState)
ますか?
非常に少数のユーザーがこのエラーに遭遇しています
java.lang.NoClassDefFoundError - android.security.MessageDigest
原因はこの質問で説明されていますが、基本的onCreate
には MapActivity クラスに対してNoClassDefFoundError
. 状態を事前に検出しても、将来の証明にならない可能性があることを懸念しています。
私のクラス(MapActivityを拡張する)の最も安全な解決策は、NoClassDefFoundError
代わりにGoogleマップへのURLをキャッチして起動することだと思いました。
try {
super.onCreate(savedInstanceState);
} catch (NoClassDefFoundError err) {
StringBuilder url = new StringBuilder(
"http://maps.google.com/maps?q=").append(latitude)
.append(",").append(longitude).append("&z=18");
Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(url.toString()));
startActivity(i);
finish();
return;
}
SuperNotCalledException
ただし、 が発生したときにコードがクラッシュするのではないかと心配していNoClassDefFoundError
ます。
super.onCreate の呼び出しで例外/エラーを処理する安全な方法はありますか?