Это хорошо объяснено в C FAQ . См. Также: пояснение . Предлагаемые решения:
fgets
и sscanf
while((c = getchar()) != '\n' && c != EOF)
/* discard the character */;
Тот факт, что flushing stdin работает с некоторыми реализациями , неверен .
Некоторые производители реализуют fflush, так что fflush (stdin) отбрасывает непрочитанные символы, хотя переносные программы не могут зависеть от этого.
blockquote>
RecorderService
- Сервис. не является Activity
. И Start Service
, например
Intent i = new Intent(MainActivity.this, RecorderService.class);
startService(i);
Для получения дополнительной информации о Services
в Android
getBaseContext()
наMainActivity.this
. Использование базового контекста редко бывает необходимо. Кроме этого, ваш ответ, очевидно, правильный. – Squonk 7 April 2015 в 06:36