我有一个名为“A 类”的类 a) 我有一个名为 verify b) onClick of verify 我调用 auth.authenticate() 它返回布尔值 c) 为真 - 我必须调用一个意图
验证函数在另一个类中(auth 是一个参考)
验证函数如下()
布尔验证(){
new AsyncTask<String, String, String>() { preExecute() { --starting a progress bar-- } doInBackground(String ) { ---- huge authentication code----- ------ returns true or false -------isVerified } onPostExecute(String) { --- dismiss progress bar----------- } }.execute(); } --------end of AsynTask block---- synchronized (this) { try { this.wait(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } return isVerified; ---- this should return to MyClass - after async finishes
- 但这是在异步完成之前返回的。实际上它是正确的 - 因为这些是线程 - 并行运行,所以为了使其工作 - 我一直等到异步完成使用该同步块 - 但这会阻塞我的主线程 - (也没有进度条)
我可以在执行后成功调用我的下一个活动 - 因为我正在制作一个库类..我认为不应该......请帮助
}