Я хотел бы выполнить метод через 10 секунд после запуска Intent:
Intent launchIntent = getPackageManager().getLaunchIntentForPackage(GOOGLE_VOICE_SEARCH_PACKAGE_NAME);
startActivity(launchIntent);
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
SonrLog.d(TAG, "TIMEOUT, reconnecting!");
reconnectSONR();
}
}, 10000); //10 second timeout
Intent запускается, и мой код переходит к обработчику, но ничего не печатается или не вызывается.
Как я могу заставить это работать?
Хорошо, я попробовал вышеуказанный код, и он работает нормально. И я вижу журнал Log.d(TAG, "TIMEOUT, reconnecting!");
напечатан в журнале. Код, который я использовал.
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent launchIntent = getPackageManager().getLaunchIntentForPackage(GOOGLE_VOICE_SEARCH_PACKAGE_NAME);
startActivity(launchIntent);
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
Log.d(TAG, "TIMEOUT, reconnecting!");
}
}, 10000); //10 second timeout
}
});
ПРИМЕЧАНИЕ. GOOGLE_VOICE_SEARCH_PACKAGE_NAME указывается на какой-либо другой пакет, поскольку он предназначен только для тестирования.