первый вопрос, я начинаю с программирования java ..Как я могу получить значение Object из интерфейса обратного вызова?
У меня есть метод AssyncTask, который использует интерфейс для получения информации о пользователе, когда-то завершен, вызов сделан из OnPostExecute. Все хорошо, но как только я получаю данные по моей основной деятельности, я не могу извлечь пользователя из сделанного метода.
Я размещаю код для лучшего понимания.
new FetchUserDataAsyncTask(user, new GetUserCallBack() {
@Override
public void done(User returnedUser) {
String usernameRet = returnedUser.username;
String passwordRet = returnedUser.password;
}
});
и интерфейс:
public interface GetUserCallBack {
public abstract void done(User returnedUser);
}
AsynkTask:
public class FetchUserDataAsyncTask extends AsyncTask<Void, Void, User> {
RequestHandler rh = new RequestHandler();
User user;
User ret_user;
GetUserCallBack usercallback;
public FetchUserDataAsyncTask(User user, GetUserCallBack usercallback){
this.user = user;
this.usercallback = usercallback;
}
@Override
protected User doInBackground(Void... params) {
try {
HashMap<String, String> dataToSend = new HashMap<>();
dataToSend.put("username", user.username);
dataToSend.put("password", user.password);
ret_user = rh.sendGetRequest("www.fjrmy.php", dataToSend);
return null;
} catch (Exception e) {
e.printStackTrace();
}
return ret_user;
}
@Override
protected void onPostExecute(User returnedUser) {
super.onPostExecute(ret_user);
usercallback.done(returnedUser);
}
}
Я просто хочу, чтобы "извлечь" в usernameRet и passwordRet, чтобы работать с ними. Является ли это возможным?
Большое вам спасибо.
Почему вы включили JavaScript-тег? Это совершенно другой язык. – Andy
напишите свой код AsyncTask – F43nd1r
Опубликовано @ F43nd1r –