亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何調試 Android 代碼以獲得意外值?

如何調試 Android 代碼以獲得意外值?

揚帆大魚 2021-09-29 16:40:12
我是 Android 新手,在 Android Studio 上做了一些基本活動。我有以下代碼,它會在成功登錄后從 LoginActivity 重定向到 Navigation 活動。如果憑據正確,則loginPassed變量設置為 true,否則為 false。如果我在上面的程序中刪除if條件 if 將正確重定向到 NavigationActivity 但如果條件到位,它將簡單地關閉應用程序。不知道我哪里錯了。
查看完整描述

2 回答

?
慕桂英4014372

TA貢獻1871條經驗 獲得超13個贊

您聲明了loginPassedvar,但永遠不要在其中放置值。當您創建一個booleanvar 時,默認值是false,它們運行時永遠不會輸入if(loginPassed)


查看完整回答
反對 回復 2021-09-29
?
慕仙森

TA貢獻1827條經驗 獲得超8個贊

首先你必須定義一個全局變量 loginPassed


Boolean loginPassed;

然后你必須執行 AsyncTask 來檢查這樣的用戶憑據 -


new UserLoginTask().execute();

現在在 AsyncTask 中,我們將檢查用戶的憑據并進行相應的操作


class UserLoginTask extends AsyncTask<Void, Integer, String>

{

   String TAG = getClass().getSimpleName();


   protected void onPreExecute (){

      super.onPreExecute();

      Log.d(TAG + " PreExceute","On pre Exceute......");

    }


   protected String doInBackground(Void...arg0) {

    Log.d(TAG + " DoINBackGround","On doInBackground...");


    if(validate(email, password))

        loginPassed = true;

    else

        loginPassed = false;


    return "";

   }


  protected void onProgressUpdate(Integer...a){

    super.onProgressUpdate(a);

    Log.d(TAG + " onProgressUpdate", "You are in progress update ... " + a[0]);

  }


  protected void onPostExecute(String result) {

    super.onPostExecute(result);

    Log.d(TAG + " onPostExecute", "" + result);


    if(loginPassed){


        Intent intent = new Intent(this, NavigationActivity.class);

        intent.putExtra(EXTRA_MESSAGE, "Jefry");

        startActivity(intent);


     }else{

        // There was an error; don't attempt login and focus the first

        // form field with an error.

        focusView.requestFocus();

     }


  }

}


查看完整回答
反對 回復 2021-09-29
  • 2 回答
  • 0 關注
  • 217 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號