2017-07-03 20 views
4

我得到以下運行時錯誤拋出:IllegalArgumentException:指定非空參數爲空

checkParameterIsNotNull, parameter oneClickTokens 
    at com.info.app.fragments.Fragment_Payment_Profile$fetchMerchantHashes$1.onPostExecute(Fragment_Payment_Profile.kt:0) 
    at com.info.app.fragments.Fragment_Payment_Profile$fetchMerchantHashes$1.onPostExecute(Fragment_Payment_Profile.kt:1543) 

這裏是我的代碼

private fun fetchMerchantHashes(intent: Intent) { 
    // now make the api call. 
    val postParams = "merchant_key=$key&user_credentials=$var1" 
    val baseActivityIntent = intent 
    object : AsyncTask<Void, Void, HashMap<String, String>>() { 

     override fun doInBackground(vararg params: Void): HashMap<String, String>? { 
       ... 
     } 

     override fun onPostExecute(oneClickTokens: HashMap<String, String>) { 
      super.onPostExecute(oneClickTokens) 
      ... 

     } 
    }.execute() 
} 

看來,函數調用似乎是無效的。但是,我不知道如何解決這個問題。 Kotlin有沒有具體的我錯過了?

+1

毫無疑問。請制定一個獲得幫助。 – guenhter

回答

17

這個例外很明顯:你傳遞的參數是null

默認情況下Kotlin中的所有變量和參數都是非空的。如果你想通過null參數的方法,你應該添加?它的類型,例如:

fun fetchMerchantHashes(intent: Intent?) 

欲瞭解更多信息:null-safety

+0

增加了完整的方法和錯誤日誌..請檢查以上 –

+0

是啊糾正它固定... –

相關問題