1

現在、Android のアプリ内課金プロセスで遊んでいますが、購入プロセス中に発生する可能性のある例外や問題が無数にあります。アプリに「[アプリ] を閉じる必要があります」と表示されるだけなので、プログラム エラーの処理の概念を完全には理解していないようです。

ただし、LogCat では、コードで定義されている例外メッセージが表示されます。

throw new IllegalStateException("Billing is not set up. Can't perform operation: " + operation);

このエラーがそのようにユーザーに表示されないのはなぜですか?

4

2 に答える 2

2

ユーザーに素晴らしいエラーメッセージを表示したい場合は、クルトンを試してみてください。これにより、美しいメッセージを作成できます: それらのプロジェクトの Web サイトを見てください: Crouton ホームページ


問題に戻ると、要点は、Logcatlog でのみ見つけることができるエラー メッセージを実行しているということです。ユーザーに表示したい場合は、Toast Message または Alertmessage を試してください。私が@Croutonを見てみたいものは何でも!

よろしくお願いします

サファリ

于 2013-01-04T09:10:03.463 に答える
1

一部のシナリオで例外が予想される場合は、try catch (および場合によってはfinally) ブロックを実装して、防御的なコードを実際に作成する必要があります。このリソースを見てください - Java Exceptions

予想されるエラーを指定し、それに応じて処理します。アプリケーションが「トースト」ポップアップまたは請求設定へのリダイレクトで戻ることを期待しています。

注: 例外がスローされた理由を気にせずにすべての例外をキャッチするのは非常に悪い習慣です。例外のキャッチを具体的にするようにしてください。支払いを受けて商品を配達しないよりも、アプリをクラッシュさせたいと思うことがあります。

try {

    // your billing code

} catch (IllegalStateException e) {

    //Handle exception - Would probably want to match the contents of e to your message 
    defined to ensure it is the correct exception (In case you've defined many of the same type)

}
于 2013-01-04T09:31:52.527 に答える