Следующее должно работать при условии, что вы получили значения данных в правильном порядке (getString (3) должно быть числом, а getString (4) должно быть значением времени).
protected Void doInBackground(DBAdapter... db) {
// ... some db work
if (c.moveToFirst()) {
publishProgress(c.getString(3), c.getString(4));
// ...
}
}
protected void onProgressUpdate(String... values) {
float viteza = Float.parseFloat(values[0]);
String time = values[1];
// do something with the data that shows in UI
}
Полный AsyncTask для проверки передачи значений здесь:
private class SimpleTask extends AsyncTask<Void, String, Void> {
@Override
protected Void doInBackground(Void... params) {
String floatAsString = "3.14159265358979";
String timeAsString = "06-01 07:32:02.579";
publishProgress(floatAsString, timeAsString);
return null;
}
@Override
protected void onProgressUpdate(String... values) {
float pi = Float.parseFloat(values[0]);
Log.i("SimpleTask", String.format("Got values '%s' and '%s'. pi = %f", values[0], values[1], pi));
}
}
, который печатает вывод:
Got values '3.14159265358979' and '06-01 07:32:02.579'. pi = 3.141593