0

リストビューに結果を表示するためにphp mysql travezのデータベースと通信していますが、3GまたはWIFIの場合にExeptionConnectionを実装しようとしていますが、アプリケーションは接続できず、前のアクティビティに戻り、トーストを表示します。私のコードでそれを実装する方法ではなく、JsonExeption しか実装できませんでした。これは私のコードです:

protected String doInBackground(String... args) {



        List<NameValuePair> params = new ArrayList<NameValuePair>();

        JSONObject json = jParser.makeHttpRequest(url_list_rs, "GET",
                params);



        Log.d("All Products: ", json.toString());

        try {


            int success = json.getInt(TAG_SUCCESS);

            if (success == 1) {

                daftar_rs = json.getJSONArray(TAG_DAFTAR_RS);
                for (int i = 0; i < list_rs.length(); i++) {
                    JSONObject c = list_rs.getJSONObject(i);

        //Process Code
                }
            } else { 

            }
        } catch (JSONException e) {
            e.printStackTrace();
        }

        return null;

    }

url_list_rs は私の php の URL です。どこで ExceptionConnection を実装できますか? 誰でも助けることができますか?ありがとうマスターズ!

4

1 に答える 1

0

独自の例外を作成する場合は、次のことができます。

//create a new Exception class    
public class ConnectionException extends Exception {
    public ConnectionException(String message){
         super(message);
    }
}

makeHttpRequest メソッドで

if(no connection) { //check connection
    throw new ConnectionException ("No connection!");
} else { ... }

最後に、try-catch ブロック

try {
    JSONObject json = jParser.makeHttpRequest(url_list_rs, "GET",
            params);
catch(ConnectionException ex) {
    ex.printStackTrace();
}

注: これがベスト プラクティスであるかどうかはわかりません。

于 2013-04-03T01:26:28.567 に答える