Денис Загаевский, вообщем у меня есть bottomShhetNavigation, где пользователь выполняет какие-то действия и результат этих действий возвращается в активити, я хотел туда передать callback
Дмитрий, спасибо большое, разобрался. Если ввести ./fasttext выдает help но возвращает ошибку, поэтому результат не возвращался, так как и не чему было возвращается, если составить запрос правильно то все работает. Огромное спасибо.
Дмитрий, команда exec работает если запустить какую нибудь стандартную команду, например pwd возвращает такой результат: Вернёт статус 0 и значение: Array ( [0] => /var/www/run.com/html/fastText )
exec('pwd', $output, $retval);
echo "Вернёт статус $retval и значение:\n";
print_r($output);
echo "<hr>";
Но если запустить команду: ./fasttext
exec('./fasttext', $output, $retval);
echo "Вернёт статус $retval и значение:\n";
print_r($output);
echo "<hr>";
Возвращает: Вернёт статус 1 и значение: Array ( )
В то врем если сделать запрос из консоли:
alex@alex-HP-Notebook:/var/www/run.com/html/fastText$ ./fasttext
usage: fasttext
The commands supported by fasttext are:
supervised train a supervised classifier
quantize quantize a model to reduce the memory usage
test evaluate a supervised classifier
test-label print labels with precision and recall scores
predict predict most likely labels
predict-prob predict most likely labels with probabilities
skipgram train a skipgram model
cbow train a cbow model
print-word-vectors print word vectors given a trained model
print-sentence-vectors print sentence vectors given a trained model
print-ngrams print ngrams given a trained model and word
nn query for nearest neighbors
analogies query for analogies
dump dump arguments,dictionary,input/output vectors
amimamoya, ты создаешь новый поток, далее указываешь, что поток должен выполняться в главном потоке и далее замораживаешь поток на 1 секунду. В runOnUiThread у тебя должны быть операции для которых требуется ui поток, т.е label.setText(time).
Koshkasobaka, лучше использовать recyclerView. Конкретно по вашему случаю вам необходимо после любых изменений данных сообщить адаптеру об этом, чтобы адаптер обновил список. Вы можете вызвать notifyDataSetChanged у адаптера для того, чтобы обновить весь список.
jenya_zhilin, ну по моему очень много информации в интернете по этому поводу, интерфейсы можно сказать основа. Далее размещать слушатели в onBindViewHolder, это совсем не годится. Создаете интерфейс->передаете его в адаптер-> далее используете, что тут может быть сложного?