Причина, по которой result
не обновляется, заключается в том, что вы пытаетесь проверить его сразу после вызова AsyncTask
.
Вот как вы можете реструктурировать его:
public class PostDataThread extends AsyncTask<Void, Void, Integer> {
String [] data;
Context context;
int res = 0;
public PostDataThread(int type, String data[], Context c) {
this.data = data;
this.context = c;
}
@Override
protected Void doInBackground(Void... params) {
Connect c = new Connect();
c.start(Constant.RECEIVED_MESSAGE, data, context);
res = 444;
return res;
}
@Override
protected void onPostExecute(Integer result) {
Log.d(TAG, "Result is: " +result);
}
}
И назвать это:
PostDataThread p = new PostDataThread(type, data, context);
p.execute();
Затем измените onPostExecute
, чтобы сделать все, что вам нужно, с помощью result
.