このような質問がありますが、私の問題は解決しませんでした。私のポスト実行はdoInBackgroundの前に実行されますが、私はdoInBackgroundで何の仕事もしていないと思いますが、doInBackground.Belowが自分のコードである前に実行後に実行されます。あなたはTaskThreadにすでにいるdoInBackgroundで投稿後にdoInBackgroundが呼び出されます
sumbit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String mail = resMail.getText().toString();
String id = resUniq.getText().toString();
new Reset_Pass_Task().execute();
}
});
}
private class Reset_Pass_Task extends AsyncTask<Void,Void,Void> {
@Override
protected Void doInBackground(Void... params) {
try{
ParseQuery<ParseUser> query = ParseUser.getQuery();
query.whereEqualTo("username", "[email protected]");
query.findInBackground(new FindCallback<ParseUser>() {
@Override
public void done(List<ParseUser> objects, ParseException e) {
if (e==null){
for(ParseUser singleobject:objects){
name23 = (String) singleobject.get("uniqueId");
}
}else {
Log.i("abc",e.toString());
}
}
});
} catch (Exception e){
Log.i("xys",e.toString());
}
return null;
}
@Override
protected void onPostExecute(Void aVoid) {
if (name23!=null){
Log.i("def",name23);
}else {
Log.i("ijk","null");
}
}
}
query.findInBackground非同期ので、リターンであることは一目瞭然です。 nullがクエリが完了する前に実行される –
任意の提案は、私はnullを返し、次の試行で私の結果を与えると思いません –
だから私はdoInの背景を使用すべきではない? –